본문 바로가기

DirectX/3D

DX 3D z버퍼 Z버퍼 기본 구조는 저렇게 생겻다. X축과 Y축이 있고 뒤쪽으로 깊이값이 있는 Z버퍼가 있다, 보통 DX에서는 0~1 값을 같는다고 한다 듀토리얼에서는 클리어시 Z버퍼 값을 1.0f 값으로 적용 한다. 내가 볼수 있는깊이중에 맨뒤에 있는 Z버퍼의 값이 1.0f 가 되는것이고 맨 앞에 있는곳에 0.0f 정도 될수 있을것 같다. 다음은 이 Z버퍼를 사용하면서 알파 블랜딩을 사용 하게 되는데 이것이 문제가 있다. 출력하는 순서가 바뀌게 되면 알파 블랜딩이 제대로 안먹히게 된다. 앞에 Z값이 적은 텍스처를 처음에 뿌리게 되면 뒤에 아무것도 없는 상태에서 알파블랜됭 된다. 그뒤에 Z값이 더큰 텍스처를 뿌리게 되면 일반적으로는 Z값이 작은 텍스처 에 알파블랜딩 된것들뒤에 Z값이 작은 값이 출력 되어야 한다. 하지만..
Z버퍼의 개념( 알파블랜딩) Z 버퍼의 Read / Write 개념 (1부. Z 값과 Z 버퍼) Z 버퍼의 Read / Write 개념 (2부. 개악마 알파 블렌딩1편)Z 버퍼의 Read / Write 개념 (3부. 개악마 알파 블렌딩2편) Z 버퍼의 Read / Write 개념 (4부. 개악마 알파 블렌딩3편)Z 버퍼의 Read / Write 개념 (5부, 알파 테스팅) Z 버퍼의 Read / Write 개념 (6부, Z Read/Write)최종회 : Z 버퍼의 Read / Write 개념 (7부, Z Read On / Write Off)
DirectX 한글 도움말 http://telnet.or.kr/sec_directx/
랜더링 파이프라인 랜더링 파이프라인이란 고정된 기능 기하 파이프라인이다. 즉, 변환 엔진으로써 모델을 위치시키고, 시점을 만들고, 화면에 장면을 투영하고, 정점을 짤라서 뷰 포트로 보내는 작업을 수행한다. 또한 빛을 계산하여 빛의 확산과 각 정점의 반사 성분을 결정하는 작업을 수행한다. 밑의 그림은 수행 하는작업과 순서를 나타내고 있다. 처음 들어오는 정점은 로컬 좌표 시스템에서 선언된 정점으로 어떤 변환도 적용되지 않은 상태이며 모델 좌표라고 부른다. 독립적인 좌표를 가지고 있는 모델은 다른 오브젝트들과 함께 사용하는 좌표 시스템으로 변환 된다. 이 변환 작업을 월드 변환(World Transformation) 이라하고 이 공간을 월드 공간이라 한다. 이렇게 수정된 정점은 카메라 기준으로 다시 수정 된다. 즉, 시점을 ..
DX 수학관련 함수 벡터의 정의 : 방향과 크기를 가지는 것 D3DXVECTOR3 백터의 길이 : FLOAT D3DXVec3Length(CONST D3DXVECTOR3* v) 벡터의 정규화 : 크기가 1인 단위벡터만들기 D3DXVECTOR3 * D3DXVec3Normalize( D3DXVECTOR3* pOut, CONST D3DXVECTOR3* v ) 벡터의 내적 : 조명의 계산, 은닉면 처리에 활용 FLOAT D3DXVec3Dot( CONST D3DXVECTOR3* v1, CONST D3DXVECTOR3* v2 ) 벡터의 외적 : 면의 법선 벡터 계산, 평면의 식 계산에 활용 D3DXVECTOR3* D3DXVec3Cross( D3DXVECTOR3* pOut, CONST D3DXVECTOR3* v1, CONST D3DXVE..