Position을 넘기는 조금 다른 방식

float3 vPos = mul(float4(In.iPos, 1.0f), (float4x3)World);
 float3 vViewPos = mul(float4(vPos, 1.0f), (float4x3)matView);
 Out.oPos = mul(float4(vViewPos, 1.0f), Projection);

이건 Position 을 flaot3 로 받아 float4로 넘긴다는 발상.
여태까지그냥 생각없이 쓰던 position은

float4로 받아  (동차좌표에는 쓰레기 값이 있을듯. )

Out.oPos = mul(In.iPos, WorldViewProj)

WorldViewProj 로 한방에 넘겨버리는 방법이었는데,
이걸 3개로 분할해서 넘기는 방식.
좀 더 빨라질 지도 모른다 …? 는 애매모호한 답변을 들었는데
정말 빨라지는지는 애널라이징 해봐야 알듯. (뭐 쓸데없는 w 값의 mul 은 좀 줄어들긴 하겠다만)

어쨌거나 이런 방법도 있다는거 .. 뭐 …
이제 기본적인건 익숙해지다보니, 이런 응용도 눈에 들어오기 시작한다는데 의의가 있을듯.

(근데 Out  Position의 w 값은 뭐에 쓰는 걸까. )

Hugo로 만듦
JimmyStack 테마 사용 중