比如我拿到的是一个如下所示的数组,他表示为一个正方形,坐标是世界坐标;
float vertices[] = {
// positions
5.0f, 5.0f, 0.0f,
5.0f, -5.0f, 0.0f,
-5.0f, -5.0f, 0.0f,
-5.0f, 5.0f, 0.0f,
};
而我想要将这个坐标最终绘制到屏幕上,需要经过 model、view、project变换;
但是这个过程我该如何用代码实现,将其转换为如下所示的,能够让opengl绘制的归一化坐标?
0.5f, 0.5f, 0.0f,
0.5f, -0.5f, 0.0f,
-0.5f, -0.5f, 0.0f,
-0.5f, 0.5f, 0.0f,
我看了https://learnopengl-cn.github.io/01%20Getting%20started/08%20Coordinate%20Systems/这个教程里面说的,看他的代码还是没有太明白opengl是如何使用他自己的函数实现的坐标转换最终绘制到屏幕上的?
代码地址:https://learnopengl.com/code_viewer_gh.php?code=src/1.getting_started/6.1.coordinate_systems/coordinate_systems.cpp