추가적으로 공부할 내용 정리 요약
Tessellation(LOD, Frustum Culling, Terrain LOD)
Shadow(VSM, CSM)
Water(Reflection, Refraction, Cliping)
Atmospheric Scattering(Mie, Rayleigh)
Differed Rendering
PBR(Physically Based Rendering)
Ambient Occlusion(ex : SSAO)
Anti Aliasing(ex : MSAA)
추가적으로 공부할 내용 정리 설명
테셀레이션배워서 LOD(거리차에 의해 정점을 얼마만큼 표시할 건지), 가장 가까우면 가장 디테일하게 멀면 정점을 점점 줄인다.(렌더링 속도를 높임)
모델에 적용하면 PMPatch, PMTriangle이라고 한다.
프러스텀 컬링이라는 걸 합쳐서 LOD로 대규모 지형을 표시함(테셀레이션을 이해해야 가능하다.)
DX9을 이용한 방식도 있지만, 지금은 안씀, 테셀레이션으로 대규모 지형을 함
프러스텀 컬링을 위해 4개 면을 사용한다. 입력 받아서 사용해도 된다. Perframe에다가 2개를 세팅함(그래서)
셰도우에서 VSM, 캐스케이드 Shadow Mapping 기법도 있다.
물을 표시할때 물의 반사면, 굴절면을 만듬
그때 Clipping을 하게 됨 Global의 CB_Perframe에 있다.
대기 산란을 구현하는 방식이 있다. 실시간으로 해가 뜨고 해가 지고
유니티나 이런데 예제가 많다. 셰이더 부분이니까 그 부분 참고해서 구현하면 된다.
우리의 조명은 M X L이다. 메쉬개수 x 라이트 이다. 메쉬하나를 그릴때 마다 spotLight를 그린다, 디퍼드 렌더링을 사용하면 M + L 빠르게 렌더링 가능
그림자를 그릴때 2PassRendering을 했다. 디퍼드 렌더링도 기본 2PassRendering
디퍼드 렌더링은 1Pass Geometry Buffer를 만들고 2Pass에는 이 정보를 조합해서 조명을 그려내는 방식
PBR(물리 기반 렌더링) : 러프니스(얼마만큼 거칠게), 메탈릭(얼마만큼 금속 재질) 기법이 있다. 다이나믹 환경 매핑도 PBR에서 쓰임
디퍼드 렌더링 깊이와 Gbuffer를 이용하면 차폐를 구현가능 차폐를 이용하여 어두워져야 하는 구석이나 이런데 Ambient Oclusion 구현가능
가장 많이 게임에서 쓰이는 기법은 SSAO 요새는 MSAO를 쓴다.
필연적으로 디퍼드 부터는 2Pass에서 렌더링을 해서 그림자도 1Pass에 따라 2Pass도 퀄리티가 떨어졌다. 그래서 여기서 해상도를 높이기 위해
AntiAliasing 기법이 동일하게 쓰임
AntiAliasing은 11부터는 MSAA가 많이 쓰임
'DirectX11 3D > 기타' 카테고리의 다른 글
Normal Mapping 텍스쳐 제작 사이트 (0) | 2022.03.29 |
---|---|
셰이더 기법 수식 참고사이트(3D Api) (0) | 2022.03.29 |
분리축(SAT)이용한 OBB간의 충돌 (0) | 2022.03.07 |
DeadLock(교착상태) (0) | 2022.02.23 |
Interrupt(인터럽트) 발생 원인 (0) | 2022.02.22 |