Ru/Fog tutorial: Difference between revisions

From Valve Developer Community
< Ru
Jump to navigation Jump to search
Line 10: Line 10:
<br style="clear:both">
<br style="clear:both">


==Быстрое исправление==
==Быстрое решение проблемы==


[[Image:Fogtute02.jpg|thumb|300px|right|Пример удачного использования тумана, из-за совпадения его цвета с оттенком текстуры неба.]]Для быстрого исправления эти исправления работают хорошо. Однака, вы ограничены одной настройкой цвета и это не будет выглядеть хорошо если вы используете фунцию далекой плоскости z-clip  [[env_fog_controller]].
[[Image:Fogtute02.jpg|thumb|300px|right|Пример удачного использования тумана, из-за совпадения его цвета с оттенком текстуры неба.]]
Чтобы добиться результата,когда скайбокс не виден в тумане, вам надо применить текстуру <code>sky_day02_10</code> для [[Skybox (2D)#Changing the displayed skybox| скайбокса]] (если посмотреть на исходник, то это текстура с нарисованным эффектом тумана). Для списка текстур неба, смотрите статью [[Sky List]].


Во-первых, вы должны использовать <code>sky_day02_10</code> в качестве вашей [[Skybox (2D)#Changing the displayed skybox|skybox]] текстуры (если вы посмотрите на неё, она уже затуманенная текстура поэтому это и работает). Для списка небес, смотрите [[Sky List]].
Затем, в свойствах [[env_fog_controller]] должны стоять такие настройки:


Затем, ваш [[env_fog_controller]] должен быть чемто вроде этого:
'''Primary fog color'''(первичный цвет тумана): <code>176 192 202</code><br/>
'''Secondary fog color'''(вторичный цвет тумана): <code>206 216 222</code>


Primary fog color: <code>176 192 202</code><br/>
Эти настройки используется в главе [[Highway 17]] на уровне с ж/д мостом в [[HL2]].
Secondary fog color: <code>206 216 222</code>


Эти настройки используется в часте [[Highway 17]] пересечения моста в [[HL2]].
{{note:ru|Для быстрого решения проблемы этот способ подойдёт. Однако результат может отличаться от ожидаемого, если вы используете функцию '''"far z-clip plane"''' ентити [[env_fog_controller]], т.к. вы ограничены одной настройкой цвета.}}
<br style="clear:both">
<br style="clear:both">



Revision as of 09:34, 30 April 2009

Применение тумана для скайбоксов

Настройки тумана в ентити env_fog_controller не влияют на скайбокс.

Когда у вас есть туман на карте, вы можете столкнуться с проблемой, что туман действует на геометрию и модели, но не на скайбокс.

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

Template:Note:ru

Быстрое решение проблемы

Пример удачного использования тумана, из-за совпадения его цвета с оттенком текстуры неба.

Чтобы добиться результата,когда скайбокс не виден в тумане, вам надо применить текстуру sky_day02_10 для скайбокса (если посмотреть на исходник, то это текстура с нарисованным эффектом тумана). Для списка текстур неба, смотрите статью Sky List.

Затем, в свойствах env_fog_controller должны стоять такие настройки:

Primary fog color(первичный цвет тумана): 176 192 202
Secondary fog color(вторичный цвет тумана): 206 216 222

Эти настройки используется в главе Highway 17 на уровне с ж/д мостом в HL2.

Template:Note:ru

Создание своего skybox

Мы просто создаем skybox который использует primary fog color. Хотя обычный skybox имеет 6 файлов текстур каждая 1024x1024 пикселов, нам только нужна одна меньшего размера, так мы уменьшим размер кешированной текстуры.

Во-первых, создаем .vtf с цветом вашего тумана. Лучше сохранить его в вашу папку skybox. Запомните его имя, для этого учебника я пологаю оно называется sky_fog_tex.

Теперь создайте 6 .vmt необходимых для skybox. Если хотите назовите ваш skybox sky_fog, здесь:

sky_fogbk.vmt
sky_fogdn.vmt
sky_fogft.vmt
sky_foglf.vmt
sky_fogrt.vmt
sky_fogup.vmt

Они все содержат одно содержимое:

 "UnlitGeneric"
 {
 	"$baseTexture" "skybox/sky_fog"
 }

Мы не используем "$nofog" 1 как skybox'ы обычно делают.

Если вы используете этот skybox и только разрешен primary fog color в env_fog_controller, затуманеная неометрия и модели имеют тот же цвет что skybox.

Как бы нибыло, если вы используете secondary fog color что хорошо, вы должны быть уверенны что расстояние между игроком и skybox'ом всегда больше чем fogend. Запомните что мы неиспользовали "$nofog" 1, это означает что туман будет рисоваться на skybox. Тем не менее, это только делается в обоснованном пути когда skybox полностью перерисовывается - как геометрия. Вы можете использовать 3D Skybox для этой цели.

Смотрите также

Template:Otherlang:ru Template:Otherlang:ru:en