Toasty Update #7
toasty engine editor component based entity system c++ wxWidgets
This update is being dedicated to the editor and here is what I have done and what's left to do so far:
Scene Entity View
Used to add or remove entities from the GameSystem and current scene it displays a pure list of entities. It has the ability to filter entities by name and grouping of entities. Sends an entityselected event and entitydeselected event on selection or deselection of entities.
- Search \ Filter functionality
- Allow multi-entity selection
The project view is used to display the project as seen on disk. It also creates events for any views to listen to for selecting or double-clicking a file \ folder in the project view, this will allow things like the Scene Entity View to change scene based on double clicking in here.
- Allow Double-Click event listening
- Allow Selecting event listening
- Allow renaming of items within the view itself (Rather than only on disk)
- Properly add items under correct folder and catching rename events
- Add ability to open a project already created
This is responsible for hosting and joining a project and monitoring the status of the network. It also has a simple chat box for sending messages to people connected to the server. Messages are currently just routed to the console.
- Properly send networked commands
- Change commands so they affect files only
- Add ability to lock a file or folder restricting the ability to modify it on other peoples computers
Displays text sent from std::cout or printf as well as wxLogMessage (Which includes a timestamp).
- Should directly use a file which it watches for edits.
For inspecting entities. Plugins can add controls to this when an entity is selected if they need to. The only control the always comes up is the EntityEditControl.
- Multi-entity selection
Allows the user to edit the name, position, rotation and scale of an entity.
- Multi-entity selection
Plugins should be allowed to add menu items, listen for selection events and add controls to the inspector.
- Just a code cleanup required to make the plugin more secure from the application.
Runs an SFMLRenderSystem, allows creation of SFML Windows through the use of menu items and automatically creates one. Should listen for entity selections and add controls required based on components the entity has inside the SFMLRenderSystem. Adds menu items for adding SFML specific components.
Used to display the SFMLRenderSystems components. It should allow easy view movement and entity movement.
- View movement (panning, zooming)
- Grid and grid settings
- Read from changes in a scene folder