DirectX Graphics ·¹ÆÛ·±½º Direct3D extension (D3DX) C/C++ ·¹ÆÛ·±½º ÇÔ¼ö »ê¼ú ÇÔ¼ö D3DXPlaneTransformArray   [¸ñÂ÷¿­¶÷] [ÁÖ¼Òº¹»ç] [½½·Ôºñ¿ì±â]
D3DXPlaneTransformArray ÇÔ¼ö
 
Microsoft DirectX 9.0

D3DXPlaneTransformArray ÇÔ¼ö


Çà·ÄÀ» »ç¿ëÇØ Æò¸éÀ» º¯È¯ ÇÑ´Ù. ÀÔ·Â Çà·ÄÀº, ½ÇÁ¦ÀÇ º¯È¯ÀÇ ¿ªÀüÄ¡Çà·ÄÀÌ´Ù.

±¸¹®

D3DXPLANE *D3DXPlaneTransformArray(      

    D3DXPLANE *pOut,     CONST D3DXPLANE *pP,     CONST D3DXMATRIX *pM );

ÆÄ¶ó¹ÌÅÍ

pOut
[in, out] º¯È¯ µÈ °á°úÀÇ Æò¸éÀ» Æ÷ÇÔÇÑ D3DXPLANE ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ. ¿¹¸¦ ÂüÁ¶ÇÒ°Í.
pP
[in] º¯È¯ ÇÏ´Â Æò¸éÀ» ÀúÀå ÇÑ ÀÔ·Â D3DXPLANE ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ. Æò¸éÀ» ±â¼úÇÏ´Â º¤ÅÍ (a, b, c)´Â, ÀÌ ÇÔ¼ö¸¦ È£ÃâÇϱâ Àü¿¡ Á¤±ÔÈ­µÇ°í ÀÖÀ» Çʿ䰡 ÀÖ´Ù. ¿¹¸¦ ÂüÁ¶ÇÒ°Í.
pM
[in] º¯È¯ÀÇ °ªÀ» ÀúÀå ÇÑ, ó¸®ÀÇ ±âº»À¸·Î µÇ´Â D3DXMATRIX ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ. ¿©±â¿¡´Â, º¯È¯°ªÀÇ ¿ªÀüÄ¡Çà·ÄÀ» ÀúÀå ÇÒ Çʿ䰡 ÀÖ´Ù.

¹Ýȯ°ª

º¯È¯µÈ Æò¸éÀ» ³ªÅ¸³»´Â D3DXPLANE ±¸Á¶Ã¼ÀÇ Æ÷ÀÎÅÍ. ÀÌ °ªÀº,pOut ÆÄ¶ó¹ÌÅÍÀÇ ¹Ýȯ°ª°ú °°´Ù. µû¶ó¼­, ÀÌ ÇÔ¼ö´Â ´Ù¸¥ ÇÔ¼öÀÇ Àμö·Î¼­ »ç¿ëÇÒ ¼ö ÀÖ´Ù.



¿¹

ÀÌ ¿¹¿¡¼­´Â, ÇѰᰰÁö ¾ÊÀº ½ºÄÉÀÏÀ» Àû¿ëÇØ Æò¸éÀ» º¯È¯ ÇÑ´Ù.

D3DXPLANE   planeNew;
D3DXPLANE   plane(0,1,1,0);
D3DXPlaneNormalize(&plane, &plane);

D3DXMATRIX  matrix;
D3DXMatrixScaling(&matrix, 1.0f, 2.0f, 3.0f); 
D3DXMatrixInverse(&matrix, NULL, &matrix);
D3DXMatrixTranspose(&matrix, &matrix);
D3DXPlaneTransform(&planeNew, &plane, &matrix);

Æò¸éÀº ax + by + cz + dw = 0 À̶ó°í ÇÏ´Â ½ÄÀ¸·Î ³ªÅ¸³½´Ù. ÃÖÃÊÀÇ Æò¸éÀº, (a, b, c, d) = (0,1,1,0)·Î »ý¼º ÇÏ´Â, y + z = 0 À¸·Î ³ªÅ¸³»Áö´Â Æò¸éÀÌ´Ù. ½ºÄÉÀÏ ÈÄÀÇ »õ·Î¿î Æò¸éÀº, (a, b, c, d) = (0, 0.353f, 0.235f, 0)µÈ´Ù. À̰ÍÀº, »õ·Î¿î Æò¸éÀÌ 0.353y + 0.235z = 0 À¸·Î ³ªÅ¸³»Áö´Â °ÍÀ» ³ªÅ¸³½´Ù.

ÆÄ¶ó¹ÌÅÍ pM ¿¡´Â, º¯È¯ Çà·ÄÀÇ ¿ªÀüÄ¡Çà·ÄÀ» ÀúÀå ÇÑ´Ù. ÀÌ ¸Þ¼­µå¿¡¼­´Â, º¯È¯ ÇÏ´Â Æò¸éÀÇ ¹ý¼± º¤Å͵µ ¿Ã¹Ù¸£°í º¯È¯ Çϱâ À§Çؼ­, ¿ªÀüÄ¡Çà·ÄÀ» »ç¿ëÇÒ Çʿ䰡 ÀÖ´Ù.

ÇÔ¼öÀÇ Á¤º¸

Çì´õd3dx9math.h
ÀÓÆ÷Æ® ¶óÀ̺귯¸®d3dx9.lib
ÃÖÀúÇÑÀÇ operating system Windows 98

ÂüÁ¶

D3DXPlaneNormalize ,D3DXMatrixRotationX ,D3DXMatrixRotationY ,D3DXMatrixRotationZ ,D3DXMatrixInverse ,D3DXMatrixTranspose


© 2002 Microsoft Corporation. All rights reserved.
¡èTOP