1 USING: math classes.struct windows.types alien.syntax windows.directx.d3d9types
2 windows.com.syntax windows.com windows.directx windows.directx.d3d9 ;
3 IN: windows.directx.d3dx9math
7 CONSTANT: D3DX_PI 3.141592654
8 CONSTANT: D3DX_1BYPI 0.318309886
10 : D3DXToRadian ( degree -- radian ) D3DX_PI 180.0 / * ; inline
11 : D3DXToDegree ( radian -- degree ) 180.0 D3DX_PI / * ; inline
13 CONSTANT: D3DX_16F_DIG 3
14 CONSTANT: D3DX_16F_EPSILON 4.8875809e-4
15 CONSTANT: D3DX_16F_MANT_DIG 11
16 CONSTANT: D3DX_16F_MAX 6.550400e+004
17 CONSTANT: D3DX_16F_MAX_10_EXP 4
18 CONSTANT: D3DX_16F_MAX_EXP 15
19 CONSTANT: D3DX_16F_MIN 6.1035156e-5
20 CONSTANT: D3DX_16F_MIN_10_EXP -4
21 CONSTANT: D3DX_16F_MIN_EXP -14
22 CONSTANT: D3DX_16F_RADIX 2
23 CONSTANT: D3DX_16F_ROUNDS 1
27 TYPEDEF: D3DXFLOAT16* LPD3DXFLOAT16
32 TYPEDEF: D3DXVECTOR2* LPD3DXVECTOR2
34 STRUCT: D3DXVECTOR2_16F
37 TYPEDEF: D3DXVECTOR2_16F* LPD3DXVECTOR2_16F
39 TYPEDEF: D3DVECTOR D3DXVECTOR3
40 TYPEDEF: D3DXVECTOR3* LPD3DXVECTOR3
42 STRUCT: D3DXVECTOR3_16F
46 TYPEDEF: D3DXVECTOR3_16F* LPD3DXVECTOR3_16F
53 TYPEDEF: D3DXVECTOR4* LPD3DXVECTOR4
55 STRUCT: D3DXVECTOR4_16F
60 TYPEDEF: D3DXVECTOR4_16F* LPD3DXVECTOR4_16F
62 TYPEDEF: D3DMATRIX D3DXMATRIX
63 TYPEDEF: D3DXMATRIX* LPD3DXMATRIX
64 TYPEDEF: D3DXMATRIX D3DXMATRIXA16
65 TYPEDEF: D3DXMATRIXA16* LPD3DXMATRIXA16
67 STRUCT: D3DXQUATERNION
72 TYPEDEF: D3DXQUATERNION* LPD3DXQUATERNION
79 TYPEDEF: D3DXPLANE* LPD3DXPLANE
86 TYPEDEF: D3DXCOLOR* LPD3DXCOLOR
88 C-TYPE: ID3DXMatrixStack
89 TYPEDEF: ID3DXMatrixStack* LPD3DXMATRIXSTACK
91 COM-INTERFACE: ID3DXMatrixStack IUnknown {C7885BA7-F990-4fe7-922D-8515E477DD85}
94 HRESULT LoadIdentity ( )
95 HRESULT LoadMatrix ( D3DXMATRIX* pM )
96 HRESULT MultMatrix ( D3DXMATRIX* pM )
97 HRESULT MultMatrixLocal ( D3DXMATRIX* pM )
98 HRESULT RotateAxis ( D3DXVECTOR3* pV, FLOAT Angle )
99 HRESULT RotateAxisLocal ( D3DXVECTOR3* pV, FLOAT Angle )
100 HRESULT RotateYawPitchRoll ( FLOAT Yaw, FLOAT Pitch, FLOAT Roll )
101 HRESULT RotateYawPitchRollLocal ( FLOAT Yaw, FLOAT Pitch, FLOAT Roll )
102 HRESULT Scale ( FLOAT x, FLOAT y, FLOAT z )
103 HRESULT ScaleLocal ( FLOAT x, FLOAT y, FLOAT z )
104 HRESULT Translate ( FLOAT x, FLOAT y, FLOAT z )
105 HRESULT TranslateLocal ( FLOAT x, FLOAT y, FLOAT z )
106 D3DXMATRIX* GetTop ( ) ;
108 FUNCTION: HRESULT D3DXCreateMatrixStack (
110 LPD3DXMATRIXSTACK* ppStack )
112 CONSTANT: D3DXSH_MINORDER 2
113 CONSTANT: D3DXSH_MAXORDER 6
115 FUNCTION: FLOAT* D3DXSHEvalDirection
116 ( FLOAT* Out, UINT Order, D3DXVECTOR3 *pDir )
118 FUNCTION: FLOAT* D3DXSHRotate
119 ( FLOAT* Out, UINT Order, D3DXMATRIX *pMatrix, FLOAT* In )
121 FUNCTION: FLOAT* D3DXSHRotateZ
122 ( FLOAT* Out, UINT Order, FLOAT Angle, FLOAT* In )
124 FUNCTION: FLOAT* D3DXSHAdd
125 ( FLOAT* Out, UINT Order, FLOAT* A, FLOAT* B )
127 FUNCTION: FLOAT* D3DXSHScale
128 ( FLOAT* Out, UINT Order, FLOAT* In, FLOAT Scale )
130 FUNCTION: FLOAT WINAPI ( UINT Order, FLOAT* A, FLOAT* B )
132 FUNCTION: FLOAT* D3DXSHMultiply2 ( FLOAT* Out, FLOAT* F, FLOAT* G )
133 FUNCTION: FLOAT* D3DXSHMultiply3 ( FLOAT* Out, FLOAT* F, FLOAT* G )
134 FUNCTION: FLOAT* D3DXSHMultiply4 ( FLOAT* Out, FLOAT* F, FLOAT* G )
135 FUNCTION: FLOAT* D3DXSHMultiply5 ( FLOAT* Out, FLOAT* F, FLOAT* G )
136 FUNCTION: FLOAT* D3DXSHMultiply6 ( FLOAT* Out, FLOAT* F, FLOAT* G )
138 FUNCTION: HRESULT D3DXSHEvalDirectionalLight
139 ( UINT Order, D3DXVECTOR3* pDir,
140 FLOAT RIntensity, FLOAT GIntensity, FLOAT BIntensity,
141 FLOAT* ROut, FLOAT* GOut, FLOAT* BOut )
143 FUNCTION: HRESULT D3DXSHEvalSphericalLight
144 ( UINT Order, D3DXVECTOR3* pPos, FLOAT Radius,
145 FLOAT RIntensity, FLOAT GIntensity, FLOAT BIntensity,
146 FLOAT* ROut, FLOAT* GOut, FLOAT* BOut )
148 FUNCTION: HRESULT D3DXSHEvalConeLight
149 ( UINT Order, D3DXVECTOR3* pDir, FLOAT Radius,
150 FLOAT RIntensity, FLOAT GIntensity, FLOAT BIntensity,
151 FLOAT* ROut, FLOAT* GOut, FLOAT* BOut )
153 FUNCTION: HRESULT D3DXSHEvalHemisphereLight
154 ( UINT Order, D3DXVECTOR3* pDir, D3DXCOLOR Top, D3DXCOLOR Bottom,
155 FLOAT* ROut, FLOAT* GOut, FLOAT* BOut )
157 FUNCTION: HRESULT D3DXSHProjectCubeMap
158 ( UINT uOrder, LPDIRECT3DCUBETEXTURE9 pCubeMap,
159 FLOAT* ROut, FLOAT* GOut, FLOAT* BOut )