| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- TODO
- - Ability to break external references as a pre-processing step
- ---------------------------------------
- IMMEDIATE:
- setValue in ScriptSerializableObject & ScriptSerializableArray should check if value is null and if the field type isn't a value type (can't be null)
- ScriptSerializableArray::onDeserializationEnded doesn't create an array instance because I'm not sure how yet
- In ScriptEnginePlugin I am running RuntimeScriptObjects but never shutting it down - Right now its only for debug purposes
- LOW PRIORITY
- - Add Multi-dimensional arrays / Lists / Dictionaries
- - (To get array lengths per rank I probably need to cast to System.Array and then call GetLength)
- - Ensure that unknown components retain their field data so when they are no longer unknown their data may be restored
- - Get rid of ScriptObject::createInstance and replace it with parameter in constructor
- - A way to serialize any object into a Resource (and deserialize it from Resource)
- ---------------------------------------
- Testing:
- Set up a test case - Initially disable field serialization
- - In C# create SceneObject("ManagedSO")
- - Add to it DbgComponent
- - Call a dummy C++ method (in ScriptSceneObject for example)
- - C++ method calls clone() on the scene object and creates a new "ManagedSOClone" object and parents it as a child of current SO
- - C# then retrieves a child and checks if the component is there
- ------------------------------------------------------
- General C# component management
- Native components like Camera
- - ScriptCamera derives from Camera
- - Then whenever I check for managed Components I need to check if object type of ScriptComponent or
- any of the built-in types.
- - Checking each type might be a bit slow, but normally we will be looking for an exact type
- so hopefully this will only matter when enumerating all components which shouldn't be during performance
- critical moments.
- TODO - When reloading scripts how to handle restoring references?
- TODO - When I destroy a Component, how will I refresh the inspector to let it know that something has changed
- - Can happen from C# and C++
- -------------------------------------------------------
- Other:
- Instantiating mono generic classes: http://stackoverflow.com/questions/17628411/get-generic-type-using-mono-embedded
|