我正在尋找一個2D渲染庫作爲iPhone上CoreGraphics的替代品。我的應用程序中的所有內容都非常具有動態性,這使得分層和動畫變得相當困難。CoreGraphics的替代?
我對OpenGL非常熟悉,這就是現在如何實現渲染。但是,如果我不必擔心OpenGL中的低層次的東西,所有東西都可以更容易地擴展,開發速度會更快,而且(我的代碼看起來更整潔:D)。
我更喜歡C++而不是Objective-C,所以如果你知道任何用於渲染的C++庫,那就太棒了。我也可以和C一起工作。基於路徑的渲染,如CoreGraphics或JavaScript Canvas API,將會是有益的。開羅會在iPhone上工作嗎?
我實際上一直在研究我自己的2D渲染器,即使我最終沒有在我的應用程序中使用,我也可能會發布它,因爲我喜歡它。 iPhone是否支持模板緩衝區?我可以做多邊形三角測量,或者使用GLU的tesselation庫,但是模板緩衝區可以長期安全地完成一些工作。
編輯:此外,我已經在此應用程序中使用CoreGraphics實現了渲染,並且它沒有像我期望的那樣得到幀速率的好。我做了一些研究,有人建議不要使用CoreGraphics來不斷重繪屏幕。有人說CoreGraphics不使用GPU,有人說這是一些緩存機制。自那以後我就避免了它。
出於好奇,你有什麼不想使用Core Graphics的原因?只是事實上,它分爲幾層? – 2010-12-16 23:05:59
哦,對。我忘了把它放在我的文章中... – vedosity 2010-12-16 23:07:55
是的,Core Graphics確實渲染了在GPU上緩存爲矩形紋理的矢量繪圖。這個渲染過程相當緩慢,但我認爲你會發現有人在性能上擊敗了蘋果公司,而缺乏完全在OpenGL ES中工作的庫。作爲一個權宜之計,你看過CAShapeLayer,它可以製作矢量圖形的動畫:http://tumbljack.com/post/179975074/complex-interpolation-with-cashapelayer-free? – 2010-12-16 23:35:57