学习资料中有一个项目采用了opentk的gamewindow进行编程。在onresize函数写了:
Matrix4 perpective =
Matrix4.CreatePerspectiveFieldOfView(MathHelper.PiOver4, aspect,1,64);
GL.MatrixMode(MatrixMode.Projection);
GL.LoadMatrix(ref perpective);
来设置一个视景体投影矩阵。在之后的onrenderframe()方法中又写了:
Matrix4 lookat = Matrix4.LookAt(0, 0, -7.5f + zoom, 0, 0, 0, 0, 1, 0);
GL.MatrixMode(MatrixMode.Modelview);
GL.LoadMatrix(ref lookat);
第一个矩阵好理解,就是建立投影矩阵,但是第二个矩阵使用lookat创建了一个照相机坐标系的矩阵,再把它设置为模型视图矩阵。这是什么意思?第一个矩阵不就已经包
了视点所在的位置了吗,为什么还要再建立一个视点?
opentk中CreatePerspectiveFieldOfView与lookat的使用
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-