游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1679|回复: 1

请教问题 使用了D3DXMatrixInverse 摄像机的视点变换了 该怎

[复制链接]

4

主题

4

帖子

0

积分

新手上路

Rank: 1

积分
0
发表于 2009-8-10 13:41:00 | 显示全部楼层 |阅读模式
我给摄像机做了自转处理 并将结果存入g_pCameraMat->GetTop()(这是个矩阵) 再用这个D3DXMatrixInverse(&InvCameraMat, NULL, g_pCameraMat->GetTop());算出反矩阵        g_pDevice->SetTransform(D3DTS_VIEW, &InvCameraMat);这样赋给VIEW矩阵 但出现了一个问题:我原先给摄像机设置了位置和朝向 经过反矩阵变换后 摄像机的朝向就变了 有没有办法让他的朝向不变呢? 谢谢!

34

主题

443

帖子

478

积分

中级会员

Rank: 3Rank: 3

积分
478
发表于 2009-8-10 17:01:00 | 显示全部楼层

Re: 请教问题 使用了D3DXMatrixInverse 摄像机的视点变换了 该

pjycs: 请教问题 使用了D3DXMatrixInverse 摄像机的视点变换了 该怎么办?

g_pDevice->SetTransform(D3DTS_VIEW, &InvCameraMat);这样赋给VIEW矩阵但出现了一个问题:我原先给摄像机设置了位置和朝向 经过反矩阵变换后 摄像机的朝向就变了 有没有办法让他的朝向不变呢? 谢谢!

这样摄像当然会变。

这句不需要的吧。。。
g_pDevice->SetTransform(D3DTS_VIEW, &InvCameraMat);

也许该这样
g_pDevice->SetTransform(D3DTS_VIEW, g_pCameraMat->GetTop());

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

本版积分规则

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

GMT+8, 2025-6-21 18:03

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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