DirectX Graphics 레퍼런스 Direct3D C/C++ 레퍼런스 인터페이스 IDirect3DDevice9 MultiplyTransform   [목차열람] [주소복사] [슬롯비우기]
IDirect3DDevice9::MultiplyTransform 메서드
 
Microsoft DirectX 9.0

IDirect3DDevice9::MultiplyTransform 메서드


장치의 월드 행렬, 뷰 행렬, 또는 투영 행렬에, 지정된 행렬을 곱셈한다.

구문

HRESULT MultiplyTransform(      

    D3DTRANSFORMSTATETYPE State,     CONST D3DMATRIX *pMatrix );

파라미터

State
[in] D3DTRANSFORMSTATETYPE 열거형의 멤버, 또는 D3DTS_WORLDMATRIX 매크로. 변경하는 장치 행렬을 식별한다. 가장 일반적인 설정은 D3DTS_WORLDMATRIX(0)로, 월드 행렬을 변경하지만, 필요하면, 뷰 행렬이나 투영 행렬을 변경하도록(듯이) 지정할 수도 있다.
pMatrix
[in] 현재의 변환을 변경하는 D3DMATRIX 구조체의 포인터.

반환값

성공했을 경우는,D3D_OK 를 돌려준다.

인수중 한쪽이 무효인 경우는,D3DERR_INVALIDCALL 가 된다.



주의

곱셈의 순서는,State × pMatrix 이다.

애플리케이션이, 변환의 계층 구조를 사용해 동작하기 위해서,IDirect3DDevice9::MultiplyTransform 메서드를 사용하는 일도 생각할 수 있다. 예를 들어, 팔을 나타내는 지오메트리와 변환은, 이하의 계층에서 구성하는 일도 있다.

shoulder_transformation
    upper_arm geometry
    elbow transformation
    	lower_arm geometry
    	wrist transformation
		hand geometry

애플리케이션에서는, 이 계층을 렌더링 하기 위해서 이하의 일련의 호출을 실시할 수가 있다. 이 코드에서는 일부의 파라미터만 가리킨다.

IDirect3DDevice9::SetTransform(D3DTS_WORLDMATRIX(0), 
    shoulder_transform)
IDirect3DDevice9::DrawPrimitive(upper_arm)
IDirect3DDevice9::MultiplyTransform(D3DTS_WORLDMATRIX(0), 
    elbow_transform)
IDirect3DDevice9::DrawPrimitive(lower_arm)
IDirect3DDevice9::MultiplyTransform(D3DTS_WORLDMATRIX(0), 
    wrist_transform)
IDirect3DDevice9::DrawPrimitive(hand)

참조

IDirect3DDevice9::DrawPrimitive ,IDirect3DDevice9::SetTransform ,D3DTS_WORLD ,D3DTS_WORLDn ,D3DTS_WORLDMATRIX


© 2002 Microsoft Corporation. All rights reserved.
↑TOP