Hey,
About two weeks ago, I checked out the only two free 3D game engines for the iPhone: Oolong and Sio2. While they have quite a few nice features I actually gave up on Sio2 when trying to have a camera moving around a point and loading and destroying single objects into an already loaded level and on Oolong even before rendering anything except the nice examples.
So, as both was too complicated for me I decided to make it easier and write an engine myself.
It is still at a very early stage, but till now very well progressing.
It is far not optimized yet and just a graphics engine for now and I have some doubts about my design (which works well so far and will most probably stay similar, it just isn´t perfect yet ;)).
However, what it supports so far is rendering with OpenGL ES 1.1 and OpenGL ES 2.0. It is possible to load .3ds files, set all kind of material parameters and has an in my opinion good shader system.
For textures .png and .jpg is supported and it is possible to display textures as 2D objects as well as rendering text from bitmap fonts.
So far only 8 lights are supported and there isn´t any scene management yet.
The next features I will implement are animations and object specific functions, so that it is hopefully usable for a first simple game this weekend, I am going to create wink.



The second image is rendered with my iphones emulated fixed function pipeline, while the third is rendered with my own default shader. As you see, there is still something wrong with the ambient term (Edit: I found some global multiplicator in the fixed function pipeline which I just disabled as it doesn´t fit into my system and it looks exactly the same with both OpenGl Version now :)). The third on the other hand also shows a custom shader, as one can easily see on the green color, which changes over time. The one frame fps difference btw doesn´t mean anything as it of course runs stable at 59-60fps.

I am trying to keep Source Forge up to date with the projects state here: http://isdge.sf.net