[ Architecture ]
- Optimized File Format
-
-Unique Package Approach
-
-OpenGL ES v1.1 Compatible
-
-Written in pure C
[ Architecture ]
- Optimized File Format
-Unique Package Approach
-OpenGL ES v1.1 Compatible
-Written in pure C
[ Tool Chain ]
- Built around Blender (WYSIWYG)
- Exporter & Optimizer
[ Real Time Physic ]
- Rigid Body
- Collision Detection
- Soft Body *
- Particle System
- Fog
[ Texturing ]
- Multi-Texturing
- Texture Filtering
- Anisotropic Filtering
- Transparent
- Semi-Transparent
[ Multimedia & Special Effects ]
- Ambient & FX Sound
- Real 3D Stereo & Surround
- Realtime MP3 Playback
- Realtime MPEG 4 Playback
- Sun *, Flares *, Billboard, Clouds *, etc...
[ Scene Management ]
- Fast Sorting & Culling System
- Event & Trigger System
- Scripting Support (Level & UI)
- Portrait & Landscape Mode
- Touch Screen & Accelerometer
[ Lighting & Shadow ]
- Per-Vertex
- Light Mapping
- Projected Shadow *
- Projected Geometry *
[ Animation ]
- Camera & Object Path *
- Skeletal Animation *
- Keyframe Animation
[ Tutorial 01 ]
Learn how to setup SIO2 for rendering on an iPhone or iPod Touch. It is the most basic example, for beginner you should start here. You will get familiar with the initialization method as well as event callback and drawing in 2D
New Functions: sio2Init, sio2InitGL, sio2InitAL, sio2ErrorGL, sio2ErrorAL, sio2CameraInit, sio2WindowUpdate, sio2CameraSetPerspective, sio2WindowShutdown, sio2ResourceDispatchEvents, sio2WindowEnter2D, sio2WindowLeave2D, sio2ResourceUnloadAll, sio2Shutdown, sio2WindowSwapBuffers, sio2ResourceInit, sio2WindowInit, sio2ResourceFree, sio2WindowFree
[ Tutorial 02 ]
Learn how to use Blender to export 3D models and rendering them into your iPhone or iPod Touch and interact in 3D using the touch screen.
New Functions: sio2ResourceCreateDictionary, sio2ResourceGet, sio2WindowEnterLandscape3D, sio2CameraRender, sio2ResourceRender, sio2WindowLeaveLandscape3D, sio2ResourceOpen, sio2ResourceExtract, sio2ResourceClose, sio2ResourceGenId, sio2OjbectBindAllMatrix, sio2ObjectBindMatrix, sio2ResourceResetState, sio2WindowAddTouch, sio2ResourceDispatchEvents, sio2WindowResetTouch
[ Tutorial 03 ]
Learn how to use textures and multiple UV channels. You can use the technique show in this tutorial to apply texture on your models and use the second texture channel for shadow map.
New Functions: sio2ResourceBindAllImages, sio2ResourceBindAllMaterials, sio2CameraSetPerspective
[ Tutorial 04 + Shadows ]
Start creating a basic 3D world. This tutorial introduce basic camera movements as well as a quick look on how to integrate a sky dome and show you how to use alpha textures, an overview of the material blending mode, screen aligned billboards and axis aligned billboard, material alpha level property, object culling etc... In addition to this tutorial, you can find a technique to add planar shadow to your scene at the cost of an extra rendering pass. Also this tutorial is a good starting point to learn about SIO2 drawing sequences of the sio2ResourceRender function, and is definitely a first step to a brand new world... enjoy!
New Functions: sio2CameraMove, sio2CameraUpdateDir, sio2CameraRotateZ, sio2CameraUpdateFrustum, sio2ResourceCull, sio2MaterialReset, sio2ObjectReset
[ Tutorial 05 ]
Teaches you how render different type of font from texture, and briefly introduce the capabilities of the font system. It also shows you how to manually load textures, materials and fonts as well as printing information on the screen related to the touch position, touch movements, number of taps and accelerometers axis values.
New Functions: sio2FontInit, sio2FontPrint, sio2FontReset, sio2WindowEnter2D, sio2WindowLeave2D, sio2WindowEnterLandscape2D, sio2WindowLeaveLandscape2D, sio2StreamOpen, sio2ImageInit, sio2ImageLoad, sio2ImageGenId, sio2StreamClose, sio2MaterialInit, sio2FontBuild
[ Tutorial 06_1 & Tutorial 06_2 ]
Now that all the basics have been mastered we can start creating decent worlds in 3D. This tutorial introduce the physic system of SIO2 (powered by Bullet), a first person camera with collision, 3D picking, pseudo instancing, collision shapes, physic material properties, how to create a collision map and a simple implementation of a progressive loading screen.
In addition another variant using a separate thread for the physic and culling.
New Functions: sio2PhysicInit, sio2PhysicRender, sio2PhysicSetGravity,
sio2ObjectRender, sio2ObjectReset, sio2Sleep, sio2ResourceBindAllInstances, sio2ResourceBindAllPhysicObjects, sio2PhysicAddCamera, sio2PhysicPlay, sio2ResourceSelect3D, sio2ResourceGet, sio2GetElapsedTime, sio2ThreadInit, sio2ThreadCreate, sio2ThreadPlay, sio2ThreadFree
Email / MSN / Gtalk / AIM contact: sio2interactive@gmail.com, Skype ID: sio2interactive
[ Tutorial 07 ]
This tutorial introduce how to play MPG4 quality video inside your 3D application. As well as basic video control such as play, pause and stop using the touch screen interface. This code sample if ideal for an opening splash screen and should be the code reference to use to integrate your own [Powered by] introduction.
New Functions: sio2VideoGetFrame, sio2WidgetRender, sio2WidgetReset, sio2MaterialFree, sio2WidgetFree, sio2VideoFree, sio2VideoInit, sio2VideoLoad, sio2EnableState, sio2VideoPlay, sio2VideoPause, sio2VideoStop, sio2InitWidget, sio2ShutdownWidget

