首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网络游戏 >

观察坐标系中摄像机Z轴位置和定义的顶点Z轴位置搞不懂,初学者有关问题

2012-02-19 
观察坐标系中摄像机Z轴位置和定义的顶点Z轴位置搞不懂,菜鸟问题。观察坐标系中摄像机Z轴位置和定义的顶点Z

观察坐标系中摄像机Z轴位置和定义的顶点Z轴位置搞不懂,菜鸟问题。
观察坐标系中摄像机Z轴位置和定义的顶点Z轴位置搞不懂,怎么感觉和左手坐标系矛盾啊。

观察坐标系中摄像机Z轴位置和定义的顶点Z轴位置搞不懂,怎么感觉和左手坐标系矛盾啊。
我的程序:
D3DXMatrixPerspectiveFovLH(&toushi, 45.0f, 640/480,0.1f, 10000.0f);//这样设置看的应该够远的了
...
D3DXVECTOR3 vEyePoint(0.0f,0.0f,301.0f);//摄像机的位置Z轴暂时定在301
...

{-150.0f, -150.0f, 300.0f, D3DCOLOR_XRGB(255,255,0)},//顶点数据的Z轴都是300
{150.0f, -150.0f, 300.0f, D3DCOLOR_XRGB(255,0,0)},
{0.0f, 150.0f, 300.0f, D3DCOLOR_XRGB(0,0,255)}

按照左手坐标系Z轴正方向朝屏幕里,但是这里我无法理解的是:当摄像机位置Z轴大于300.0f时才可以看到三角形,无法理解,如果大于三角形顶点Z的300.0f坐标,那这个摄像机不是跑到顶点的后面去了即屏幕的更里面,并且摄像机朝着Z方向,那这个摄像机是怎么拍下三角形定点的啊。按我的理解摄像机应该是要在定点前面就是摄像机Z轴应该小于定点Z的300.0f,但是现在是只要比300小就完全看不到三角形。我哪里理解错了,救命提点一下啊大侠。



[解决办法]
绕昏了吧。首先你屏幕的位置就是摄像机的位置。你那个摄像机z比三角形大是相对于世界坐标系的原点说的,所以不存在摄像机比屏幕靠里的问题。摄像机是和屏幕重合的。

像你这组数据,摄像机其实是在301处向300处看,摄像机的视线是世界坐标系的-z轴方向,但是永远是相机坐标系的+z轴方向。

当你搞清楚你说的坐标到底是哪个坐标系,就好理解了

热点排行