DirectX Graphics 프로그래밍 가이드 튜토리얼, 샘플, 툴, 힌트 샘플 Environment Mapping 샘플 Cube Map 샘플   [목차열람] [주소복사] [슬롯비우기]
Cube Map 샘플
 
Microsoft DirectX 9.0

Cube Map 샘플


설명

Cube Map 샘플에서는, 큐브 맵핑으로 불리는 환경 맵핑의 방법을 나타낸다. 환경 맵핑은, 3D 개체의 주위의 환경 (라이트등)을 텍스처 맵에 배치해, 시간이 걸리는 조명의 계산을 실시하지 않고 복잡한 조명 이펙트를 개체에 적용할 수 있는 방법이다.

환경 맵핑의 방법 (큐브 맵핑이나 투영 텍스처등)의 일부의 기능 밖에 지원 하고 있지 않는 카드도 있다. 환경 맵핑의 더 자세한 정보는, 「환경 맵핑」을 참조할것.

패스

소스 파일 : (SDK 루트) \Samples\C++\Direct3D\EnvMapping\CubeMap

실행 가능 파일 : (SDK 루트) \Samples\C++\Direct3D\Bin

사용자 가이드

다음의 표는 , 처리 되고 있는 키를 나타내고 있다. 메뉴 커멘드를 사용해 같은 조작을 실시할 수가 있다.

동작
Enter장면을 시작 및 정지한다.
Space 키장면을 조금씩 진행한다.
F2새로운 렌더링 장치 또는 디스플레이 모드를 선택하도록(듯이) 사용자에 지시한다.
Alt+Enter풀 스크린 모드와 윈도우 모드를 바꾼다.
Esc애플리케이션을 종료한다.

프로그래밍 정보

큐브 맵핑은, 6 면의 텍스처를 사용하는 방법이다. 이 방법의 효과를 상상하려면 , 벽지가 쳐진 방에 있는, 벽지로 축소 랩 된 개체를 생각해 보면 좋다. 큐브 맵핑은 구체 맵핑보다 우수하다. 이것은, 구체 맵핑이 본질적으로 시점에 의존하기 때문이다 (구체 맵은 특정의 시점을 염두에 두어 생성 된다). 또, 큐브 맵에서는 지오메트리의 일그러짐이 생기지 않기 때문에, 큐브 맵의 6 면 모두에 임해서,IDirect3DDevice9::SetRenderTarget 를 사용해 그 자리에서 생성할 수 있다.

큐브 맵핑은, Microsoft® Direct3D® 의 텍스처 좌표 생성에서도 사용할 수 있다. D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR 를 설정하는 것에 의해, Direct3D 는 정점의 반사 벡터로부터 큐브 맵의 텍스처 좌표를 생성하므로, 이 방법을 사용하면 환경이 개체로 반사되는 경우의 환경 맵핑 이펙트를 용이하게 생성 할 수 있다.

이 샘플에서는, 헬퍼-함수등의 프로그래밍 요소로부터 구성되는 공통의 Microsoft DirectX® 코드를 사용하고 있다. 이 코드는 DirectX 소프트웨어 개발 킷 (SDK) 외 샘플과 공유되고 있다. 샘플 프레임워크(framework)의 헤더는 (SDK 루트)\Samples\C++\Common\Include, 소스 코드는 (SDK 루트) \Samples\C++\Common\Src 에 있다.



© 2002 Microsoft Corporation. All rights reserved.
↑TOP