0
A
回答
0
簡而言之,您可以通過修改模型視圖矩陣來移動對象。這可以通過幾種方式來完成,這取決於您的編碼偏好以及您可用的opengl驅動程序版本。
這裏的一些部分代碼,讓你在正確的方向開始:
以下是在OpenGL棄用3.0+(但即便如此,它仍然是通過相容性分佈可用)。
// you'll need a game loop to make some opengl calls each frame
while(!done)
{
// clear color buffers, depth buffers, etc
initOpenglFrame();
glPushMatrixf();
glTranslatef(obj->getX(), obj->getY(), obj->getZ());
obj->draw();
glPopMatrixf();
// move the object 0.01 units to the left each tick
obj->setX(obj->getX() + 0.01);
// flush, swap buffers, etc
finishOpenglFrame();
}
對於OpenGL 3.0的超越,glPushMatrixf(),glPopMatrixf(),glTranslatef()函數,以及類似的固定管線接口所有棄用。如果你需要使用OpenGL3.0或更高版本,你會想要做同樣類型的解決方案,但是你需要自己實現矩陣和矩陣堆棧。我認爲這個討論超出了你的問題的範圍。
爲了進一步閱讀,並開始使用OpenGL,我建議你看看nehe.gamedev.net。如果您想開始使用OpenGL 3.X,那麼我建議您購買Opengl Superbible 5th Edition。好書!
0
OpenGL只是通過頂點數據通過一些變換矩陣和柵格化結果。比你必須提供的更高的水平。
相關問題
- 1. 2D OpenGL動畫紋理(Android)
- 2. OpenGL Noob - > 2D動畫
- 3. 如何做Android COCOS-2d Menuitem動畫?
- 4. 如何在OpenGL中移動2D相機
- 5. 在2D動畫surfaceview
- 6. 如何在2D opengl中進行拾取?
- 7. 在OpenGL中播放動畫
- 8. 我該如何在Android中做動畫
- 9. 如何在CSS中做逆向動畫?
- 10. 凹口在MiniCraft中如何做動畫?
- 11. 如何在Android中做'忙'動畫?
- 12. 如何在android中做連續動畫?
- 13. 如何在appcelerator中做動畫imageView?
- 14. 如何在畫面中做動畫?創建動態條形圖
- 15. 如何做羣像動畫?
- 16. JQuery如何做動畫?
- 17. 該動畫如何做?
- 18. 如何做2D矢量移動
- 19. OpenGL 2D移動關係
- 20. OpenGL動畫
- 21. OpenGL門動畫
- 22. Python中的2D動畫
- 23. 石英中的動畫2D
- 24. 2D例如用OpenGL
- 25. Android:如何創建2D動畫
- 26. 如何在opengl中製作一個振動動畫qt
- 27. 在Java中做動畫
- 28. Java Swing 2D動畫
- 29. Delphi 10 2d動畫
- 30. Android的2D動畫
取決於你需要什麼類型的動畫 - 我會考慮將簡單的移動對象作爲轉換矢量,其中每個元素存儲相應幀的轉換,並且您需要的只是將其乘以適當的ProjectionModelviewMatrix。如果您想要獲得比簡單移動物體更高的效果,您可以隨時更改每幀動畫的紋理:您只需處理稱爲精靈片的事物,而不是每個頂點改變紋理座標的變換。 – erjot 2010-09-16 09:09:15