Scenery are non-moving objects placed within maps that are not part of the BSP. Some examples of scenery include boulders, trees, crashed pelicans, and smoke emitters. Scenery objects can be added to a palette in Sapien and placed many times throughout the level, with each scenery implicitly belonging to a particular BSP.
While scenery and their collision models can be animated, they do not have physics like units and items and the object technically remains fixed at one location. Doors and elevators are implemented using device_
Limits
While thousands of scenery can be placed in a scenario, the unmodified game engine only supports rendering at most 256 at any given time. This limit can be increased to 512 using OpenSauce.
Shadows
Because these objects are non-moving, they cast shadows in lightmaps. A scenery's collision is used to cast shadows rather than its gbxmodel. Scenery can also be forced to use dynamic shadow mapping; see object lighting.
Structure and fields
Field | Type | Comments | ||||||
---|---|---|---|---|---|---|---|---|
flags | bitfield | This field is padding in legacy Halo. It is visible in H1A Guerilla. | ||||||
|
Acknowledgements
Thanks to the following individuals for their research or contributions to this topic:
- Kavawuvi (Invader tag definitions)
- MosesOfEgypt (Tag structure research)