2013-01-14 58 views
2

我正在尋找一個高性能庫,可以得出大量的(10的或十萬甚至100的)的相對簡單的矢量形狀(圓形,弧形或圓角矩形)的可視化2D圖形佈局。高性能的OpenGL的2D圖形動畫庫

我想只能夠傳輸的動畫啓動和停止的幾何形狀,然後在「重生」在GPU上的內插動畫。

在我想通過簡單地從0通常更新全局插值參數爲1。

從CPU到GPU的數據量最小化每幀正如我想此基礎上的OpenGL相信頂點緩存對象( VBO)是我應該選擇的。

我選擇的語言是C++ 11,我的平臺是Ubuntu 12.10。

如果能夠與形狀一起層高質量的文本是一大利好。

您應該推薦哪些庫/ API?

我相信oglplus是一個不錯的選擇,但我不知道,如果它太低級了我的任務。

回答

5

如果您在OpenGL是一個初學者,你會打沿路一些顛簸。這是完全可行的,但它需要一些先進的詭計。您需要

  • 實例化
  • 基於值的頂點着色器,你從「紋理」獲取控股動畫控制點,每個實例的ID
    • 和曲線插補索引到更多的工作
    • 曲線插補複雜的運動,你必須能夠將曲線分割成片段(或補丁)並將其編入索引。

你至少應該知道如何繪製簡單的形狀與OpenGL和如何處理實例化之前寫一個頂點着色器。這並不難,但第一次做這件事通常會給出奇怪的結果,因爲你錯過了一些索引。

你應該推薦什麼庫/ API的?

我建議先學習所需的智力工具,這樣使用這樣的圖書館不會在貨物崇拜編程中結束。

需要

  • 線性代數
  • 多元微積分
  • 非線性插值
    • 多項式
    • 貝塞爾樣條
  • 四元數(對於球形線性插值)
1

超出了已在這裏說則已,如果您定位的NVidia顯卡,你應該看看NVidia path extension。它基本上可以讓你加載和渲染上GPU的矢量圖形直接與三角etc.The下跌沒有必要這裏是你應該使用固定管道進行這個過程(如果使用現代OpenGL設置配置文件的兼容性)。但優點是易於使用和解決方案的獨立性。

+0

這裏的固定管道是否意味着對象一旦在GPU上就不能轉換(移位或旋轉)對象?如果不是,那是什麼意思? –