Написал генератор травы каждого чанка, чтобы можно было легко привязать к фрустум куллингу и не рисовать не нужную траву вместе с другими чанками, которые не попадают в камеру.
Генератор проверяет каждую точку ландшафта на принадлежность к диапазону "роста травы", и в случае принадлежности рисует в этой точке кустик.
Запустив после этого проект, понял, что выглядит не красиво, когда кустики находятся через равный промежуток между собой.
Поэтому и вписал в алгоритм хаотичность и сразу же написал генерацию других видов кустов. Но опять же напоролся на проблему: так как у меня старая видеокарта, то кусты на одном (!!!) чанке, сожрали солидно фпс.
Вот новый вид травы:
Расстроившись подумал: что одна и та же растительность не годится для всех компьютеров. Дописал "уровень" растительности, который каждый пользователь может выбирать сам под свой компьютер.
Уровень 1:
Уровень 2:
Уровень 3:
Уровень 4:
Как видно это растительность только на одном чанке.
Так же генератор при каждом запуске высчитывает новые точки, а хочется статистической рандомности. И с увеличением уровня растительности, бросается в глаза , что кустики разной травы располагаются попарно :(
Будем-с думать!
_____________________________________
Так, а вот и рандомное расположение травы, которое строится одинаково (называю это статистическая рандомность :D )
Осталось переключить генерацию на все чанки, сделать для травы туман и ещё чего - нибудь :)
_____________________________________
Заметил странный баг с высотой кустов травы, некоторые кустики намного выше других:
Как выяснилось, это был баг в функции по высчитыванию высоты ландшафта, благодаря "L", теперь считается всё как надо! Хвала и почет L!
_____________________________________
Решил изменить текстуры ландшафта, поставив ради эксперимента одну из новых (более светлых), увидел множество неровностей на ландшафте. Пришлось реализовывать алгоритм сглаживания.
До:
После:
_____________________________________
Заменил текстуры песка и травы, временно текстуру скал (гор) убрал, ибо у меня ими и не пахнет.
Вот сравнение с предыдущей текстурой:
0 коммент.:
Отправить комментарий