Templates

ClassWizard templates for GS_PhantomCam — custom phantom camera behaviour components.

All GS_PhantomCam extension types are generated through the ClassWizard CLI. The wizard handles UUID generation, cmake file-list registration, and module descriptor injection automatically.

For usage guides and setup examples, see The Basics: GS_PhantomCam.

python ClassWizard.py \
    --template <TemplateName> \
    --gem <GemPath> \
    --name <SymbolName> \
    [--input-var key=value ...]

 

Contents


Phantom Camera Component

Template: PhantomCamera

Creates a custom camera behaviour component, a child of GS_PhantomCameraComponent. Multiple camera components can coexist on a Camera Entity; the GS_CamManagerComponent activates them by priority. Override the follow, look-at, and tick virtuals to define custom camera positioning and aiming logic.

Generated files:

  • Source/${Name}PhantomCamComponent.h/.cpp

CLI:

python ClassWizard.py --template PhantomCamera --gem <GemPath> --name <Name>

Post-generation: None — cmake and module registration are fully automatic. Override the following virtual methods:

MethodPurpose
ProcessPhysicsFollow()Drive camera position each physics tick using VelocitySpringDamper
ProcessPhysicsLookAt()Drive camera rotation using QuaternionSpringDamper
EvaluateCamTick(dt)Per-frame camera logic (blend weights, FOV, offsets)
ProcessTransformFollow()Position follow when physics is not available
ProcessTransformLookAt()Rotation follow when physics is not available

Extensibility: One component per camera mode (e.g. ThirdPerson, Aim, Dialogue, Cinematic). Components declare incompatibility with GS_PhantomCameraComponentService so only one camera behaviour is active at a time on an entity. Swap active cameras by toggling component activation, or let the CamManager handle priority.

See also: Phantom Cameras — full extension guide with complete header and implementation examples.


See Also

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

For all ClassWizard templates across GS_Play gems:


Get GS_PhantomCam

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