[ Tutorial 08 ]
In this tutorial Im introducing how to use lights with Blender & SIO2, for demonstration purpose I only use the type Lamp, but all Blender type lights are supported and behave just like in Blender. However you might notice a small difference in the coloring, that is because Blender is using the GL_separate_specular_ext extension which is not available on iPhone and iPod touch, except that difference, you can get a good preview of how your lights are going to look like in the engine from Blender. In addition since theses lights are OpenGL lights, the first 8 light visible and available to the SIO2 resource manager will be rendered, place your lights carefully!
New Functions: sio2MistInit, sio2MistRender, sio2Orbit, sio2LampSetAmbient, sio2LampEnableLight, sio2LampResetLight, sio2MistReset

[ Tutorial 09 ]
This tutorial introduce how to integrate OGG sound into your SIO2 application with the help of Blender. It shows you everything that you need to know to add 3D positional sound or ambient (music) sound and control them at runtime using the SIO2 API. In addition this tutorial demonstrate how to implement a third person camera with collision using the accelerometer as an analog stick to rotate your camera, and uses the touch screen to navigate into 3D space, as well as how to integrate a custom parser callback to retrieve user defined properties set in Blender.
New Functions: sio2InitAL, sio2ShutdownAL, sio2ResourceBindAllSoundBuffers, sio2ResourceBindAllSounds, sio2ResourceSetAmbientVolume, sio2ResourceSetFxVolume, sio2Normalize, sio2CameraUpdateListener

[ Tutorial 10 ]
Finally this tutorial is out there... It introduce how to use LUA with the SIO2, OpenGL and OpenAL API within your application. Please take a good look at the source code as well as the .lua inside the SIO2 archive. Sky is the limit with this technique so make sure that you master it well before you implement scripting within your 3D apps. Watch the video tutorial closely for more info. about how to link scripts to your 3D object and have them executed dynamically at run time.
New Functions: sio2Run, sio2StreamOpenText, sio2ScriptInit, sio2ScriptLoad, sio2ScriptFree, sio2InitLUA, sio2ShutdownLUA

[ Tutorial 11 ]
This tutorial demonstrate how to use the bake.py script that comes with the SDK to bake full render textures or shadow maps. Take a look at the videos to learn how to use this really useful technique within your application to increase the level of realism of your scene.
New Functions: SIO2_IMAGE_FILTERING_TYPE, SIO2_IMAGE_ANISOTROPIC_TYPE

Storage
[ Tutorial 12 ]
Quick introduction to particle system. This demo explain how to dynamically initialize emitter as well as how to control the emitted particles. This tutorial also introduce you how to implement effect such as fire, snow, fountain, smoke and other effects ready to be integrated into your 3D apps.
New Functions: sio2EmitterInit, sio2EmitterResetParticles, sio2EmitterSetupParticles, sio2EmitterBindMatrix, sio2Distance