Skip to main content

Working in three dimensions (3D)

The Flash Player and AIR runtimes support 3D graphics in two ways. You can use three-dimensional display objects on the Flash display list. This is appropriate for adding three-dimensional effects to Flash content and for low polygon-count objects. In Flash Player 11and AIR 3, or later, you can render complex 3D scenes using the Stage3D API.

A Stage3D viewport is not a display object. Instead, the 3D graphics are rendered to a viewport that is displayed underneath the Flash display list (and above any StageVideo viewport planes). Rather than using the Flash DisplayObject classes to create a scene, you use a programmable 3D-pipeline (similar to OpenGL and Direct3D). This pipeline takes triangle data and textures as input and renders the scene using shader programs that you provide. Hardware acceleration is used when a compatible graphics processing unit (GPU) with supported drivers, is available on the client computer.

Stage3D provides a very low-level API. In an application, you are encouraged to use a 3D framework that supports Stage3D. You can create your own framework or use one of several commercial and open source frameworks already available.

For more information about developing 3D applications using Stage3D and about available 3D frameworks, visit the Flash Player Developer Center: Stage 3D.

Adobe recommends

How Stage3D works

Marco Scabia: iFlash3D.com

What is AGAL

Marco Scabia: iFlash3D.com

Vertex and fragment shaders

Marco Scabia: iFlash3D.com

Handling scenarios with Stage3D

Thibault Imbert

Working with the Proscenium framework

Adobe