I'm looking for a 2D rendering library as an alternative to CoreGraphics on iPhone. Everything in my app is pretty dynamic, which makes splitting things up into layers and animations rather hard.
I'm quite familiar with OpenGL, and that is how rendering is implemented right now. Everything would be so much easier to expand and development would go so much faster if I didn't have to worry about the low-level stuff in OpenGL, though (And my code would look so much neater :D).
I prefer C++ over Objective-C, so if you know any C++ libraries for rendering, that would be great. I can work with C too. Path-based rendering, like in CoreGraphics or the JavaScript Canvas API, would be beneficial. Would Cairo work on iPhone?
I've actually been working on my own 2D renderer, which I'll probably release even if I don't end up using in my app, because I enjoy working on it. Does the iPhone support the stencil buffer? I can do polygon triangulation, or use GLU's tesselation library, but the stencil buffer would safe a load of work in the long run.
Edit: Also, I've implemented rendering in this app with CoreGraphics before, and it didn't get as good of a frame rate as I'd like. I did some research, and people have suggested not using CoreGraphics for things that are constantly redrawing the screen. Some said CoreGraphics doesn't use the GPU, others said it was some caching mechanism. I've avoided it ever since.
MonkVG is an OpenVG 1.1 like vector graphics API implementation currently using an OpenGL ES backend that should be compatible with any HW that supports OpenGL ES 2.0 which includes most iOS and Android devices.
This is an open source BSD licensed project that is in active development. At the time of this writing it is in a very early pre-release state (very minimal features implemented). Contributors and sponsors welcome.
It can be found at GitHub http://github.com/micahpearlman/MonkVG
Also, there is a SVG and SWF (flash) renderers built on top of MonkVG: