初识OpenGL (-)坐标空间

Posted thefist11

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初识OpenGL (-)坐标空间相关的知识,希望对你有一定的参考价值。

1. 正射投影

step1. 创建一个正射投影矩阵,GLM的内置函数glm::ortho:

glm::ortho(float left, float right, float bottom, float top, float zNear, float zFar);

left: 视口左坐标
right:视口右坐标
bottom:视口下坐标
top:视口上坐标
zNear:近平面
zFar:远平面

eg. glm::ortho(0.0f, 800.0f, 0.0f, 600.0f, 0.1f, 100.0f);

2. 透视(Perspective)

创建一个透视投影矩阵创建了一个定义了可视空间的大平截头体,任何在这个平截头体以外的东西最后都不会出现在裁剪空间体积内,并且将会受到裁剪。

glm::perspective(float fovy, float aspect, float zNear, float zFar);

fovy: 视锥上下面之间的夹角
aspect: 视口宽高比,第三、四个参数分别为近平面和远平面的深度。
zNear:近平面
zFar:远平面

eg. glm::mat4 proj = glm::perspective(glm::radians(45.0f), (float)width/(float)height, 0.1f, 100.0f);

以上是关于初识OpenGL (-)坐标空间的主要内容,如果未能解决你的问题,请参考以下文章

初识OpenGL (-)坐标系统(Coordinate System)

初识OpenGL (-)坐标空间

初识OpenGL (-)坐标空间

初识OpenGL (-)数学基础

初识OpenGL (-)纹理过滤(Texture Filtering)

初识OpenGL (-)纹理过滤(Texture Filtering)