수학 함수(Direct3D 10 그래픽)
참고
D3DX10 유틸리티 라이브러리는 더 이상 사용되지 않습니다. 대신 DirectXMath 를 사용하는 것이 좋습니다.
D3DX 유틸리티 라이브러리에서 제공하는 수학 라이브러리는 3D 수학 연산을 계산하는 함수를 제공합니다. 각 함수는 전달된 [in] 및 반환된 [out] 매개 변수와 동일한 개체를 사용할 수 있습니다. 또한 출력 매개 변수는 일반적으로 반환 값으로 반환되므로 한 수학 함수의 출력을 다른 수학 함수의 매개 변수로 사용할 수 있습니다.
- 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
D3DX 수학 함수를 사용하여 링크 오류 해결
D3DX 수학 함수는 D3DX10(D3DX10math.h) 및 D3DX9(D3DX9math.h)에서 동일하게 구현됩니다. 프로젝트에서 DirectX 9 및 DirectX 10 코드를 모두 구현하고 한 헤더의 함수를 반대 라이브러리와 연결하려고 하면 링크 오류가 발생할 수 있습니다.
두 헤더를 모두 포함하는 문제를 제거하기 위해 D3DX10math.h에는 다음 #define 포함됩니다.
#ifndef __D3DX9MATH_H__
#define __D3DX9MATH_H__
가능한 링크 오류를 제거하기 위해 DX SDK 샘플은 먼저 D3DX9 라이브러리(D3DX9d.lib 및 D3DX9.lib)와 D3DX10 라이브러리 두 번째(D3DX10d.lib 및 D3DX10.lib)에 연결됩니다. Visual Studio를 사용하는 경우 이러한 설정은 프로젝트/속성 아래에 있습니다.
관련 항목