본문 바로가기

Directx12 3D 프로그래밍 입문/10. 혼합4

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.
10.1 ~4 혼합 공식, 연산, 계수, 상태 혼합 : 현재 레스터화 하는 픽셀 (원본 픽셀)을 후면 버퍼에 이미 래스터화 되어 있는 (대상 픽셀) 섞는 기법 현재 픽셀과 나중 픽셀을 섞어서 새로운 색을 만드는 기법 ( 반투명 수면 과 나무 상자 렌더링 시 발생) 혼합 공식 $ C= C_{src}\bigotimes F_{src}\bigoplus C_{dst} \bigotimes F_{dis}$ $ A= A_{src}\bigotimes F_{src}\bigoplus A_{dst} \bigotimes F_{dis}$ 중간의 연산자는 여러 이항 연산자 중 하나 이며, +, -, min, max 로 사용 된다 C , A 독립적으로 동작 할 수 있고 다양한 연산을 할 수 있다 논리 이용자를 이용해서 섞는을 수도 있지만 위의 연산자를 사용하거나 논리 연산자를 .. 2023. 10. 21.