This is my latest level editor (work in progress).
The editor uses C# windows forms and uses an interface in C++ CLR to communicate with the C++ engine.
All editing is made with EditorCommands. The commands are sent from C# to C++ and is used to sync the C# main thread and C++ editor thread.
GameObjectIDs are used for communicating which game object to use.
Commands are put in a thread-safe queue and executed each frame by C++.
All commands have execute and undo functions for allowing undo operations in the editor.
Enemy movement can be edited. C# checks if selected game object has a AIComponent and opens up the AI editing tools.
Editor show lines and icons for displaying enemy movement and direction.
All game object has an arbitrary container with data. Later the container will be sent to C# for allowing editing game object values in an easy way.
A XML file has a list with all XML-files containing game objects. Each list shows as an category in the editor.
Other current features are multiple selection and snap. Controls scheme is from Maya.
ZeroEd was editor used for ZeroFPS. The videos was used to instruct new designers and our community (the game was open source).All game objects and their behaviour were defined in lua. I was one of four programmers working on this project.
An editor for an 2½-d space shooter game. Made in C++ with custom GUI.
It had a lot of features - all edit modes can be seen as icons at the top.
- Creating and editor objects and waypoints
-- Change heightmap
- Editing fog mode
- Paint textures on tilemap
- Edit camera (the camera could, be edited to move freely in 3d in the game)
- Light & Particles
Also an editor for the same 2½-D space shooter.
In this editor game objects visuals and collisions were edited. You could also build hirerchies of objects. For example the tank in the picture has two childs - two movable, seperate cannon tower pieces for aiming.
The third editor for the shooter, this on made in VB. All objects was defines here.
This is the editor for End of Road, a racing game made in C++, with a custom GUI.
You could place and transform object Maya style and place lights.
An editor made in C# XNA for a platforming game. It was used in class for the students to try out level design, implement their own art, and playing with the source code.
It's possible to run the level just by pressing S (start) and return to the editor by pressing E (editor).