Тема: ChopperHead
Показать сообщение отдельно
Старый 25.05.2009, 16:09   #102
Amatsu
Дэвелопер
 
Аватар для Amatsu
 
Регистрация: 24.07.2008
Сообщений: 1,544
Написано 1,095 полезных сообщений
(для 2,706 пользователей)
Ответ: ChopperHead

EvilChaotic, ты говорил еще в самом начале, когда тебе писали про глюки при наложении плейна на низкие участки меша террейна, что это возможно из-за того, что ты "перекрутил анизотропку". Так вот, мне интересно, что за библиотека у тебя была, в которой была возможность включать анизотропную фильтрацию. И если она у тебя используется до сих пор, попробуй ее заменить на анизотропку от Михаила в fastextension. Имхо должно пошустрее работать.

По поводу скайбокса, прикрути его к камере не только по осям X и Z, но и по Y. Это избавит тебя от глюка с искажением текстур на скайбоксе при наборе высоты (а то на большой высоте, даже не вылетая за крышку скайбокса, уже видно что вокруг тебя коробка, а не небо).

Затем, поставь скайбоксу порядок рендера побольше, например
EntityOrder skybox,99
Таким образом он у тебя будет рендериться позади всей сцены, то есть всегда будет находиться на заднем плане. В этом случае дальность прорисовки местности у тебя будет ограничена не квадратом скайбокса, а радиусом обзора камеры. После этого можешь уменьшить сам скайбокс до размеров допустим 5:5:5, чтобы блитц лишний раз не обсчитывал координаты такого большого меша.

Попробуй использовать туман не стандартный блитцевский, а из библиотек Михаила. Он на порядок качественнее и работает сферически, а не в плоскости, как стандартный.

Затем, ракеты и трассеры над скайбоксом, я так понял - шаблоны, с которых ты потом копируешь игровые снаряды при стрельбе командой CopyEntity? Не надо их прятать так высоко. Загружай их в центре уровня и юзай HideEntity. При копировании тебе даже не нужно будет писать ShowEntity каждой скопированной модельке, параметр хайда при копировании не сохраняется.

По поводу деревьев, сделай замену мешей спрайтами за пределами определенной дистанции от камеры и наоборот. Дома у тебя и так низкополигональные и редко встречаются, не думаю что они могут тормозить даже на слабых машинах.

По поводу пострендера, если у тебя используется в цикле больше одной команды RenderPostprocess, оставь только одну, а фильтры перечисляй через Or. Я это на всякий случай говорю, а то у меня так было, вызывало некоторые тормоза и даже глюки на некоторых видюхах.

И последнее, сделай ограничение на набор высоты. Я тебе уже писал один из вариантов, как сделать ограничение на вылет за пределы карты в горизонтальной плоскости - прикладывать силу, возвращающую вертолет в зону террейна. Так вот, сделай такую же силу, действующую на вертолет, при достижении им определенной высоты. То есть допустим при наборе высоты выше 1000 метров сила начнет постепенно увеличиваться с нуля до тех пор, пока вертолет не перестанет карабкаться вверх. Если у тебя передвижение вертолета сделано через стандартные команды блитца, то прикладывай к нему эту силу через команду TranslateEntity.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
EvilChaotic (25.05.2009)