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

Billboard 샘플


설명

Billboard 샘플에서는, 빌보딩의 기법을 나타내고 있다. 다각형수가 많은 나무의 모델 등, 복잡한 3D 모델을 렌더링 하는 대신에, 모델의 2D 이미지를 렌더링 해, 항상 시점에 향하도록 회전시킨다. 이 기법은, 나무·구름·연기·폭발등을 렌더링 하기 위해서, 일반적으로 사용된다. 더 자세한 정보는, 「빌보딩」을 참조할것.

이 샘플에서는, 카메라는 나무으로 덮인 언덕의 3D 장면을 비행한다. 나무는 3D 개체와 같이 보이지만, 실제로는, 시점으로 향해 회전하는 2D 빌보드 이미지이다. 언덕의 지형 및 특별 관람석 (하늘 텍스처를 포함한 입방체)은,. x 파일로부터 로드 되는 개체이다. 이것은 시각 효과를 위해서 사용되어 빌보딩 기법과는 무관하다.

패스

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

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

사용자 가이드

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

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

프로그래밍 정보

이 샘플에서는, 빌보딩 기법에 중점을 두고 있다. 카메라는 각 프레임으로 이동해, 거기에 따라서 시점도 변화한다. 시점이 변화 하면, 빌보드가 새로운 시점의 분을 향하도록(듯이), y 축으로 따라 빌보드를 회전시키는 회전 행렬이 생성된다. 빌보드 행렬의 계산은 FrameMove 함수로 행해진다. 빌보드에는 보통 투명한 픽셀이 포함되어 있으므로, 적절한 알파 혼합을 실시하기 위해서, 나무도 이 함수에 저장 된다. 나무은,DrawTrees 함수로 정점 버퍼로부터 렌더링 된다.

이 샘플의 빌보드는, y 축으로 따라서만 회전하도록 제한되고 있다. 이와 같이 하지 않으면 나무의 간이 지면에 고정되지 않은 것 처럼 보인다. 3D 항공 시뮬레이션 게임이나 스페이스 슈팅 게임의 폭발등의 효과에서는, 빌보드는 보통 1 개의 축으로 제약되지 않는다.

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



© 2002 Microsoft Corporation. All rights reserved.
↑TOP