Hi,

There is something in the class hierarchy that I don't understand.

You've got the following hierarchy of classes:
Object3D <- ObjectContainer3D <- Entity <- Mesh <- PrimitiveBase

ObjectContainer3D can hold children, however Mesh, which derives from
ObjectContainer3D, does not take this into account. Is this is an
error of design?

And also, I see that you make overrides in Entity to "cancel" the
container functionality of ObjectContainer3D...

Another thing is that I don't understand why the Entity class has a
bounds property and not ObjectContainer3D, which defines the min, max
properties which in turn are the bounds... I think having a bounds
property returning a BoundingVolumeBase calculated from the bounds of
its children will help.

Wouldn't be better the following hierarchy?:
Object3D <- ObjectContainer3D
               <- Mesh <- PrimitiveBase

I mean ObjectContainer3D and Mesh deriving from Object3D and Entity
functionality moved to Object3D.

The other option is to support the container functionality derived
from ObjectContainer3D in Entity and Mesh classes.

Regards.

Reply via email to