public void Draw(PixelClipping clipping) { if (Render != null) { Render.Draw(this, clipping); } }
public static void RenderEntries(List <GraphicSubmit> renderList, PixelClipping clipping) { for (int i = 0, len = renderList.Count; i < len; i++) { renderList[i].Draw(clipping); } }
public void Draw(GraphicSubmit comp, PixelClipping clipping) { Current = comp; Clipping = clipping; var graphic = comp.Graphic; var node = comp.Node; var scene = comp.Scene; var material = graphic.Material; if (material != null) { material.Bind(this); } Bind(clipping); FrameTechnique technique = null; if (node != null) { Bind(node); technique = node.Technique; if (technique != null) { technique.Bind(this); } } scene.BindScene(this); Draw((T)(graphic)); if (technique != null) { technique.NbEntries--; technique.UnBind(this); } }
public static void RenderSceneRenderList(List <GraphicSubmit> entries, bool useLights = true, PixelClipping clipping = PixelClipping.None) { var scene = Engine.Scene; var activeLights = scene.ActiveLights; int nbLight = useLights ? activeLights.Count : 1; if (nbLight > 0 && useLights) { Light.Current = activeLights[0]; } RenderEntries(entries, clipping); if (useLights) { for (int i = 1; i < nbLight; i++) { Light.Current = activeLights[i]; RenderEntries(entries, clipping); } } }