Object3D modifications to allow custom inherited types