游戏开发论坛

 找回密码
 立即注册
搜索
查看: 2288|回复: 5

关于d3d中的视矩阵

[复制链接]

3

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
发表于 2004-4-12 15:39:00 | 显示全部楼层 |阅读模式
请问高手:
  在D3D中的SDK中CULL 中.(8.1),在这个函数中CMyD3DApplication::UpdateCamera(Camera* pCamera)
的:
    D3DXQUATERNION qR;
    D3DXQuaternionRotationYawPitchRoll( &qR, pCamera->m_fYaw, pCamera->m_fPitch, 0.0f );
    D3DXMatrixAffineTransformation( &pCamera->m_matOrientation, 1.25f, NULL, &qR, &pCamera->m_vPosition );
    D3DXMatrixInverse( &pCamera->m_matView, NULL, &pCamera->m_matOrientation );

其中Camera的定义如下:
struct Camera
{
    D3DXVECTOR3        m_vPosition;
    D3DXVECTOR3        m_vVelocity;
    FLOAT              m_fYaw;
    FLOAT              m_fYawVelocity;
    FLOAT              m_fPitch;
    FLOAT              m_fPitchVelocity;
    D3DXMATRIX         m_matView;
    D3DXMATRIX         m_matOrientation;
};

请问一下那几句话是什么意思,小弟在这里被卡住了.谢谢了.


3

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
 楼主| 发表于 2004-4-12 15:40:00 | 显示全部楼层

Re:关于d3d中的视矩阵

Cull 为D3D8.1SDK中的一个例子.

10

主题

36

帖子

36

积分

注册会员

Rank: 2

积分
36
发表于 2004-4-12 16:56:00 | 显示全部楼层

Re:关于d3d中的视矩阵

不知道,只知道D3DXQUATERNION 是个四元数,D3DXQuaternionRotationYawPitchRoll是根据绕y,z,x的旋转角度生成一个四元数,D3DXMatrixAffineTransformation是生成一个仿射变换矩阵,不知道仿射是个什么概念,D3DXMatrixInverse是求逆矩阵的吧,这个我知道,线性代数上是这样定义的,A逆*A=E,A逆=A*/|A|,

10

主题

36

帖子

36

积分

注册会员

Rank: 2

积分
36
发表于 2004-4-12 16:57:00 | 显示全部楼层

Re:关于d3d中的视矩阵

d3d我刚看没多久,不知道是不是这样的,我是超级菜鸟,

0

主题

19

帖子

19

积分

新手上路

Rank: 1

积分
19
发表于 2004-4-12 17:19:00 | 显示全部楼层

Re:关于d3d中的视矩阵

D3DXQuaternionRotationYawPitchRoll帮你生成一个旋转向量。在DirectX中,Roll是绕z轴的旋转角度,Yaw是绕y的角度,Pitch是绕x的角度。

D3DXMatrixAffineTransformation其实就是帮你做了Matrix变换的组合:
   OutputMatrix = ScalingMatrix
              * Inverse(RotationCenterTranslationMatrix)
              * RotationMatrix
              * RotationCenterTranslationMatrix
              * TranslationMatrix
物理意义:按比例缩放=>平移坐标原点至你的旋转中心=>旋转=>把坐标原点移回去=>平移

3

主题

5

帖子

5

积分

新手上路

Rank: 1

积分
5
 楼主| 发表于 2004-4-13 10:05:00 | 显示全部楼层

Re:关于d3d中的视矩阵

谢谢大家!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2025-6-30 02:37

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表