NCHL 보기 귀찮아서 다시봤는데 더 귀찮네 역시 길더라도 정석을 보는게 정신 건강에 좋다. http://roar11.com/2015/07/screen-space-glossy-reflections/ 실제 실행해보니 결과가 생각보다 않좋다. https://github.com/kode80/kode80SSR 상용에서 썻던것 https://sakibsaikia.github.io/graphics/2016/12/25/Screen-Space-Reflection-in-Killing-Floor-2.html GPU Pro5 권에도 있다네 "Hi-Z Screen-Space Cone-Traced Reflections" (mirror's edge) 구글 북에서 2페이지 뺴고 다보여준다~ 찾으면 프로바이트 SSR도 나온다..
결국 제대로 하려면 똑같이 컨버팅 해놓고 비교하는 수밖에 https://sites.google.com/site/mikumikumoving/manual/effect-1 그 과정에서 알게된건 상수 몇개에 배수 해둬야한다는 것 "si" 푸른 빛과 광량 부족을 해결하기 위해 빛 자체를 바꿧다는 것 (157, 157, 157) -> (211, 204, 228) 우선 Ambient 꽤 괜찮은 듯 ambient color ambient intensity (3개 channnel) back light ambLight ambLamb backLight *= 10; ambLight = lerp(ambColor0, ambColor1, ambLamb)*10 ambient intensity = AO * (ambLight + bac..
F0 대신 Specular를 사용할 수 있단다 https://en.wikibooks.org/wiki/GLSL_Programming/Unity/Specular_Highlights_at_Silhouettes#Schlick.27s_Approximation_of_the_Fresnel_Factor In other words, the Fresnel factor adds a dependency of the material color on the angle between the direction to the viewer and the halfway vector. Thus, we replace the constant material color with Schlick's approximation in any cal..
TAA 구현 중 지겨워서 캐릭터 표현을 바꾸기 위해 찾아보니 https://youtu.be/987OuFe8590 이런게 있었다. 기본 Shader로 NCHL 라는 걸 사용했다는데 http://mmdguide.tistory.com/459 Cook-Torrance 반사 모델, Half Lambert, 림 라이트 등으로 구성되었다고 한다. Halft Lambert의 정의는 square를 포함해야 하는 것 같다. https://developer.valvesoftware.com/wiki/Half_Lambert 그 덕에 아래 아저씨는 normalized half-lambert 계산할 때 치환해서 품 http://www.project-asura.com/program/d3d11/d3d11_006.html 그럼 왜 다들..
SDEF는 일반적으로 구현하던가 포기하던가 Le, Hodgins 2016 paper "Real-time Skeletal Skinning with Optimized Centers of Rotation 선처리로 8-core 에서 16초 정도 걸린다는 거 보고 접었는데 SDEF가 이상하게 나오는거 보니 다시 관심이 간다. 다시 보니 weight가 20개가 넘어간다. https://github.com/damian0815/skellington 이거 전에 썻던 글 같은데;
아래 2개 보면 카메라는 만들 수 있다. https://developer.nvidia.com/gpugems/GPUGems3/gpugems3_ch27.html http://john-chapman-graphics.blogspot.kr/2013/01/what-is-motion-blur-motion-pictures-are.html 두 작업 모두 UAV를 사용하여 CS에서 하면 간단하다. 전체 개괄은 아래에서 찾을 수 있는데 엔터 칠줄 모르는 아저씨라 보긴 힘들다 https://mynameismjp.wordpress.com/the-museum/samples-tutorials-tools/motion-blur-sample/ https://docs.unrealengine.com/udk/Three/MotionBlurKR..
버그를 잡으려면 원인에 집중해야한다. 현상은 그림자가 위치에서 디스코 택처럼 깜박였다. motion blur/ssao 넣고 난뒤에 생긴거라 우선 위에걸 제거해보고 안되어서 화면 넓게 보니 해당 현상이 줄어들었다. 그래서 object clipping 여부에 따라 해당 문제가 발생하는 줄 알고 cliping 을 날려보니 문제가 없었다 skinning object 때문에 AABB 자체가 정밀하지 못했고, shadow map 을 위한 light space clipping 부분도 문제 있는 것 같아서 CSM 넣고 해당부분 제거하자고 하고 우선 넘어갔다. 이까지 오는데 3시간 넘게 걸렸는데. SSAO 버그 수정하다가 shadow map 쪽에서 살펴볼께 있어 shadow map을 보니 여보세여?? float comp..
코드 정리까지 같이하니 시간이 너무 걸린다. 몇가지 발견한 트릭들 [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으로 set..
- Total
- Today
- Yesterday