lexer
> то получается завышенное значение окола 15. Почему это так?
А без "0.5 + 0.5 * " работает? У тебя же DX... :)
А какая разница что DX?, перспективная проекция ведь везде одинаковая? И формулы для её вычисления.
Я не реализовывал твой шейдер из статьи, просто проверил этот момент, и мне кажется что нужно брать отношение z/w.
Ничего насчет DX не скажу - может там по другому. Но нужно брать именно 0.5 + 0.5 *. Я сам проверял
Вопрос есть. В шейдерах я дятел пока, переписал по статье в hlsl, вдали вода имела слишком сильный шум, поэтому добавил normal = normalize(normal + float3(0, 1, 0) * IN.position.z * const). это нормально вообще?))
И ещё, мне нужно чтобы вода не только в позиции 0,0,0 работала нормально. Как правильно координаты для отражения в таком случае считать?
Заранее спасибо.
man32
> Как правильно координаты для отражения в таком случае считать?
Отржать вектор положения камеры относительно плоскости воды. Функция отражения - из линейной алгебры.
> normal = normalize(normal + float3(0, 1, 0) * IN.position.z * const).
Зачем * IN.position.z * const ?
>Зачем * IN.position.z * const ?
Для выравнивания нормали в зависимости от расстояния. Иначе выходит не вода а пчелиный рой метрах в 60 от камеры.
вот скрин без выравнивания
а вот с выравниванием
Вообще если и делать так как я, то наверное нужна зависимость от угла между направлением камеры и нормалью, а не от расстояния.
Похоже я действительно детял))
Всё дело было в том, что фильтрация отключена...
Жаль автор не написал про шадиг под водой
The Andreyp
Да, у автора там интерполяция до цвета водъ, можно хотя бъ убъвание цвета сделать покоректнее - краснъй исчезает очень бъстро, потом зеленъй, под конец и синий.
Хорошей апроксимацией етого убъвания и есть цвет водъ.
Z
> можно хотя бъ убъвание цвета сделать покоректнее
Да, я в новой версии так и сделал. Но что-то оно не вставляет такое затухание :)
Sergio666
> Но что-то оно не вставляет такое затухание :)
Да, у меня тоже так бъло в начале.
А попробуй врубать его с какой-то глубинъ, а не прямо сразу - у меня есть глубина, в которой водичка вообще по разному рендится - возле берегов, когда толщина слоя маленькая. Я тогда убираю пену, делаю константную (слабую) модуляцию переломления и добавляю альфу, чтобъ край водъ не бъл резким.
мой вариант морской воды http://www.sharemania.ru/0212017
atwood
воды нет. освещение мерцает.
DxDiag.txt
atwood
воды нет. освещение мерцает.
DxDiag.txt
Драйвер нужно обновить. Это точно. С последними версиями работает хорошо. Даже драйвер начала 2009 не подходил, а тут 2008 года.
Тема в архиве.