我想基於粒子模擬渲染OpenGL中的火焰效果。我有數百個具有位置和溫度(以及顏色)的粒子以及所有其他屬性。使用過剩只是簡單地渲染solidSphere
看起來不太現實,因爲這些粒子散佈得太寬。如何根據粒子信息繪製火焰?在OpenGL中渲染火
5
A
回答
5
如果你只是想創造一種逼真的火焰效果,我會用某種在其他答案中推薦的重新存在的圖書館。但在我看來,你是在模擬顯示之後。
一個值得嘗試的直接解決方案可能是用廣告牌(即總是朝向相機的圖形圖像)替換當前的球體,它們在中間呈現純白色,並且向邊緣逐漸變淡 - 顯然根據圖像對圖像進行定位和着色到你的粒子。
我覺得一個更好的解決方案是將火焰作爲一組二維網格,在其上可以控制網格上每個頂點的透明度和顏色。人們可以在OpenGL中通過從四邊形構建一個平面並使用您的粒子系統來計算(通過從您擁有的最近粒子插值)每個頂點的顏色和透明度。 OpenGL將爲您插入頂點之間的每個像素,併爲您提供平滑的「區域中的平均粒子」圖片。
5
您可能需要使用粒子系統來呈現火焰效果,這裏是如何做到這一點一訥河教程:http://nehe.gamedev.net/data/lessons/lesson.asp?lesson=19
+0
我不想使用現有的粒子系統,因爲我想了解它們是如何工作的;-) – Etan 2010-12-15 15:01:35
相關問題
- 1. 在opengl中渲染迷宮
- 2. openGL渲染glulookat
- 3. OpenGL分層渲染只渲染零點
- 4. Unity OpenGL渲染器
- 5. Opengl渲染順序
- 6. OpenGL渲染紋理
- 7. 渲染使用OpenGL
- 8. OpenGL全屏渲染
- 9. OpenGL渲染故障
- 10. OpenGL停止渲染
- 11. Java Opengl 3D渲染
- 12. OpenGL在矩形內渲染
- 13. OpenGL ES:在渲染時glFrustrum
- 14. 如何在opengl es android中直接渲染VR渲染?
- 15. 在VB中渲染OpenGL中的人羣
- 16. 在opengl中渲染1000多個圖形
- 17. 在Python/OpenGL中渲染數學符號?
- 18. 在OpenGL ES中渲染紋理
- 19. 在qtquick 2.0中渲染自定義opengl
- 20. opengl不要在渲染中調用glClear()
- 21. 在OpenGL中渲染矢量圖形?
- 22. 在OpenGL中渲染多個對象
- 23. 在WC_TABCONTROL中渲染OpenGL畫布
- 24. 如何在OpenGL中渲染3D文字?
- 25. 如何在opengl中渲染橫截面
- 26. 在Opengl中渲染。重疊對象
- 27. 在OpenGL中渲染一個立方體
- 28. 在OpenGL中渲染B樣條曲線
- 29. 在OpenGL中渲染.ply文件
- 30. OpenGL在輔助線程中渲染
聽起來像你需要內插,或找到一些方法,爲你做到這一點? – ccook 2010-12-15 13:10:47
是的,我正在尋找一種方法在openGL中進行插值,因爲我還不是很熟悉它。某種固體動力學模型可能......透明度對於在邊緣上進行逼真的火焰也很重要 – Etan 2010-12-15 13:16:14