This is a set of changes to de-duplicate code and storage of bounds and animation related properties. All bounds properties are now proxies to the collision modifier's bounds property with an automated upgrade path. All of the manual getters and setters in code that was already doing this have been removed and replaced with a helper to register bounds properties. Animation properties, especially material/texture animations, have been greatly simplified by removing verbose boilerplate around property registration.
This is a set of changes to de-duplicate code and storage of bounds and animation related properties. All bounds properties are now proxies to the collision modifier's bounds property with an automated upgrade path. All of the manual getters and setters in code that was already doing this have been removed and replaced with a helper to register bounds properties. Animation properties, especially material/texture animations, have been greatly simplified by removing verbose boilerplate around property registration.