Моделирование морской и речной воды на ps 2.0 "Ил2-ЗС” и "Вторая мировая". Юрий Крячко, 1C.

Download Report

Transcript Моделирование морской и речной воды на ps 2.0 "Ил2-ЗС” и "Вторая мировая". Юрий Крячко, 1C.

Моделирование морской и речной воды на ps 2.0

"Ил2-ЗС” и "Вторая мировая".

Юрий Крячко, 1C

Исходные посылки задания волн •

Вершинные и попиксельные данные.

Карта высот (отсортировано по уровню реалистичности) => + Набор анимированных 2D Текстур - 3D Текстуры (преимущество z- координаты)+DepthReplacement - Шейдерные текстуры (Displacement Maps/ Начиная ps3.0) - Геометрия

Карта дна, Карта река/море, карта освещенности

Вспомогательные текстуры: дно, каустик, пена

Константные данные - погода (скорость ветра),

Параметры упрощенной модели освещения

Базовая расчетная формула 

R I N

  

I

2

a i

  

N

 (

K d N i

N

,  

K

( 

E s

N

)    

L

) 

K Freshel

E s

 {

lerp

(( 

N

( 

N

 

E

),  

R

)  ,

dSdT

,

a

)}

Моделирование различных эффектов •

Отражение, преломление света, каустик, тени

Полоса прибоя, барашки,

Прибрежное волнение

Моделирование времени суток

Моделирование погоды (шторм, штиль).

Способы оптимизации •

Одинаковые входные параметры у шейдеров - разные формулы расчета

Рендер отражений в текстуру с пропуском кадров. Проблемы быстрого движения. Перерасчет кубмапа.

Проверка и отсечение отраженных объектов и ландшафта. soft/hw occluder. Отсечение обьектов на ланшафте

Использование компилятора cg.

Плюсы и минусы.

Примеры шейдеров

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

Вариант воды ps1.1-1.3 OLD!

Вариант воды с возмущением отраженных объектов с помощью dsdt карты и с по вершинным учетом закона Френеля и имитацией световой дорожки. ps1.1 в 2 прохода рендера

1.

Наложение карты отражения, возмущенной dsdt Используется специальная радиальная сетка для решения проблемы с делением на текстурную координату q: (s/q,t/q) Помимо деления, повершинно вычисляется коэфициент Френеля 2-4 тестуры 2. Наложение бликов от Солнца –Register combiner

Вариант воды ps1.4+ OLD!

•Улучшенный метод…с отражением заданным в кубмапе для дальних объектов и возмущенным по dsdt для ближних. в

1 проход рендера

Структура слоев рендера ps2.0

Прибрежное волнообразование

A

(

x

,

y

,

t

,

w

) 

A k

Tresh k

(

A

0

k k

4   0

A k

,

w

weather

dA k

(

x

,

y

,

t

)),

Tresh k dA k

(

x

, (

x

)

y

,

t

)    (

x

 sin((

x x

0  ) *  (

x

1

y

) *

k x

 

x

)  

t

) На графике представлены более сложные зависимости

dA - зеленый цвет

I

- прозрачность волны - красный Функция порога имеет плавные спад и нарастание (линейно)

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

Вариант воды ps1.4+

P.S. Приезжайте к нам на Таите!

THE END