OpenGL 统一变量uniform
生活随笔
收集整理的這篇文章主要介紹了
OpenGL 统一变量uniform
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
OpenGL統一變量uniform
- OpenGL統一變量uniform簡介
- 源代碼剖析
- 主要源代碼
OpenGL統一變量uniform簡介
在本課中,我們將介紹著色器中的一種新型變量 - uniform 變量。屬性和 uniform 變量之間的區別在于,該屬性存儲頂點指定的數據,因此它們從頂點緩沖區接收新值,而對于每個著色器調用,uniform 變量的值自調用呈現時保持不變。這意味著您需要在調用呈現函數之前指定一個值,并且每次調用頂點著色器時,您將獲得相同的值。Uniform 變量可用于存儲數據,如光源參數(光源位置、方向等)、矩陣變換、指向紋理對象的指針等。
在本教程中,我們終于在屏幕上得到了一些移動。為此,我們使用一個統一變量的組合,我們將更改每個幀的值,以及 GLUT 為我們提供的惰性函數。關鍵是,GLUT 不會定期調用我們的渲染函數,而只是根據需要調用我們的渲染函數。GLUT 僅在收到事件(如窗口折疊)或窗口被另一個窗口關閉后才調用渲染函數。但是,如果我們在應用程序啟動后沒有收到對窗口計劃的更改,則渲染功能將只調用一次。您可以通過將 printf 調用添加到渲染函數來測試這一點。每次折疊/展開窗口時,您只會看到輸出一次又一次。現在,使用回調函數從過去的課程渲染將不再適合,因為我們需要更改變量的值。為此,我們使用惰性回調函數。即使未發生任何事件,GLUT 也會導致惰性函數。您可以使用另一個函數進行此調用,
總結
以上是生活随笔為你收集整理的OpenGL 统一变量uniform的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 中国农业发展银行是国企还是央企
- 下一篇: OpenGL的移动