SIO2: OpenGL Free Open Source 3D Engine For iPhone And iPod Touch






SIO2 is an engine based on OpenGL ES 1.1 and most of the code is written in C. Other technologies like OpenAL (sound), LUA (scripting) or Bullet (physics) are also used.

Want to see a SIO2 code snippet? Just ask to Geeks3D. Here is the SIO2 initialization routine:

void sio2InitGL( void )
{
  glEnable(GL_DEPTH_TEST);
  glDepthFunc(GL_LEQUAL);
  glEnable(GL_CULL_FACE);
  glCullFace(GL_BACK);
  glFrontFace(GL_CCW);
  glShadeModel(GL_SMOOTH);
  glHint(GL_PERSPECTIVE_CORRECTION_HINT, GL_NICEST);
  glHint(GL_GENERATE_MIPMAP_HINT, GL_NICEST);
  glHint(GL_LINE_SMOOTH_HINT, GL_NICEST);
  glHint(GL_POINT_SMOOTH_HINT, GL_NICEST);
  glHint(GL_FOG_HINT, GL_NICEST);
  glTexEnvi(GL_POINT_SPRITE_OES, GL_COORD_REPLACE_OES, 
               GL_TRUE);
  glGetFloatv(GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT, 
                  &sio2->maniso); 	
  glEnableClientState(GL_VERTEX_ARRAY);
  printf("\nGL_VENDOR: %s\n", 
          (char *)glGetString(GL_VENDOR));
  printf("GL_RENDERER: %s\n"  , 
          (char *)glGetString(GL_RENDERER));
  printf("GL_VERSION: %s\n"  , 
         (char *)glGetString(GL_VERSION));
  printf("GL_EXTENSIONS: %s\n"  , 
         (char *)glGetString(GL_EXTENSIONS));
  #ifdef SIO2_DEBUG_GL
    sio2ErrorGL( __FILE__, __FUNCTION__, __LINE__ );
  #endif
}

2 thoughts on “SIO2: OpenGL Free Open Source 3D Engine For iPhone And iPod Touch”

  1. ircd

    Hi,

    How well does this perform, is it fast enough to make good looking games that respond quickly to user input?

  2. ircd

    Hi,

    How well does this perform, is it fast enough to make good looking games that respond quickly to user input? – Ive seen my ipod touch struggle to even run emulation of a NES.

Comments are closed.