|
|
|
|
@ -7,10 +7,14 @@ Build System:
|
|
|
|
|
✔ Modify .sh scripts to recognize the noeditor flag @done (1/25/2022, 3:59:23 PM)
|
|
|
|
|
|
|
|
|
|
Core:
|
|
|
|
|
☐ Update console gui system to store the full message meta-data so that filters can be applied @High
|
|
|
|
|
☐ Create log rotation system so that log files do not grow to GB in size... @critical
|
|
|
|
|
- If file is X MBs, check for file with .old ext and erase if exists, .old to current file and create new log file
|
|
|
|
|
☐ Figure out how to represent Unique Entities and entity instances - and how this will work with UUIDs @critical
|
|
|
|
|
☐ Design Entity Template system
|
|
|
|
|
|
|
|
|
|
☐ Add log settings to the state file
|
|
|
|
|
|
|
|
|
|
✔ Implement generic serialization system @done(22-06-29 18:44)
|
|
|
|
|
✔ JSON serializable base class @done(22-06-29 17:41)
|
|
|
|
|
✔ JSON implementions should be stubbed out in non-editor builds @done(22-06-29 17:41)
|
|
|
|
|
@ -27,7 +31,6 @@ Core:
|
|
|
|
|
✔ assets @done(22-05-17 14:27)
|
|
|
|
|
✔ gui @done(22-05-17 14:27)
|
|
|
|
|
✔ Replace the File Browser (imgui) class with the NFD library (https://github.com/btzy/nativefiledialog-extended) @high @done(22-05-23 16:00)
|
|
|
|
|
☐ Add log settings to the state file
|
|
|
|
|
✔ Refactor log system to use separate log level methods instead of passing log level @done(22-05-12 16:46)
|
|
|
|
|
✔ Add log level options to config script @done(22-05-12 16:46)
|
|
|
|
|
✔ Add run modes (Editor, Game, Test) to state file @done (9/15/2021, 7:27:03 PM)
|
|
|
|
|
@ -35,15 +38,19 @@ Core:
|
|
|
|
|
✔ Read the window size and position on shutdown and write these to the state file @done (2/8/2022, 4:39:37 PM)
|
|
|
|
|
|
|
|
|
|
Physics:
|
|
|
|
|
☐ Joint Component to allow parent/child entities to both use the physics system @high
|
|
|
|
|
☐ Come up with a way to wrap Box2D into an API @low
|
|
|
|
|
✔ Research Box2D as a possible physics library @done (10/27/2021, 7:40:44 PM)
|
|
|
|
|
✔ Add Box2D to the project as an external library @done (10/27/2021, 7:40:46 PM)
|
|
|
|
|
✔ Add a scene to the tester to test Box2D usage @done (10/28/2021, 2:42:45 PM)
|
|
|
|
|
☐ Come up with a way to wrap Box2D into an API
|
|
|
|
|
☐ Joint Component to allow parent/child entities to both use the physics system
|
|
|
|
|
|
|
|
|
|
Scripting:
|
|
|
|
|
|
|
|
|
|
☐ Add a Log methods to the CoreAPI
|
|
|
|
|
☐ Add Entity class to wrap entity id values
|
|
|
|
|
- Foreign class that stores the entity id values and gives access to
|
|
|
|
|
- foreign methods for interacting with that entity (getting components/scripts)
|
|
|
|
|
|
|
|
|
|
✔ Add a Log methods to the CoreAPI @done(23-01-11 15:24)
|
|
|
|
|
|
|
|
|
|
✔ Allow scripts to interact (calling methods in other scripts) @done(23-01-10 16:54)
|
|
|
|
|
- In order for a script to be registered with the World API it MUST
|
|
|
|
|
@ -56,11 +63,16 @@ Scripting:
|
|
|
|
|
|
|
|
|
|
✔ Script Asset @done(22-11-14 18:19)
|
|
|
|
|
|
|
|
|
|
Script Managment class:
|
|
|
|
|
Script State class:
|
|
|
|
|
✔ Allow for running script class objects @done(23-01-11 15:28)
|
|
|
|
|
✔ Allow for running raw code snippets (with module importing made easy) @done(23-01-11 15:29)
|
|
|
|
|
✔ Wrapper methods for registering foreign classes and methods @done(23-01-11 15:29)
|
|
|
|
|
✔ Wrapper methods for getting handles to classes @done(23-01-11 15:29)
|
|
|
|
|
|
|
|
|
|
✘ Manage LUA states @cancelled(22-05-13 17:31)
|
|
|
|
|
☐ Initialize new scripts
|
|
|
|
|
☐ Run given script with given state
|
|
|
|
|
☐ Add any generated errors to the Script object
|
|
|
|
|
✘ Initialize new scripts @cancelled(23-01-11 15:28)
|
|
|
|
|
✘ Run given script with given state @cancelled(23-01-11 15:28)
|
|
|
|
|
✘ Add any generated errors to the Script object @cancelled(23-01-11 15:28)
|
|
|
|
|
|
|
|
|
|
Interface Class (Core API):
|
|
|
|
|
☐ Provide Methods that give access to the C++ code
|
|
|
|
|
@ -71,8 +83,9 @@ Audio:
|
|
|
|
|
☐ Design Audio API
|
|
|
|
|
|
|
|
|
|
Assets:
|
|
|
|
|
✔ Internal Asset Manager @high @done (1/25/2022, 3:58:20 PM)
|
|
|
|
|
☐ Document Index.Dat and the AssetIndex class
|
|
|
|
|
|
|
|
|
|
✔ Internal Asset Manager @high @done (1/25/2022, 3:58:20 PM)
|
|
|
|
|
✔ Move the GenerateFont method from internal_font.h into data_manager.h @done(22-06-29 17:42)
|
|
|
|
|
|
|
|
|
|
Types:
|
|
|
|
|
@ -156,7 +169,7 @@ ECS:
|
|
|
|
|
✔ Single UUID @done(22-06-01 14:01)
|
|
|
|
|
✔ Functionality for adding/working with components (through EnTT) @done(22-06-01 14:01)
|
|
|
|
|
☐ Serialize
|
|
|
|
|
☐ JSON
|
|
|
|
|
✔ JSON @done(23-01-11 15:35)
|
|
|
|
|
☐ Binary
|
|
|
|
|
|
|
|
|
|
Components:
|
|
|
|
|
@ -171,11 +184,12 @@ ECS:
|
|
|
|
|
✔ Script @done(22-11-14 18:19)
|
|
|
|
|
☐ Audio Listener
|
|
|
|
|
Physics:
|
|
|
|
|
☐ Rigid Body (Box2D)
|
|
|
|
|
☐ Box Collider (Box2D)
|
|
|
|
|
☐ Joint Component
|
|
|
|
|
✔ Rigid Body (Box2D) @done(23-01-11 15:35)
|
|
|
|
|
✔ Collider (Box2D) @done(23-01-11 15:35)
|
|
|
|
|
|
|
|
|
|
World (Lunariums version of a "Scene"):
|
|
|
|
|
☐ Add Render layer property to all renderable components
|
|
|
|
|
✔ Add Render layer property to all renderable components @done(23-01-11 15:35)
|
|
|
|
|
✔ Implement memento pattern to save the initial state of the world @done(22-11-14 18:19)
|
|
|
|
|
✔ Implement running the world and resetting to initial state @done(22-11-14 18:19)
|
|
|
|
|
✔ Implement the world without Regions first @done(22-11-14 18:20)
|
|
|
|
|
|