티스토리 뷰

Game/MMD

Skydome (1)

newpolaris 2017. 11. 17. 23:04

코드 정리까지 같이하니 시간이 너무 걸린다.

몇가지 발견한 트릭들

[Luna]

// Set z = w so that z/w = 1 (i.e., skydome always on far plane).
output.position = mul( worldViewProjMatrix, float4(position, 1)).xyww;

Far plane 이 1로 고정되어있으면 몽땅 far 로 보내버리면 된다

[incskies]

// カメラ視点のワールドビュー射影変換
//     カメラの移動をキャンセルし、
//     視点を常に天球の中心に。
float4x4 mat = WorldViewProjMatrix;
mat[3] = float4(0,0,0,1);

Pos.xyz *= STAR_DISTANCE;

left 좌표계라면 저기를 0으로 setting 해서 이동 변환을 무효화시킨다는 건데

난 잘안되었음

[ray]

            oNormal = Position;
            oNormal.y = oNormal.y < -0.05 ? -0.05 : oNormal.y;
            oNormal.y += 0.05;
            oPosition = mul(matModelViewProject, oNormal);
            oNormal.y -= 0.05f;

땅바닥을 채우는 shader code

사진에 따라;

이까진 그래도 코딩이었다.

근대 결과가 이상하게, 마지막 라인에 줄이 가 있었고, 꼭대기가 이상했다.

처음 가장 의심이 갔던건 사진이었는데, HDR 넣으니 인식이 안되서 포기하고

다른거 받는 동안 테스트를 하기로 했다.

위의 결과는 shere 의 texture coordinate를 pixel 에서 계산한거라

texcoord 올라온걸 써보기로 했다.

[LUNA] 의 sphere 소스인데 먼가 이상했다.

[Ray] 의 sphere 소스를 가져와서 양쪽다 테스트 해봤으나

2시간 쯤 날린거 같은데 예전~에 다운 다된 이미지로 테스트하니

잘된다.

내시간은 어디로 간건가.

WIC Codec 이 안되서 다른 포맷으로 분리했다고 하니 HDR 포팅해야한다.

망할 일은 계속 늘어난다.

드디어, HDR 사진을 넣었다. HDR 옵션 킨김에 SKY DOME HDR 이 얼마나 나을까 보려고 했던건데;

8K HDR 인데 확실히 색이 안깨진다. 로딩은 4초 걸림

ACES 사촌

ReinhardSq

단순한 Tonemap operator로는 이정도인듯

아래와 같은걸 원한다면 tonemapping 한 HDR 을 가져와야할듯

Model/Skydome/incskies_023_8k.hdr,D3D11 Texture2D,*,715827872,R32G32B32A32_FLOAT,8192,4096,,14,1,1

tone operator 거치기 전에는 좁은 영역에 데이터가 몰려있다

'Game > MMD' 카테고리의 다른 글

버그 잡기 (1) - shadow map  (0) 2017.11.23
ESM  (0) 2017.11.18
안정화 작업 (5) - Auto exposer  (0) 2017.11.17
안정화 작업(4) - Camera bug 수정, Outline  (0) 2017.11.17
Dual Quaternion 버그  (0) 2017.11.16
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크