NAMEFRAME Frame the world. Name the frames.

Tutorial: scene authoring

Zones are how you tell NameFrame where things may appear, where the camera may stand, and what it should look at. This tutorial covers the five helper actors and the population contract that governs them.

The five helpers#

HelperPurposeTypical use
Spawn ZoneAn area where target actors may be placedThe beach where people appear
Target ZoneAn area the camera aims atKeeping the camera on the interesting part of a big map
Exclusion ZoneAn area where nothing may spawnWater, roads, the inside of a building
Camera ZoneAn area the camera may occupyA drone flight corridor
Flight PathAn editable spline the camera followsA repeatable inspection sweep

All five are created from Scene → Spatial rules, at the location of whatever you had selected in the viewport. After that they behave like ordinary level actors: move, rotate, scale, and edit their settings in the Details panel. They are saved with the level.

Show / Hide toggles the visibility of every NameFrame helper at once, so you can get them out of the way while working on the scene itself.

Configuring a spawn zone#

Select the zone and open the Details panel. The parts that matter:

SettingWhat it controls
Zone NameThe name you reference from a recipe. Give it a real one, like beach_people_area rather than SpawnZone_3.
EnabledTurn a zone off without deleting it. Useful for A/B runs.
Spawn GroupsThe heart of it. Each group has a Label, a Count, and a pool of Actor Classes and/or Static Meshes.
Preview CountHow many temporary actors the Preview Spawns button places. Keep it small.
Ground Actor Prefix / Ground ActorsWhat counts as ground for the placement trace. Defaults to Landscape.
Require Ground HitReject placements that find no ground, rather than leaving something floating.
Shuffle Per FrameRe-place the population every frame instead of once for the run.
One zone, several classes

A zone can hold multiple spawn groups with different labels. One "street" zone can produce pedestrians and parked cars with independent counts and pools.

The population contract#

The Spawner contract section on the Scene page holds the global placement rules. They apply to every zone.

FieldDefaultWhat it prevents
Ground actor prefixempty (any ground)Spawning on the wrong surface
Max ground clearance (m)2.0Actors hovering above the surface
Scatter radius (m)unsetEverything landing in one spot
Scatter yaw (deg)unsetEvery actor facing the same way
Min spacing (m)0.5Actors intersecting each other
Max slope (deg)30Actors standing on cliff faces
Max attempts120Infinite retries when a zone is too crowded to satisfy
When placement silently thins out

If Min spacing is large relative to the zone area, the placer runs out of attempts and you get fewer actors than you asked for. Either enlarge the zone, lower the count, or reduce the spacing. Validate Setup reports this.

Classes and assignment#

A class is a label plus a rule for which actors carry it. In the panel you assign actors two ways:

Press Select on a class row to select its actors back in the viewport. That is the quickest way to confirm an assignment did what you meant.

Look-alikes

Anything that looks like a positive but is not labelled teaches the model that such objects are background. Two ways to handle it:

Advanced population rules#

The advanced population editor on the Scene page takes YAML for rules the buttons do not cover: clustered spawning, spawning relative to another class, inter-class minimum distances, nested groups, and named spatial distribution profiles.

The fastest way to learn the format is to press one of the example buttons: Numeric example, Spatial example, Anchors example or Groups example. Each loads a complete working recipe into every Studio control, advanced editor included. Read what it loaded, then edit it.

A cluster rule, for instance:

cluster_spawn:
  - label: person
    cluster_count: [2, 5]
    actors_per_cluster: [2, 6]
    cluster_radius_m: [3, 12]
    zone: main_spawn

And placement relative to another class:

relative_spawn:
  - label: person
    relative_to: vehicle
    count: [2, 8]
    distance_m: [3, 20]

Press Save & Validate to write the recipe and check it, or Save & Dry Run to also produce the deterministic population plan so you can read the actual numbers the rules generate. Full syntax is in the recipe reference.

Capture performance#

The Capture Performance section, at the bottom of the Capture page, trades render quality against throughput. Press one of the preset buttons (Safe, Balanced, Fast) or set the Profile field to safe, balanced, fast or custom.

ProfileUse it when
safeDefault. Waits for assets, shaders and streaming before every capture. Slowest and most correct.
balancedLong runs on a scene you have already proved out.
fastThroughput runs where you have verified nothing pops in late.
customYou are setting the individual checkboxes yourself.
The failure this prevents

Skipping the wait steps can produce frames rendered before textures or shaders finished compiling: grey, blurry or untextured targets, with perfectly correct labels. The labels are right and the images are useless. If you move off safe, smoke-test again and look at the images.

The per-effect checkboxes (anti-aliasing, bloom, global illumination, Lumen, shadows, reflections, fog, particles, translucency) turn individual RGB features off. Turning them off is faster and changes what the images look like, which is fine if it matches your target domain and a problem if it does not.