Imagination PowerVR SDK Blog

OpenGL ES 2.0 (Cubes demo)


Hi, I have recently come across this beautiful demo and was wondering whether the code to it is available, preferably as a Xcode project. I couldn’t find it among 3.1 SDK examples. According to the video description (PowerVR Series5XT), it should run on some older Apple devices sporting A4 chips and definitely on newer Apple devices with A5 chips (reference wikipedia). I have tried to render 10000 simple-shaded cubes on an iPhone 4S and it was not pleasant. I should mention that I haven’t used neon instructions, nor instance rendering that is rare in implementation on ES 2.0.




this demo from POWERVR is very nice indeed.

i am a but surprise about the 10.000 cube bad experience you had, did you have any occlusion technique +fast fustrum filtering ?

in the documentation there is a document called 3D Navigation Rendering Techniques.Whitepaper.pdf that is quite helpfull…




As I mentioned, they are a bunch of simple-shaded cubes with no normals stored in their vertexBuffers to save space in the memory, hence no culling enabled either. The unpleasant experience comes from lack of enough memory to store all 10000 cubes. The demo I referred to does not seem to have any issue rendering quite a lot more than 10000 cubes though, I wonder how. Perhaps it handles individual cubes as particles.



The Cubes demo is produced by our marketing demo team. Marketing demos are not part of our public SDK.

An application like Cubes shouldn’t be bottlenecked by memory, as the cube data is stored in VBOs. I expect it is bottlenecked by vertex throughput. David’s suggestion of frustum & occlusion culling is a sensible optimization, as it ensures your application would only process the vertices of visible objects.




Okay, thanks Joe.


yes particule demo is a good start ,i believe that most desintegrate effect are done that way plus technique mentioned earlier+filling the particule from verttex…