每帧需要更新哪些矩阵,哪些需要[关闭]?

问题描述 投票:0回答:1
我有3个矩阵。模型矩阵,视图矩阵和投影矩阵。除非更新我的视野,否则投影矩阵不会改变,所以我每次渲染时都需要重新计算该矩阵吗?我知道视图矩阵确实必须更新。

而且,对于我的Mesh类中的多个对象,每个对象都应该有一个模型矩阵吗?这是代表其在世界上地位的矩阵吗?实施完之后,我将做一个摄影课。从理论上讲,它只需要返回一个视图矩阵,对吧?

c++ math opengl matrix glm-math
1个回答
0
投票
模型矩阵是世界上特定模型或对象的变换(位置,旋转等)。仅在更改其变换时才需要更新它。

视图矩阵是代表对整个世界的视图的变换,换句话说就是“相机”的变换。仅在更改视图(移动,旋转“相机”等)时才需要更新它。

投影矩阵表示投影。仅当您想要更改视野或近点和远点之类的内容时,才需要更新它。

渲染场景时,将所有三个矩阵按正确的顺序相乘得到最终的MVP矩阵。这意味着您可以独立更改它们,而不必在更改时更改每个对象的矩阵。视图或投影。

© www.soinside.com 2019 - 2024. All rights reserved.