Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Unity > Эффекты/Шейдеры

Ответ
 
Опции темы
Старый 02.10.2014, 04:18   #1
PassCall
Разработчик
 
Аватар для PassCall
 
Регистрация: 07.04.2011
Адрес: Млечный путь, Земля, Европа, Беларусь, Могилев
Сообщений: 391
Написано 94 полезных сообщений
(для 319 пользователей)
Расстояние до проекции.

Хотел сделать эффект "объемного" тумана, который отличается от обычного тем, что с расстоянием накладывается не цвет, а текстура. Чем дальше, тем сильнее она проявляется.

Одна проблема - как выяснить расстояние от камеры до прорисовываемой точки? Или "прочитать" z-buffer?

Версия юнити FREE
__________________
Мечта программиста: запрограммировать процесс программирования.

Всё гениальное - просто.

http://passcall.ucoz.com
(Offline)
 
Ответить с цитированием
Старый 02.10.2014, 07:08   #2
pax
Unity/C# кодер
 
Аватар для pax
 
Регистрация: 03.10.2005
Адрес: Россия, Рязань
Сообщений: 7,568
Написано 3,006 полезных сообщений
(для 5,323 пользователей)
Ответ: Расстояние до проекции.

Смотря какой шейдер.
Вот например работа с текстурой глубины (пример не сурфейсный шейдер, может подойти для постпроцесса):
http://docs.unity3d.com/Manual/SL-DepthTextures.html

Вот тут написано как получить позицию камеры http://docs.unity3d.com/Manual/SL-BuiltinValues.html
_WorldSpaceCameraPos float3 World space position of the camera.
А вот тут позиция рисуемой точки http://docs.unity3d.com/Manual/SL-SurfaceShaders.html
float3 worldPos - will contain world space position.
__________________
Blitz3d to Unity Wiki
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо pax за это полезное сообщение:
KCEPOKC (02.10.2014), PassCall (02.10.2014)
Старый 03.10.2014, 06:58   #3
PassCall
Разработчик
 
Аватар для PassCall
 
Регистрация: 07.04.2011
Адрес: Млечный путь, Земля, Европа, Беларусь, Могилев
Сообщений: 391
Написано 94 полезных сообщений
(для 319 пользователей)
Ответ: Расстояние до проекции.

Вот что в итоге вышло.
Демка:
http://unitywiki.com/unity-game-143-...og_shader_demo

Сцена, для которой разрабатывался шейдер, не предусматривала поворот камеры, поэтому туман будет выглядеть не таким уж и объемным.
__________________
Мечта программиста: запрограммировать процесс программирования.

Всё гениальное - просто.

http://passcall.ucoz.com
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 16:31.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com