|
0 / 0 / 0
Регистрация: 13.12.2020
Сообщений: 9
|
|
Процедурная генерация леса05.01.2021, 23:08. Показов 4848. Ответов 24
Метки нет (Все метки)
Всем привет.
Я любитель программист. Дано: 2д карта, сетка квадратная. Карта представлена графом. Карта пустая, то есть из каждой ячейки можно попасть в соседнюю Есть задача расставить на ней лес. Моя проблема в том, что я не понимаю какой теоретический базис нужно освоить, чтобы решить эту задачу. А именно ту задачу, как нарисовать этот лес нужной формы. У меня есть некоторые требования к лесу, который я сформулировал: 1. Максимальное количество клеток леса в одной "кучке" - не более 100 2. Максимальная протяжённость - не более 10 клеток что в высоту, что в ширину 3. Нельзя расставить лес так, чтобы на карте получились области, куда нельзя попасть. 4. На границах леса должны присутствовать такие формы этой границы, которые бы позволяли положить туда одноклеточный объект, и лес закрывал бы его впритык хотябы 5 клетками. Пока пришло в голову только думать самому, лезть куда-то в геометрию. Но мне бы получить вектор куда идти изучать. Гугление навело только на общие алгоритмы, основанные на шумах, которые к моему случаю не применимы, так как мне важно соблюдать эти обязательные требования. На англоязычных ресурсах наткнулся как раз на мысль, что надо сформировать требования и пожелания, и придумать алгоритм самостоятельно, что я и пытаюсь сделать. Заранее спасибо.
0
|
|
| 05.01.2021, 23:08 | |
|
Ответы с готовыми решениями:
24
Процедурная генерация Процедурная генерация Процедурная генерация комнатного лабиринта |
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|
| 07.01.2021, 19:43 | |
|
Еще влияет размер массива. 300 на 300 пикселей все картинки.
Массив 10 на 10 убивает весь…хз почему. Может алгоритмический баг где-то. Массив 50 на 50. Массив 100. Массив 200. Массив 300. Какойто баг, как вытянуты капли. Может из-за неправильного шума..хз. Детализация растет от разрешения, ну и больше точек с зарядом сложнее форма. Можно хоть буквы писать. Или придумайте свой клеточный автомат, хз как там правила придумывают.
0
|
|
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|||||||||||
| 07.01.2021, 23:53 | |||||||||||
Сообщение было отмечено Vilgelmstein как решение
Решение
Вот новый код, вроде более правильный, добавил остановку если картинка не меняется. Код вообще С++ но там нет никаких классов и прибахов ООП кроме нескольких функций. Может быть по идее переведен на любой язык хоть асм…
Сделано на glut в Visual Studio 2008 express.
1
|
|||||||||||
|
0 / 0 / 0
Регистрация: 13.12.2020
Сообщений: 9
|
|
| 08.01.2021, 00:49 [ТС] | |
|
Спасибо за труд. Пойду разбираться и переписывать.
0
|
|
|
0 / 0 / 0
Регистрация: 13.12.2020
Сообщений: 9
|
|
| 13.01.2021, 00:24 [ТС] | |
|
Вроде как получается.
Но есть одна вещь которую я не могу понять в точках, и это непонимание мешает мне доделать то что я хочу. Вот пример charge(pts[x][y][0],-0.22f,pts[x][y][1],-0.31f,1.0f,10.0f) -0.22 и -0.31 это что за координаты? и почему они дробные и почему они все во всех точках меньше единицы. я методом тыка, думая что это точка от которой мы считаем центр нашей плюшки, ставил 2;2 находясь в квадрате 0..5 по x и y, но оно так как я хотел не работало. поясните пожалуйста, если не сложно.
0
|
|
|
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
|
|||
| 13.01.2021, 10:49 | |||
|
1
|
|||
| 13.01.2021, 10:49 | |
|
Что такое процедурная генерация?) Процедурная анимация Процедурная вселенная Процедурная декомпозиция Процедурная вселенная Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|
|
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek
ВВЕДЕНИЕ
Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
|
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
|
Запись в регистр сведений независимо от заполненности табличной части
Maks 25.08.2026
Реализация из решения ниже выполнена на нетиповом документе с несколькими табличными частями, разработанного в КА2.
Задача:
Обеспечить запись документа в регистр сведений независимо от. . .
|
Ноутбук Альфария
kumehtar 24.08.2026
Встретился тут в сети ноутбук Альфария, примарха Альфа-Легиона. Хотя возможно, это ноутбук Омегона, разумеется.
Ну как вам?
|