OpenGL ES 1.1 – ShiVa Engine

OpenGL ES 1.1

Textures, Materials, Shaders

– texture aspect ratio 1:1, textures have to be square and a power of two (e.g. 8×8, 16×16, 64×64; 64×128 f.i. is bad), min size 8×8, max size 1024×1024
– 1 texture per material plus shadow map or 2 textures, blended by “modulate” and “saturate”
– alpha channel is allowed, but not recommended due to performance reasons, better use masks
– texture blending “modulate” and “saturate” only, but only if no shadow map is used (2 texture slot limitation)
– no normal, specular, environment or sphere mapping, no reflection or refraction
– texture clips yes, texture scrolling/scaling modifier accepted, bilinear filtering
– material settings ambient-diffuse-emissive-specular-shinyness, emissive will only act as a constant color not depending on the scene and lights, fog supported

Dynamic Lights and Shadows

– No dynamic shadows allowed. fake dynamic shadows with a flat black (transparent) sprite that lies flat on the ground, if needed.
– The hardware supports up to 8 dynamic lights, 1-2 per oject is the recommended amount. “receive per vertex” is the only accepted setting.


– max particle count per scene depends on the screen size of the particles (alpha blending limitations), max particle count per emitter no more than 256 if you want good performance
– max polys visible at the same time is 7.000 for a good frame rate, but tested with lot more, and it “works” (doesn’t crash)
– max polys per scene is limited to 24Mb Texture + Vertex Buffers memory
– max polys per object depend on the number of visible objects, but again, “less is better”
– no animation limit per anim bank
– up to 16 bones per object, try to limit weighting to 2 bones per vertex
– camera view distance unlimited, but relies on a 16bit z-buffer, so be careful: keep the range as small as possible to avoid Z-fighting

Sounds and Music

– music length is unlimited, but slow, as it’s going to be streamed, better use short sounds (<10s)
– unlimited sounds per sound bank
– format 16bits, mono, 44100 Hz or less (lesser will be faster)

Keys and Input

– Support for accelerometer, mouse and touch handlers with system reserved home, side and volume buttons


– No Application Size Limit, Framerate monitor is limited to 60Hz, any fps value >15 is good.

Need more answers?

  • slackBanner