Compartilhar via


Funções matemáticas (elementos gráficos Direct3D 10)

Nota

A biblioteca do utilitário D3DX10 foi preterida. Recomendamos que você use DirectXMath.

 

A biblioteca matemática fornecida pela biblioteca do utilitário D3DX fornece funções para calcular operações matemáticas 3D. Cada uma das funções pode usar o mesmo objeto que os parâmetros passados [in] e retornados [out]. Além disso, os parâmetros externos normalmente são retornados como valores retornados, de modo que a saída de uma função matemática possa ser usada como um parâmetro para outra função 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
  • 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

As funções matemáticas D3DX são implementadas de forma idêntica em D3DX10 (D3DX10math.h) e D3DX9 (D3DX9math.h). Isso poderá causar erros de link se um projeto implementar o código DirectX 9 e DirectX 10 e tentar vincular uma função de um cabeçalho com a biblioteca oposta.

Para eliminar o problema de incluir ambos os cabeçalhos, d3DX10math.h inclui o seguinte #define:

#ifndef __D3DX9MATH_H__
#define __D3DX9MATH_H__

Para eliminar possíveis erros de link, os exemplos do SDK DX vinculam primeiro às bibliotecas D3DX9 (D3DX9d.lib e D3DX9.lib) e, em seguida, às bibliotecas D3DX10 em segundo (D3DX10d.lib e D3DX10.lib). Essas configurações estarão em Project/Properties se você estiver usando o Visual Studio.

Funções D3DX