深入:图形学+数学

发布时间 2023-11-10 18:00:33作者: jialiangzai
// 问题:只使用 vec4(position, 1.0) 设置顶点坐标出问题(世界坐标->设备坐标->屏幕坐标)显示太大
// 解决:转换过程中需要一些矩阵算法的参与
// 模型矩阵:用在位移,旋转,缩放时,本地坐标 -> 世界坐标 modelMatrix (内置变量)
// 视图矩阵:世界坐标 -> 设备坐标 viewMatrix
// 投影矩阵:设备坐标 -> 屏幕坐标 projectionMatrix
// 注意:projectionMatrix 一定要在前面

 vertexShader: `
void main() {
  gl_Position = projectionMatrix * viewMatrix * modelMatrix * vec4(position, 1.0);
}
`,