Тема: Xors3D
Показать сообщение отдельно
Старый 19.06.2009, 13:08   #165
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Xors3D

самая мякотка вот она

float PlxDepth=.03;
float PlxDist=1000;

float3 PosCam;
float3 OrigPosCam;

OrigPosCam=PosCam;
PosCam=normalize(PosCam-IN.pWorld); //pworld это мул(in.position,MatWorld)

float depth;
float height;
float bias=PlxDepth/2;
float3x3 matTangentSpace=float3x3(IN.Tangent,IN.Binormal,IN .Normal);
matTangentSpace = transpose(matTangentSpace);
float3 CamPosPlx = normalize(mul(PosCam,matTangentSpace));
PlxDist = 1-(distance(OrigPosCam,IN.pWorld)/PlxDist);
if (PlxDist>.05) {
depth = tex2D(depthtex,TexCoords).r;
height = (PlxDepth*depth-bias);
TexCoords = TexCoords+height*CamPosPlx.xy*PlxDist;
}

юзаем texcoords теперь для диффуза и чего угодно
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием