Game/Graphics
두깨를 알아보자
newpolaris
2017. 12. 1. 16:48
가장 간단한 것
(front face cull - back face cull)
이렇게되면 Gbuffer 계산에서 back face cull 나온다고 하면 한번더 계산해야한다.
지오메트리에 따라 depth buffer 를 계속 쓸 수 있을 지 여부가 다른데
MMD 는 투명에다가 backface 를 그려야해서 depth clear 해야하더라
그런데 back face 만 존재하는 개체 때문에 depth가 특정부분에서 크게 나온다
머 다른거 없나 해서 찾아봤는데
반투명 렌더링을위한 듀얼 깊이 버퍼링
https://interplayoflight.wordpress.com/2013/07/16/dual-depth-buffering-for-transluncency-rendering
min(depth, 1-depth) 를 계속 누적시켜 (1-g) - r 한다는 것인데
머냐 이건. 결국 화면의 최소, 화면상 최대가 되버려서;
특정 상황에서 쓸 수 있다.
여기에
http://prideout.net/blog/?p=51
gl_FrontFacing 로 back face 여부를 받아들여서 따로 누적시키는 방법도 짤막하게 나와있고
https://forum.unity.com/threads/rendering-object-thickness-volume-with-two-pass-shader.355235/
이런 저런 이야기가 있다.