float4x4 make_float4x4_billboard(float3 const& objectPosition, float3 const& cameraPosition, float3 const& cameraUpVector, float3 const& cameraForwardVector) |
使用右手坐标系创建围绕指定对象位置旋转的球面广告牌。 |
float4x4 make_float4x4_?constrained_billboard(float3 const& objectPosition, float3 const& cameraPosition, float3 const& rotateAxis, float3 const& cameraForwardVector, float3 const& objectForwardVector) |
使用右手坐标系创建绕指定轴旋转的柱形广告牌。 |
float4x4 make_float4x4_translation(float3 const& position) |
创建平移矩阵。 |
float4x4 make_float4x4_translation(float xPosition, float yPosition, float zPosition) |
创建平移矩阵。 |
float4x4 make_float4x4_scale(float xScale, float yScale, float zScale) |
创建以原点为中心的缩放矩阵。 |
float4x4 make_float4x4_scale(float xScale, float yScale, float zScale, float3 const& centerPoint) |
创建以指定点为中心的缩放矩阵。 |
float4x4 make_float4x4_scale(float3 const& scales) |
创建以原点为中心的缩放矩阵。 |
float4x4 make_float4x4_scale(float3 const& scales, float3 const& centerPoint) |
创建以指定点为中心的缩放矩阵。 |
float4x4 make_float4x4_scale(float scale) |
创建以原点为中心的缩放矩阵。 |
float4x4 make_float4x4_scale(float scale, float3 const& centerPoint) |
创建以指定点为中心的缩放矩阵。 |
float4x4 make_float4x4_rotation_x(float radians) |
创建以原点为中心的 x 轴旋转矩阵。 |
float4x4 make_float4x4_rotation_x(float radians, float3 const& centerPoint) |
创建以指定点为中心的 x 轴旋转矩阵。 |
float4x4 make_float4x4_rotation_y(float radians) |
创建以原点为中心的 y 轴旋转矩阵。 |
float4x4 make_float4x4_rotation_y(float radians, float3 const& centerPoint) |
创建以指定点为中心的 y 轴旋转矩阵。 |
float4x4 make_float4x4_rotation_z(float radians) |
创建以原点为中心的 Z 轴旋转矩阵。 |
float4x4 make_float4x4_rotation_z(float radians, float3 const& centerPoint) |
创建以指定点为中心的 Z 轴旋转矩阵。 |
float4x4 make_float4x4_from_axis_angle(float3 const& axis, float angle) |
创建围绕任意向量旋转的矩阵。 |
float4x4 make_float4x4_perspective_field_of_view(float fieldOfView, float aspectRatio, float nearPlaneDistance, float farPlaneDistance) |
使用右手坐标系基于视野创建透视投影矩阵。 |
float4x4 make_float4x4_perspective(float width, float height, float nearPlaneDistance, float farPlaneDistance) |
使用右手坐标系创建透视投影矩阵。 |
float4x4 make_float4x4_perspective_off_center(float left, float right, float bottom, float top, float nearPlaneDistance, float farPlaneDistance) |
使用右手坐标系创建自定义透视投影矩阵。 |
float4x4 make_float4x4_orthographic(float width, float height, float zNearPlane, float zFarPlane) |
使用右手坐标系创建正交投影矩阵。 |
float4x4 make_float4x4_?orthographic_off_center(float left, float right, float bottom, float top, float zNearPlane, float zFarPlane) |
使用右手坐标系创建自定义正交投影矩阵。 |
float4x4 make_float4x4_look_at(float3 const& cameraPosition, float3 const& cameraTarget, float3 const& cameraUpVector) |
使用右手坐标系创建视图矩阵。 |
float4x4 make_float4x4_world(float3 const& position, float3 const& forward, float3 const& up) |
使用右手坐标系创建世界矩阵。 这可用于在 3D 空间中定位对象。 |
float4x4 make_float4x4_from_quaternion(quaternion const& quaternion) |
从四元数创建旋转矩阵。 |
float4x4 make_float4x4_from_yaw_pitch_roll(float yaw, float pitch, float roll) |
从指定的偏航、俯仰和滚动创建旋转矩阵。 |
float4x4 make_float4x4_shadow(float3 const& lightDirection, plane const& plane) |
创建将几何图形平展到指定平面中(如同从指定光源进行投影)的矩阵。 |
float4x4 make_float4x4_reflection(plane const& value) |
创建围绕指定平面反射坐标系统的矩阵。 |
bool is_identity(float4x4 const& value) |
检查这是否是标识矩阵。 |
float determinant(float4x4 const& value) |
计算矩阵的行列。 |
float3 translation(float4x4 const& value) |
获取矩阵的转换向量。 |
bool invert(float4x4 const& matrix, _Out_ float4x4* result) |
计算矩阵的反数。 如果矩阵可以反转,则返回 true;否则为 false。 |
bool decompose(float4x4 const& matrix, _Out_ float3* scale, _Out_ quaternion* rotation, _Out_ float3* translation) |
从 3D 缩放/旋转/平移 (SRT) 矩阵中提取标量、平移和旋转组件。 如果矩阵可以分解,则返回 true;否则为 false。 |
float4x4 transform(float4x4 const& value, quaternion const& rotation) |
通过应用四元数旋转来转换矩阵。 |
float4x4 transpose(float4x4 const& matrix) |
将矩阵的分量沿其对角线转置。 |
float4x4 lerp(float4x4 const& matrix1, float4x4 const& matrix2, float amount) |
在两个矩阵的对应值之间线性内插。 |