Adding graphics and multimedia

A great way to impress your users is by providing interactive media and graphics. You want to create an experience where content dominates the screen. Cascades provides APIs that you can use to access the camera, play and record audio and video, and display immersive 3D graphics.


The OpenGL ES API is a lightweight 2D and 3D rendering engine that you can use in combination with the scene graph-based Cascades rendering engine in your app.

Cascades supports two cases for using OpenGL ES: overlay and underlay.

In overlay, an OpenGL ES model is displayed in a window that appears on top of the Cascades window. The basic pipeline for using OpenGL ES overlay in your app looks like this flow diagram:

The basic OpenGL ES overlay pipeline.

Your OpenGL ES code is passed to the Embedded-System Graphics Library (EGL), then bound to the Screen API window and displayed on the device. Overlays are used for transparent 3D controls and content.

The second case is underlay. In underlay, the OpenGL ES model is bound to the Screen API window using EGL and is displayed under the Cascades window. The Screen API window then gains visibility using the ForeignWindowControl. The process looks like this flow diagram:

The OpenGL ES underlay pipeline.

Underlays are used for opaque 3-D controls and content.


The Camera APIs allow you to directly access the camera hardware on the device. The camera hardware on the device supports capturing pictures and video. You have full control over the viewfinder and camera settings, so get creative with how you use the camera.

An example from the photobomber sample.

Related docs

Sample apps


Cascades includes multimedia support for audio and video, with support for most file formats and streaming protocols. You can seek, rewind, and play back multimedia; stream audio and video content; and record audio and video using the camera and microphone on the device.

What's next?

Continue on to Generating revenue to learn about ways to make money from an app.

Last modified: 2015-07-24

Got questions about leaving a comment? Get answers from our Disqus FAQ.

comments powered by Disqus