OGRE Шейдер спрайтов + с# эффект

Web/сайты Прочее

Был(а) онлайн: 26.04.20 14:45
Umen 26 лет

1.0 Был(а) онлайн: 26.04.20 14:45

Недавно
Необходимо реализовать шейдер спрайтов для применения в движке OGRE.
Основные требования:
1)Помощь нескольких спрайтов(скажем 3х) для одного объекта, которые заменяют друг
друга на различных расстояниях, причем по мере приближения/удаления от объекта один помаленьку перетекает в иной.
2)При изменении позиции наблюдателя спрайт должен меняться:
- при изменении угла обзора - вращаться, причем скорость вращения
зависит от расстояния.
Чем ближе - тем крепче реагирует(это значимый момент!) на метаморфоза угла обзора.
угол поворота спрайта
Dz=F(SphRad(dx,dy),S)=F(dx,dy,S)
где dx,dy -соответственно углы в x и y плоскостях, совместно формирующие
угол обзора, а S- расстояние от наблюдателя до источника света.
что-то как бы
F(dx,dy,s):=2Pi*sin(x)*sin(y)*e^(1/(1+s))
либо даже примитивней
F(dx,dy,s):=sign(x*y)*sqrt(|x*y|)*(1/(1+s))
где sign(a):=1 if a>0;0 if a==0;-1 if a<0
- при изменении расстояния - менять масштаб
Size=g(s)
где s - расстояние от наблюдателя до источника
скажем g(s):=((s+10)/(s+9))
3) В качестве картинок спрайтов надобно применять png формат (волнует основным образом полновесная помощь альфа-канала)
4) для вычисления видимых пикселей следует применять OGRE occlusion query

5)в шейдере обязаны быть настраиваемые(через класс результата) параметры

На выходе должно быть:
1)файл .material
2)файлы ps/vs шейдеров
3)файл результата c# (см пример)
4)подробное описание

Чтобы добавить заявку к этому заказу, нужно войти или зарегистрироваться

Мой блок

26.04.20 14:45
Umen 26