본문 바로가기

전체 글64

11. 1 ~3 깊이 스텐실 버퍼 자료, 깊이 스텐실 버퍼 자료 형식과 버퍼 지우기 스텐실 버퍼는 후면 버퍼 및 깊이 버퍼와 같은 해상도를 가지다 특성 픽셀 단편들이 후면 버퍼에 기록 되지 못하게 막는 역할을 한다 예로 들어서 거울의 모습을 구현 할려면 물체의 반사된 이미지를 거울의 평면에 그리는데 거울의 테두리 바깥까지 그려지면 안된다 슽텐실 버퍼를 이용해서 거울 테두리 안에만 반사상이 그려지게 한다 사용 방법 D3D12_DEPTH_STENCIL_DESC 구조체를 채워서 그것을 파이프 라인 상태 객체(PSO) 의 DepthStecilState 필드에 설정 깊이 스텐실 버퍼를 하나의 텍스처로 보고 특정한 자료 형식을 저장 해야 한다 DXGI_FORMAT_D32_FLOAT_S8X24_UINT : 32비트 부동 소수점 깊이 값, 8비트 부호 없는 .. 2023. 11. 7.
10.9 요약 및 연습 문제 요약 1. 혼합은 현재 레지스터화 픽셀 과 후면 버퍼에 이미 레스터화 된 픽셀의 섞는( 결합 ) 기법 물이나 유리 같은 반투명 물체를 렌더링 한다 2. 혼합 공식 $ C= C_{src}\bigotimes F_{src}\bigoplus C_{dst} \bigotimes F_{dis}$ $ A= A_{src}\bigotimes F_{src}\bigoplus A_{dst} \bigotimes F_{dis}$ RGB 성분들과 알파 성분들을 개별적으로 혼합, 이항 연산자로 여러 연산자를 사용 할 수 있다 3. $C : F_{src} F_{dis} , A : F_{src} F_{dis} $ 혼합 계수 컬러, 알파 등으로 혼합 공식을 커스텀 화 하는 수단으로 사용 된다 4. 분산 재질의 알파를 원복 픽셀의 알파로 사.. 2023. 11. 2.
10.8 안개 안개 효과를 이용하면 먼거리의 렌더링 결함과 파핑 현상을 숨길 수 있다 파핑 현상이란 물체가 카메라 이동함에 따라 절두체 안으로 들어 오면서 갑자기 화면에 튀어나오는 현상 안개를 구현 하는데는 안개 색상, 안개 시작점, 안개의 범위 렌더링 도중에는 삼각형의 한점의 색상을 원래 색상과 안개 색상의 가중 평균으로 구한다 $$ foggedColor = litColor + s(fogColor - litColor)\\ foggedColor =(1-s) \cdot litColor + s \cdot fogColor$$ 매개 변수 s 는 카메라 위치와 점 사이의 함수 ( 0이상 1이하의 치역) 매개 변수 s 구하는 식 $s = saturate(\frac{dist(p,E) - fogStart}{fogRange})$ di.. 2023. 10. 28.
10.5 혼합 연산자의 조합 예제 색상 기록 금지 원본 픽셀 과 대상 픽셀 섞이게 하지 않고 항상 대상 픽셀이 유지 렌더링 결과를 깊이, 스텐실 버퍼에만 기록 하고 후면 버퍼에는 기록하지 않는 방식 $$C=C_{src} \bigotimes F_{src}\square C_{dst} \bigotimes F_{dis}\\ C=C_{src} \bigotimes (0,0,0)\square C_{dst} \bigotimes (1,1,1)\\ C = C_{dst}$$ D3D12_RENDER_TARGET_BLEND_DESC 구조체의 RenderTargetWriteMask 를 0으로 설정해도 같은 효과 발생 가산 혼합 과 감산 혼합 $$C=C_{src} \bigotimes F_{src}\square C_{dst} \bigotimes F_{dis}\\ C.. 2023. 10. 26.