The content manager will be an integral part of the level editor in allowing the design team to place any static meshes they build directly into the engine. The information of the meshes location, and other details, will then be set and sent to the XML Level File. Every placeable will have to have a unique ID which will be related to the XML entry.
The content manager functionality will also allow designers to change settings of placeables. For lights, this may include brightness and colour. For a door, this could be locked, currently open, its hit points if it is destroyable, etc etc.
The content manager will generally be responsible for controlling all content that is placed in a level.
Content Picker
The application will need a window that will be filled with all the content within the XNA game project content folder.
When an entry is selected, the cursor will change to have the item on top of it. Clicking the mouse will put an instance of that element into the level. Clicking multiple times will produce more instances.
Each time an instance is created, there will be default settings applied to it. The ID of the instance will increment. The ID should be changeable, but there should also be a check to ensure IDs never match.
Content List
There should be a window that lists all the content that has been placed in a level. Designers should be able to select content from this list. The list will update automatically when content is placed or removed. If an ID is changed, this should also be updated.
+Types of Content
BSP Geometry
Static Meshes
Invisible Objects (Triggers, Waypoints, Volumes)
Creatures
Items
Sounds
Lights
Particle Systems