Exemplo n.º 1
0
        /* Drtaws all GameObjects in sceneObjects that
         * implements IDrawable.
         */
        public void Draw(Rendering.RenderQueue renderQueue)
        {
            SceneRoot.ResolveDirty();

            foreach (GameObject gameObject in sceneObjects)
            {
                if (gameObject is IDrawable)
                {
                    // TODO: Implement support for additional drawables.

                    var modelComp = gameObject.Components.Get <_ModelComponent>();

                    if (modelComp != null)
                    {
                        renderQueue.Stage(modelComp.Model, gameObject.WorldMatrix);
                    }
                }
            }
        }
Exemplo n.º 2
0
        /* If not already created and up to date, this method
         * constructs a new list of Meshes to be rendered.
         *
         * * return     flattened list of GameObjects with meshes
         */
        public Rendering.RenderQueue GetRenderQueue()
        {
            if (IsDirty)
            {
                Flatten();
            }

            Rendering.RenderQueue renderQueue = new Rendering.RenderQueue();

            SceneRoot.ResolveDirty();

            foreach (GameObject gameObject in sceneObjects)
            {
                var modelComp = gameObject.Components.Get <_ModelComponent>();

                if (modelComp != null)
                {
                    renderQueue.Stage(modelComp.Model, gameObject.WorldMatrix);
                }
            }
            return(renderQueue);
        }
Exemplo n.º 3
0
 public virtual void DrawUI(Rendering.RenderQueue renderQueue)
 {
     //uiScene.Draw(renderQueue);
 }
Exemplo n.º 4
0
 public virtual void Draw(Rendering.RenderQueue renderQueue)
 {
     stateScene.Draw(renderQueue);
 }