Fungsi Matematika (Direct3D 10 Graphics)
Catatan
Pustaka utilitas D3DX10 tidak digunakan lagi. Kami menyarankan agar Anda menggunakan DirectXMath sebagai gantinya.
Pustaka matematika yang disediakan oleh pustaka utilitas D3DX memasok fungsi untuk menghitung operasi matematika 3D. Masing-masing fungsi dapat mengambil objek yang sama dengan parameter [in] yang diteruskan dan dikembalikan [out]. Selain itu, parameter keluar biasanya dikembalikan sebagai nilai pengembalian, sehingga output dari satu fungsi matematika dapat digunakan sebagai parameter untuk fungsi matematika lainnya.
- D3DXColorAdjustContrast
- D3DXColorAdjustSaturation
- D3DXCreateMatrixStack
- D3DXCpuOptimizations
- D3DXFloat16To32Array
- D3DXFloat32To16Array
- D3DXFresnelTerm
- D3DXMatrixAffineTransformation
- D3DXMatrixAffineTransformation2D
- D3DXMatrixDecompose
- D3DXMatrixDeterminant
- D3DXMatrixInverse
- D3DXMatrixLookAtLH
- D3DXMatrixLookAtRH
- D3DXMatrixMultiply
- D3DXMatrixMultiplyTranspose
- D3DXMatrixOrthoLH
- D3DXMatrixOrthoRH
- D3DXMatrixOrthoffCenterLH
- D3DXMatrixOrthoffCenterRH
- D3DXMatrixPerspectiveFovLH
- D3DXMatrixPerspectiveFovRH
- D3DXMatrixReflect
- D3DXMatrixRotationAxis
- D3DXMatrixRotationX
- D3DXMatrixRotationY
- D3DXMatrixRotationZ
- D3DXMatrixRotationYawPitchRoll
- D3DXMatrixScaling
- D3DXMatrixShadow
- D3DXMatrixTransformation
- D3DXMatrixTransformation2D
- D3DXMatrixTranslation
- D3DXMatrixTranspose
- D3DXPlaneFromPointNormal
- D3DXPlaneFromPoints
- D3DXPlaneIntersectLine
- D3DXPlaneNormalize
- D3DXPlaneTransform
- D3DXPlaneTransformArray
- D3DXQuaternionBaryCentric
- D3DXQuaternionExp
- D3DXQuaternionInverse
- D3DXQuaternionLn
- D3DXQuaternionMultiply
- D3DXQuaternionNormalize
- D3DXQuaternionRotationAxis
- D3DXQuaternionRotationMatrix
- D3DXQuaternionRotationYawPitchRoll
- D3DXQuaternionSlerp
- D3DXQuaternionSquad
- D3DXQuaternionSquadSetup
- D3DXQuaternionToAxisAngle
- D3DXSHEvalConeLight
- D3DXSHEvalDirection
- D3DXSHEvalDirectionalLight
- D3DXSHEvalHemisphereLight
- D3DXSHMultiply2
- D3DXSHMultiply3
- D3DXSHMultiply4
- D3DXSHMultiply5
- D3DXSHMultiply6
- D3DX10SHProjectCubeMap
- D3DXSHRotate
- D3DXSHRotatez
- D3DXSHScale
- D3DXVec2BaryCentric
- D3DXVec2CatmullRom
- D3DXVec2Hermite
- D3DXVec2Normalize
- D3DXVec2Transform
- D3DXVec2TransformArray
- D3DXVec2TransformCoord
- D3DXVec2TransformCoordArray
- D3DXVec2TransformNormal
- D3DXVec2TransformNormalArray
- D3DXVec3BaryCentric
- D3DXVec3CatmullRom
- D3DXVec3Hermite
- D3DXVec3Normalize
- D3DXVec3Project
- D3DXVec3ProjectArray
- D3DXVec3Transform
- D3DXVec3TransformArray
- D3DXVec3TransformCoord
- D3DXVec3TransformCoordArray
- D3DXVec3TransformNormal
- D3DXVec3TransformNormalArray
- D3DXVec4BaryCentric
- D3DXVec4CatmullRom
- D3DXVec4Cross
- D3DXVec4Hermite
- D3DXVec4Normalize
- D3DXVec4Transform
- D3DXVec4TransformArray
Mengatasi Kesalahan Tautan dengan Fungsi Matematika D3DX
Fungsi matematika D3DX diimplementasikan secara identik dalam D3DX10 (D3DX10math.h) dan D3DX9 (D3DX9math.h). Ini dapat menyebabkan kesalahan tautan jika proyek menerapkan kode DirectX 9 dan DirectX 10, dan mencoba menautkan fungsi dari satu header dengan pustaka yang berlawanan.
Untuk menghilangkan masalah menyertakan kedua header, D3DX10math.h menyertakan #define berikut:
#ifndef __D3DX9MATH_H__
#define __D3DX9MATH_H__
Untuk menghilangkan kemungkinan kesalahan tautan, sampel DX SDK ditautkan ke pustaka D3DX9 terlebih dahulu (D3DX9d.lib dan D3DX9.lib) lalu pustaka D3DX10 kedua (D3DX10d.lib dan D3DX10.lib). Pengaturan ini berada di bawah Proyek/Properti jika Anda menggunakan Visual Studio.
Topik terkait