Skip to content

CGeoPrimitiveContainer

Marker node used by certain object types. It has no payload; it exists to structure the DRS and gate where primitive or collision-related blocks appear in the node order.


Overview

  • Purpose: Structural placeholder in the DRS hierarchy (no data to edit).
  • Where it shows up: Common in static objects and some animated objects with collision, placed before OBB/collision mesh blocks in the write order.
  • Engine impact: None directly; readers use its presence to route parsing/ordering.

Structure

Field Type Default Description
(none) This class has no binary content (size 0).

Authoring & In-Game Behavior

  • Nothing to tweak: Artists don’t edit this node; it’s created or written by the exporter to keep node order consistent.
  • Why you might care: If you diff DRS files or inspect node tables, you’ll see this entry around collision-related blocks. Its presence doesn’t change visuals or physics on its own.

Validation Rules

Rule Why it matters
size == 0 Confirms it’s truly a marker-only block.
NodeInformation points to a 0-byte region Keeps offsets and sizes consistent for readers.

Performance Notes

None — zero-size marker; no runtime data or traversal costs.


Cross-References

  • Header / Nodes: How classes are linked → Header → NodeInformation.
  • Write order contexts: Appears in StaticObjectCollision and AnimatedObjectCollision pipelines before OBBTree or Mesh.
  • Magic value: CGeoPrimitiveContainer = 1396683476 (0x5342C5D4). See Glossary → MagicValues.

Known Variants / Game Differences

None known — always zero-sized in current BF/Skylords data.


Nice to know

If you delete it manually from a DRS, some tools may still load fine, but exporters and validators expect it where defined by the node order. Keep it.