1
我想學習使用OpenGL。我在使用glm :: perspective時遇到問題。每當我將它放入變換矩陣中時,窗口中都不會顯示任何內容。我究竟做錯了什麼?如何在GLM中使用透視圖?
shader代碼:
//vertex shader
#version 450 core
layout (location = 0)
in vec3 position;
uniform mat4 transform;
void main(){
gl_Position =transform*vec4(position.xyz, 1.0);
}
代碼,確定什麼樣的價值勻變速(變換)等於:
glm::mat4 transform;
transform = glm::perspective(45.0f, (float)900/(float)600, 0.1f, 100.0f);
transform = glm::translate(transform, glm::vec3(cos(time)/2, sin(time)/2,0.0f));
transform = glm::rotate(transform(GLfloat)time, glm::vec3(sin(time), cos(time*2), 0.0f));`
它正常工作,直到我把GLM ::角度部分在那裏。那麼它在窗口中根本不顯示。
你試圖渲染什麼位置?鑑於您的視角矩陣,您確定它們*應該*可見嗎? –
作爲一個良好的習慣,在原點處繪製一個單位立方體作爲參考。讓它以透視的方式呈現,其他人則會更容易。 – prabindh