0
我有問題。 是否有可能擁有兩個頂點着色器。人們將在2D中查看頂點,在3D中查看頂點。 目前我的程序有2D視圖。 2d和3d頂點之間唯一的區別是,3dc中的vec2(x,y)將會是vec3(x,y,z)。所以我想發送到GPU vec3並設置gl_Position.z = 0;Opengl在2D或3D中顯示頂點
我最大的問題是我選glm的幻數:lookat和glm :: perspective。如果我看到它的意思就是說它有效。所以當我有2D和3D視圖時,一切都看起來很糟糕。 我可以移動相機,這樣做3d和相機的位置改變只會不會工作。
嗯,但我會有問題。因爲如果添加hight(z)。即使我在放大地圖前設置視圖,我會看到這不是2D。 – Luffy
@Luffy:你可以隨時切換到正射投影,如果你需要一個。您可能將您的投影矩陣設置放置在重塑處理程序中。我建議你將調用glViewport和投影設置移動到顯示處理程序。你可以多次打電話給他們。使用glViewport + glScissor將窗口變成多個窗格。 – datenwolf
我沒有重塑處理程序,但我會嘗試閱讀關於此。我正在以簡單的方式做這件事,我計算x,y繪製它們。我只使用本教程中的內容http://www.opengl-tutorial.org/beginners-tutorials/tutorial-6-keyboard-and-mouse/ – Luffy