bwolf88 писал(а):нужно многопоточность задействовать, а я пока не умею синхронизировать отдельный поток с Main, да и вообще о потоках имею довольно смутное представление.
Там делов то, на 1 вечер изучения, а то и меньше. Раньше тоже боялся к ним подступиться, а оказалось, что это десяток строк кода
bwolf88 писал(а):нужно многопоточность задействовать, а я пока не умею синхронизировать отдельный поток с Main, да и вообще о потоках имею довольно смутное представление.
Там делов то, на 1 вечер изучения, а то и меньше. Раньше тоже боялся к ним подступиться, а оказалось, что это десяток строк кода
да, еще расскажи мне про сокеты тож самое - я второй раз поржу )
bwolf88 писал(а):нужно многопоточность задействовать, а я пока не умею синхронизировать отдельный поток с Main, да и вообще о потоках имею довольно смутное представление.
Там делов то, на 1 вечер изучения, а то и меньше. Раньше тоже боялся к ним подступиться, а оказалось, что это десяток строк кода
да, еще расскажи мне про сокеты тож самое - я второй раз поржу )
Нет, сокеты у меня затянулись на месяц. Но это вместе с сервером, сериализацией данных, связью с БД, и общей структурой сервера. Но считаю, что это тоже не долго. Оно того стоит
Не смог я допилить оригинальный, он у меня совсем не хочет правильно строить треугольники. Часов 5 продолбился, в итоге плюнул и допиливал свой вариант, он мне более понятен. Позаимствовал нормальный PerlinNoise с кучей настроек и изменил логику расчета позиции вершины (точнее логику позаимстовал, но перепилил под себя). На предыдущем видео все квадратичное, потому что вершины присваивались из простой самопальной таблички с шагом в 0.5f, теперь они считаются.
Рельеф выглядит более сглажено. Все, надо немного отвлечься на что нибудь другое, а то мозг разрывается, чуть позже прикручу деформацию и будет конфетка .
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
v1, v2 - углы которые образуют ребро. IsoNoise - это предельное значение вершины посчитанная перлином, на нее ориентируется расчет куба (выше/ниже). До этого у меня были простые bool (есть/нет) и перлин из этого видео https://www.youtube.com/watch?v=d-L5xPi1qwE&index=5&list=PLW2i42bgplOmRWRmo116mUA4N9-i17dIk. Кстати по его урокам я вообще в свое время учился меши строить .
Я с бесплатного ассета (в инете сейчас не найду, но этот ассет Вот в этой теме парень использовал viewtopic.php?f=5&t=28823&st=0&sk=t&sd=a) скрипт перлина взял и формулу расчета вершин что выше. Пришлось таки прикручивать таблицу углов, так что теперь он больше похож на оригинал .
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Кстати, советую вынести расчеты разверки в шейдер (обычный трипланарный, в инете их целая куча на любой вкус) - значительно сокращает время генерации, у меня раза в 2 быстрее стало, по сравнению с первыми вариантами, а видеокарту не сказал бы что очень уж грузит, точнее вообще не заметно . Все никак руки не дойдут начать их изучать, а хотелось бы.
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Нет, там смещение идет от направления ребра. Нужно посчитать смещение между двумя углами (вершинами): 0,0,0 и 1,0,0 - смещение будет по Х, если между 1,0,0 и 1,0,1 - то по Z. Можно было и без таблицы углов обойтись, но так меньше условий .
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Добрались руки переделать последний вариант. Ускорил еще на 15% генерацию, переписав все с нуля. Карта размерами 256х256х64 (1024 чанка) грузится 4,3 сек. Среднее ФПС при деформации 60-80. Максимальная просадка (до 35-40) когда деформируются сразу 8 чанков. Но в 5 юньке скорость обработки коллайдеров ускорят в 2 раза, так что не страшно .
Размер "кисти" деформации 2х2х2. В ближайших планах сделать бесконечную карту .
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Провел эксперимент по получению кубов с ровными гранями используя Marching Cubes. И это оказалось возможным , теперь осталось систематизировать. Чуствую себя скульптором.
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Эксперимент 2. Первый вариант модифицированного MC - генерация кубов неплоха, а вот удалять кубами пока не научился . Немного уменьшил силу деформирования.
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen