Funciones matemáticas (gráficos de Direct3D 10)
Nota
La biblioteca de utilidades D3DX10 está en desuso. Se recomienda usar DirectXMath en su lugar.
La biblioteca matemática proporcionada por la biblioteca de utilidades D3DX proporciona funciones para calcular operaciones matemáticas 3D. Cada una de las funciones puede tomar el mismo objeto que los parámetros [in] pasados y devueltos [out]. Además, los parámetros out se devuelven normalmente como valores devueltos, de modo que la salida de una función matemática se pueda usar como parámetro para otra función matemática.
- D3DXColorAdjustContrast
- D3DXColorAdjustSaturation
- D3DXCreateMatrixStack
- D3DXCpuOptimizations
- D3DXFloat16To32Array
- D3DXFloat32To16Array
- D3DXFresnelTerm
- D3DXMatrixAffineTransformation
- D3DXMatrixAffineTransformation2D
- D3DXMatrixDecompose
- D3DXMatrixDeterminant
- D3DXMatrixInverse
- D3DXMatrixLookAtLH
- D3DXMatrixLookAtRH
- D3DXMatrixMultiply
- D3DXMatrixMultiplyTranspose
- D3DXMatrixOrthoLH
- D3DXMatrixOrthoRH
- D3DXMatrixOrthoOffCenterLH
- D3DXMatrixOrthoOffCenterRH
- D3DXMatrixPerspectiveFovLH
- D3DXMatrixPerspectiveFovRH
- D3DXMatrixReflect
- D3DXMatrixRotationAxis
- D3DXMatrixRotationX
- D3DXMatrixRotationY
- D3DXMatrixRotationZ
- D3DXMatrixRotationYawPitchRoll
- D3DXMatrixScaling
- D3DXMatrixShadow
- D3DXMatrixTransformation
- D3DXMatrixTransformation2D
- D3DXMatrixTranslation
- D3DXMatrixTranspose
- D3DXPlaneFromPointNormal
- D3DXPlaneFromPoints
- D3DXPlaneIntersectLine
- D3DXPlaneNormalize
- D3DXPlaneTransform
- D3DXPlaneTransformArray
- D3DXQuaternionBaryCéntrico
- 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
- D3DXVec2BaryCéntrico
- D3DXVec2CatmullRom
- D3DXVec2Hermite
- D3DXVec2Normalize
- D3DXVec2Transform
- D3DXVec2TransformArray
- D3DXVec2TransformCoord
- D3DXVec2TransformCoordArray
- D3DXVec2TransformNormal
- D3DXVec2TransformNormalArray
- D3DXVec3BaryCéntrico
- D3DXVec3CatmullRom
- D3DXVec3Hermite
- D3DXVec3Normalize
- D3DXVec3Project
- D3DXVec3ProjectArray
- D3DXVec3Transform
- D3DXVec3TransformArray
- D3DXVec3TransformCoord
- D3DXVec3TransformCoordArray
- D3DXVec3TransformNormal
- D3DXVec3TransformNormalArray
- D3DXVec4BaryCéntrico
- D3DXVec4CatmullRom
- D3DXVec4Cross
- D3DXVec4Hermite
- D3DXVec4Normalize
- D3DXVec4Transform
- D3DXVec4TransformArray
Resolución de errores de vínculo con funciones matemáticas D3DX
Las funciones matemáticas D3DX se implementan de forma idéntica en D3DX10 (D3DX10math.h) y D3DX9 (D3DX9math.h). Esto puede provocar errores de vínculo si un proyecto implementa código directX 9 y DirectX 10 e intenta vincular una función de un encabezado con la biblioteca opuesta.
Para eliminar el problema de incluir ambos encabezados, D3DX10math.h incluye los siguientes #define:
#ifndef __D3DX9MATH_H__
#define __D3DX9MATH_H__
Para eliminar posibles errores de vínculo, los ejemplos del SDK de DX vinculan primero a las bibliotecas D3DX9 (D3DX9d.lib y D3DX9.lib) y, a continuación, las bibliotecas D3DX10 segundo (D3DX10d.lib y D3DX10.lib). Esta configuración se encuentra en Proyecto/Propiedades si usa Visual Studio.
Temas relacionados