确实改变了等效于乘以比例矩阵的视场? [英] does change the field of view equivalent to multiply by scale matrix?

查看:115
本文介绍了确实改变了等效于乘以比例矩阵的视场?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用透视图确实会改变视场等于乘以比例矩阵?

通常我认为改变视场是很自然的。 / p>

解决方案


越远的对象越小,这就是为什么内部透视矩阵是测角函数的原因。顺便说一句。 OpenGL gluPerspective 非常不准确 cotan 导致问题,当您尝试将更多透视视图重叠在一起时并且还会扭曲视图,因此您有时可能会看到背后的角落或看到无法看到您的物体......如果您将它们替换为精确的物体,那么突然一切正常:)





另一方面,比例矩阵在对角线上只有非零常数(un)在整个Z范围内不断地放大视图...

[edit1]如果更改视场它可能看起来像你应用 x,y 比例尺,但是 Z 坐标是不同的......所以如果你使用比例而不是应用新的透视图,那么图像可能看起来是相同的,但Z坐标将与原始视图中的坐标相同,因此所有的Z坐标依赖操作都会得到错误从这一点



在另一个呃言词投影和缩放不一样。欲了解更多信息,请参阅


Using perspective view, does change the field of view equal to multiplying by scale matrix?

Usally I think it is much natural to change the field of view.

解决方案

No because in Perspective Projection scale is different for different distances

The more distant object is the less scale it has that is why inside perspective matrix are goniometric functions. Btw. OpenGL gluPerspective has very inaccurate cotan causing problems when you try to overlap more perspective views together and also distorts the view so you can sometimes look behind corner or see object that can not see you ... If you replace them by precise ones then suddenly all is OK :)

On the other hand scale matrix has just nonzero constants on the diagonal which just (un)Zoom the view constantly on whole Z range ...

[edit1] If you change field of view

it may look like you applied x,y scale but the Z coordinates are different... so if you use scale instead of applying new perspective then image may seem the same but Z-coordinates will be the same as in original view hence all Z-coordinate depending operations get wrong from that point

In other words Projection is not the same as Scaling. For more info see

这篇关于确实改变了等效于乘以比例矩阵的视场?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