Ru/Skybox (2D): Difference between revisions

From Valve Developer Community
< Ru
Jump to navigation Jump to search
No edit summary
m (Замена {{envart}} на {{envart:ru}})
Line 81: Line 81:
* [[light_environment]], [[env_sun]] и [[shadow_control]] это энтити отвечающие за настройку света у неба, который исходит из текстуры toolsskybox на карте.
* [[light_environment]], [[env_sun]] и [[shadow_control]] это энтити отвечающие за настройку света у неба, который исходит из текстуры toolsskybox на карте.
*[[Sky List]]
*[[Sky List]]
{{envart}}


== Руководства по созданию собственных скайбоксов ==
Lessons created by [https://vk.com/project_source Project-S]
*[https://www.youtube.com/watch?v=qgb0fNCaYaE Source SDK - Custom Skybox (How to create Skybox - 360 Panorama) (на Русском)]
{{envart:ru}}
[[Category:Material System:ru]]
[[Category:Material System:ru]]
[[Category:Glossary:ru]]
[[Category:Glossary:ru]]
Line 88: Line 93:
[[Category:Level Design:ru]]
[[Category:Level Design:ru]]
[[Category:Russian]]
[[Category:Russian]]
==Tutorials about Custom Skybox (Russian)==
Lessons created by [https://vk.com/project_source Project-S]
*[https://www.youtube.com/watch?v=qgb0fNCaYaE Source SDK - Custom Skybox (How to create Skybox - 360 Panorama) (на Русском)]

Revision as of 09:45, 14 September 2020

Template:Otherlang2

2-мерный скайбокс - это коробка неба, не имеющая геометрической глубины и состоящая только из текстуры неба (не использует сущности sky_camera для отображения миниатюрных 3D-моделей).

Skybox Template.jpg

Добавление неба на карту

Простой world brush (не брашевая сущность) с текстурой tools/toolsskybox.

В игре, скайбокс будет виден сквозь каждую поверхность, к которой применен toolsskybox.

Браши toolsskybox не обязательно должны быть коробками.

Template:Note:ru Template:Note:ru

Смена отображаемого неба

Sky change.png

Если вам не нравится стандартное небо "sky_day01_01", вы можете поменять его имя в диалоговом окне Map Properties. Открыв карту в Хаммере, выполните следующие действия:

  1. Перейдите в меню Map
  2. Из выпавшего списка выберите Map Properties...
  3. В окне Object Properties выберите поле Skybox Texture Name.
  4. Впишите имя неба из списка скайбоксов.

Template:Note:ru

Освещённость

Освещенность проецируется на карту из каждой поверхности toolsskybox, и представляет собой прямой солнечный (или лунный) рассеянный свет, отраженный от облаков и т.д.

Такие настройки освещения, как направление, цвет, яркость и прочие зависят от конкретного изображения, используемого в 2-х мерном скайбоксе. В статье список скайбоксов предлагаются некоторые настройки для скайбоксов от Valve. Отметим также, что настройки env_fog_controller должны соответствовать настройкам скайбокса.

Toolsskybox.gif

Небосвод является основным источником света для большинства карт и фактически представляет собой одну из важнейших частей создания карты.

Обзор

Свет небосвода (Skybox lighting) поступает на карту от каждого toolsskybox(en)-текстурированного элемента карты(en) и представляет собой прямой солнечный/лунный свет и рассеянное освещение. Его основные свойства контролируются тремя объектами карты, используемыми в комбинации (в некоторых играх - четырьмя):

  • light_environment определяет направление, цвет и интенсивность прямого солнечного света, а также цвет и интенсивность рассеянного зенитного света.
  • shadow_control определяет цвет, направление и расстояние затухания динамических теней(en), которые создаются light_environment. Без этого объекта карты динамические тени будут глючными и неконфигурируемыми.
    • Note.pngПримечание:shadow_control является устаревшим и не работает в ветке движка CS:GO engine branch, и был заменен на env_cascade_light. Используйте этот объект вместо него.
  • env_sun помещает светящийся спрайт в небосвод для отображения видимого положения Солнца на небе.
  • env_cascade_light отбрасывает на карту резкие тени в реальном времени, обычно копируя настройки из объекта карты light_environment. (Во всех играх начиная с Counter-Strike: Global Offensive)(также в Xengine)
  • newLight_Dir отображает световые лучи, исходящие от диска/круга на небосводе; не создает никакого реального освещения (код освещения отключен). (только в Xengine)
  • light_deferred_global создает динамические тени и освещение, подобно env_cascade_light. (только в Alien Swarm Deferred)(также в Lambda Wars)

Объяснение

Чтобы разобраться во всем этом, просто убедитесь, что на вашей карте есть только один из этих объектов, и что углы тангажа и рысканья установлены одинаково для всех трёх объёктов. (Pitch - это угол возвышения Солнца над землей, а Yaw - его компасный пеленг).

Эти параметры освещения - направление, цвет, яркость и т.д. - довольно специфичны для фактического изображения, используемого для небосвода. В статье Список текстур неба(en) предлагаются некоторые настройки для официальных игровых скайбоксов. Объект карты worldspawn определяет, какой Небосвод(en) использовать. Также обратите внимание, что туман будет выглядеть неправильно, если настройки env_fog_controller не соответствуют используемому небосводу.

Note.pngПримечание:Pitch можно переопределить для light_environment и env_sun, но не для shadow_control. Переопределение Pitch также не может быть отключено, и его значение отсчитывается против часовой стрелки от горизонтали (поэтому прямо вниз -90°), тогда как вращение <angles> Pitch's по часовой стрелке (поэтому прямо вниз +90°). Обходной путь для этого - убедиться, что ваше переопределение Pitch просто повторяет значение <angles>; например, если ваши shadow_control, light_environment и env_sun <углы> равны "45 -60 0", установите переопределение Pitch на "-45".

Template:Warning:ru

Создание собственных 2D текстур неба

  1. Создаем собственные текстуры. Вам понадобится шесть изображений, одного и того же разрешения:
    • <skyname>BK Сзади
    • <skyname>FT Спереди
    • <skyname>UP Сверху
    • <skyname>DN Снизу
    • <skyname>RT Справа
    • <skyname>LF Слева
  2. Затем конвертируйте в формат VTF. Убедитесь, что у вас "Clamp S" и "Clamp T", иначе при низкой детализации текстур вы увидите швы.
  3. Создавайте материалы для каждой текстуры в папке \materials\skybox\, используя следующий шаблон:
sky
{
	$basetexture "<VTF>"
	$hdrcompressedtexture "<VTF>"
	$nofog 1
	$ignorez 1
}

Теперь, в Хаммере, перейдите в Map > Map Properties > Skybox Texture Name и введите имя вашего скайбокса без сторонних тегов.

Создание 2D-неба для Goldsource с помощью Source

Это поможет вам создавать на карте зону внутри 2D-скайбокса, чтобы использовать её в Goldsource (на движке HL1). Вот простой пример:

  1. Создайте большое открытое пространство с небольшой деформацией, деревьями, туманом и скрытыми краями. Обзовите это carrotjuice .
  2. Запустите карту в игре, и включите читы ( sv_cheats 1 ).
  3. Активируйте режим noclip, просто введя в консоли "noclip", и нажмите Enter.
  4. Пролетите в центр скайбокса.
  5. Откройте консоль и впишите "mat_envmaptgasize 256", нажмите Enter.
  6. Теперь впишите "envmap" и нажмите Enter. Созданы 6 фалов TGA, которые хранятся в папке с именем "cubemap_screenshots", находящейся в каталоге вашего мода ( например, HL2DM: Steam\SteamApps\youraccount\Half-Life 2 Deathmatch\hl2mp ).

Поскольку карта носит название carrotjuice , имена 6 TGA-файлов следующие:

carrotjuicert.tga (Справа)
carrotjuiceft.tga (Спереди)
carrotjuicelf.tga (Слева)
carrotjuicebk.tga (Сзади)
carrotjuiceup.tga (Сверху)
carrotjuicedn.tga (Снизу)

Теперь их можно скопировать или перенести в папку с вашим HL1-модом - gfx\env, чтобы использовать в качестве неба на вашей карте.

См. также

Руководства по созданию собственных скайбоксов

Lessons created by Project-S

Статьи об окружающей среде
Текстуры неба и создание неба Source Source: Небосвод (2D)Объёмное небо (3D)HDR-текстуры небаСоздание текстур неба в TerragenСоздание текстур неба в Terragen - подробноСписок текстур неба


Source 2 Source 2: Объёмное небо (3D)

Создание рельефа местности и деформация поверхностей Деформированные поверхностиСоздание отверстий в деформированных поверхностяхЦифровые модели местностиСоздание рельефа в Worldmachine