티스토리 뷰
DirectX 9 에서는 내장 DirectX 11 log / exp 를 사용하여 구현했다고 알려져있다 (OpenGL 도 마찬가지)
http://blog.techlab-xe.net/archives/5550 https://www.opengl.org/discussion_boards/showthread.php/182833-pow%28x-2%29-different-then-x%2Ax
보통 경우에서 가장 큰 차이는 전에는 x 부분이 음수면 0이었는데 Nan 으로 바뀌었다는거
https://www.opengl.org/discussion_boards/showthread.php/182833-pow%28x-2%29-different-then-x%2Ax
Fx 기반 MMD 에선,
float3 lambda = float3(680e-9, 550e-9, 450e-9);
c = pow(lambda, 2.0) * float3(1e6, 1e6, 1e6);
return float4(c, 1.0);
0.68, 0.55, 0.45 의 갈색이 나온다
반면, pow(float3(680e-9,550e-9, 450e-9), 2) 는
정상적으로 계산되어 검정색으로 나온다
그로인해 포팅할 때 다른 식으로 바꾸거나 파라메터 수정이 필요했다
'Game > Graphics' 카테고리의 다른 글
GPU culling (0) | 2018.11.27 |
---|---|
HLSL TO OPENGL (0) | 2018.10.14 |
Volumetric Light (0) | 2018.03.21 |
Area light cont. (0) | 2018.03.18 |
Real-Time Area Lighting: a Journey from Research to Production (0) | 2018.03.15 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크