The goal of these tasks is to make core Blender data structures more extensible and object-oriented.
See the proposal in the developer wiki for details.
Extend IDTypeInfo usage and functionality to abstract ID handling in more areas.
- lib_query.c for relations to other datablocks (T74960)
- Find other cases where hardcoded ID type tests are spread throughout the code
Decentralize .blend file I/O code, with a well documented API (T76372).
- API for .blend file read/write direct linking (D7061)
- Move most direct linking code out of readfile.c
- Move most lib linking and expand out of readfile.c (automate using lib query?)
- Add mechanism to register RNA at runtime
- Use it for important case including:
- Use for all data structures (long term)
We still need to work out design for how to register DNA at runtime, this is more a long term goal.
- Modifiers move from Python to callback on modifier typeinfo (modifier-panels-ui branch)
- Nodes UI move from drawnode.c to callback on node typeinfo
We still need to work out design for how to decentralize depsgraph building, this is more a long term goal.