Paper Performer

How to work with GS_Play paper performers — billboard-style 2.5D character rendering with camera-aware facing.

The Paper Performer system provides billboard-style character rendering for 2.5D games. The Paper Facing Handler rotates sprite-based characters to always face the active camera while maintaining proper orientation relative to movement direction. This prevents the visual artifacts that occur when a flat sprite is viewed from the side.

For component properties and the facing algorithm, see the Framework API reference.

 

Contents


How It Works

The PaperFacingHandlerComponent is placed on any entity that uses sprite-based or flat-mesh character rendering. Each frame, it calculates the optimal facing direction based on:

  1. The active camera’s position (via CamCore notifications).
  2. The entity’s movement direction.
  3. Configurable facing rules.

The result is a character that always presents its front face to the camera without snapping or popping during movement direction changes.


Camera-Aware Variant

The CamCorePaperFacingHandlerComponent (in GS_Complete) extends the base paper facing with direct camera core integration. It listens to CamCoreNotificationBus for camera position updates, ensuring the facing calculation uses the exact camera state rather than a cached position.


Entity Configuration

Performer Entity Configuration in the O3DE Editor

Note this has been put inside a GS_Unit prefab.


Glossary

TermMeaning
Paper PerformerA billboard-style character that always faces the camera for 2.5D rendering
Paper Facing HandlerThe component that calculates optimal facing direction each frame

For full definitions, see the Glossary.


See Also

For the full API, component properties, and C++ extension guide:

For related systems:


Get GS_Performer

GS_Performer — Explore this gem on the product page and add it to your project.