ATMOSPHERE FX (part 2) (комментарии)
Это сообщение сгенерировано автоматически.
Спасибо, за прекрасную статью. Вопрос - для чего нужно значение пременной "absorption "?
Adeon
Хех, действительно, моё упущение.
Вот это :
float3 absorption = colorOutput.rgb;//Чем больше это значение тем темнее облако
for (int i=0; i<6; i++)
{
absorption +=(txCloud.Sample( PerlinSampler, oUv + sunDirection.xy *0.1* i ).aaa +
txCloud.Sample( PerlinSampler, oUv + sunDirection.xy *0.1* i ).aaa)*0.5;
} можно удалить.
А еще такой вопрос - на сколько плохо то, что приходится считать 2 раза цвет неба?(Один раз для скайбокс, другой для облаков)
И еще, было бы клево если бы вы продолжили писать в своем блоге. Очень интересно=)
Adeon
> на сколько плохо то, что приходится считать 2 раза цвет неба?
Очень плохо, но иначе ни как. Нет, ну можно запаковать цвета в текстуру и модернизировать
в precomputed scattering - предрасчитаный скаттеринг, тогда будет на пустой сцене овер 1000 ФПС,
но это в будущем. Смысл операции прост - в первом проходе мы считаем цвета по этому шейдеру
и записываем в текстуру (в полярных координатах - т.е. двумерная текстура опишет нам сферу).
А потом в шейдерах мы распаковываем значение с текстуры - и радуемся. Выгода очевидна - теперь
мы не каждый кадр считаем цвет неба, а только тогда, когда меняется положение солнца. Это
громадный прирост фпс.
Могу рассказать как сделать PSSM(тени для outdoor-сцен).
Могу о SunShafts(GodRays - не понимаю принципиальной разницы).
Но немного позже.
Было бы интересно почитать об SunShafts=)
fzr125
Реализовал скаттеринг, приступил к шейдингу облаков.
Вот хотел у тебя спросить - как ты определяешь толщину облака, чтобы определить шаг расчета?
Кстати, а когда продолжение то будет. До сих пор жду=)
Osiris
> Вот хотел у тебя спросить - как ты определяешь толщину облака, чтобы
> определить шаг расчета?
Ну это же обычная текстура шума (Perlin Noise) - чем "цвет белее" - тем "облако в точке толще".
Раньше там был цикл по нескольким точкам - но как показала практика - результат одинаковый - поэтому хватает взять лишь соседнюю точку по вектору солнца - и уже будет норма.
Adeon
> Было бы интересно почитать об SunShafts=)
Вот тут в кратце :
http://gddx.narod.ru/shafts.html
ЗЫ. вообще, я ужасно пишу статьи, так что если неясно - спрашивайте.
ЗЗЫ. Отвечаю не часто, т.к. с ногой проблемы - постоянно то тут, то в травме - там дырка размером с теннисный мячик, я сам в шоке, но с улыбкой на лице - оптимизм так и прет ))))
ты рисуешь облака еще плоскостью перед атмосферой - бленд какой и тп?
что надо делать чтобы такое освещение получить
http://reset-game.net/wp-content/uploads/2012/12/threshold_high-500x210.jpg
Тема в архиве.