public void Draw(IEnumerable <IRenderable> renderables, DrawModeFlag modeFlag = DrawModeFlag.Normal) { device.SetRenderTarget(null); device.Clear(ClearOptions.DepthBuffer, Color.Black, 1.0f, 0); device.BlendState = BlendState.AlphaBlend; device.DepthStencilState = DepthStencilState.Default; drawEffect.View = Camera.View; drawEffect.Projection = Camera.Projection; drawEffect.EnableDefaultLighting(); drawSpriteEffect.View = Camera.View; drawSpriteEffect.Projection = Camera.Projection; renderContext.Camera = Camera; renderContext.BeginScene(drawEffect, drawSpriteEffect, device); if (modeFlag == DrawModeFlag.Normal) { foreach (var node in renderables) { node.DrawEx(renderContext); } } debug.Begin(Matrix.Identity, Camera.View, Camera.Projection); foreach (var line in debugLines) { debug.Line(line.Item1, line.Item2); } debug.Flush(); debugLines.Clear(); }
public void Draw(IEnumerable<IRenderable> renderables, DrawModeFlag modeFlag = DrawModeFlag.Normal) { device.SetRenderTarget(null); device.Clear(ClearOptions.DepthBuffer, Color.Black, 1.0f, 0); device.BlendState = BlendState.AlphaBlend; device.DepthStencilState = DepthStencilState.Default; drawEffect.View = Camera.View; drawEffect.Projection = Camera.Projection; drawEffect.EnableDefaultLighting(); drawSpriteEffect.View = Camera.View; drawSpriteEffect.Projection = Camera.Projection; renderContext.Camera = Camera; renderContext.BeginScene(drawEffect, drawSpriteEffect, device); if (modeFlag == DrawModeFlag.Normal) foreach (var node in renderables) node.DrawEx(renderContext); debug.Begin(Matrix.Identity, Camera.View, Camera.Projection); foreach (var line in debugLines) debug.Line(line.Item1, line.Item2); debug.Flush(); debugLines.Clear(); }