void register.IRegisterable.RenderRegister(register.Viewpoint viewpoint, ref Viewport viewport, render.RenderQueueGroup queueGroup, PoolManager poolManager)
        {
            ContainmentType containment;
            viewpoint.Frustum.Contains(ref _boundingSphere, out containment);

            if (containment == ContainmentType.Disjoint)
            {
                return;
            }

            queueGroup.Register(
                EllipsoidPrimitiveRenderable.CreateInstance(poolManager.GetPool<EllipsoidPrimitiveRenderable>(),
                _verticesCount, _indicesWFCount, _indicesCount, _vertexBuffer, _indicesWFBuffer, _indicesBuffer, _world, viewpoint.View, viewpoint.Projection, _color, _isOpaque),
                 render.RenderQueueNames.Custom4);
        }
 void register.IRegisterable.SceneRegister(register.SceneInformation sceneInformation, register.LightsAndCameras lightsAndCameras, PoolManager poolManager)
 {
 }
        public override void Register(List<register.IRegisterable> registerables, register.ReflectSet reflects, render.GpuTaskManager gpuManager, MaterialManager materialManager, PoolManager poolManager)
        {
            base.Register(registerables, reflects, gpuManager, materialManager, poolManager);

            BoundingSphere currentBounding;
            Helpers.TransformBoundingSphere(ref _boundingSphere, ref _lastWorld, out currentBounding);

            registerables.Add(EllipsoidPrimitiveRegisterable.CreateInstance(
                poolManager.GetPool<EllipsoidPrimitiveRegisterable>(), _vertices.Length, _indicesWF.Length, _indices.Length,
                   _vertexBuffer, _indexWFBuffer, _indexBuffer, _lastWorld, Color, IsOpaque, currentBounding));
        }