public D3DRenderSystem <TProperties> Init(SynchronizedGraphics graphics) { this.graphics = graphics; graphics.Changed += UpdateBuffers; UpdateBuffers(graphics.Device); return(this); }
public void UnSubscribeFromGraphics() { graphics.Changed -= UpdateBuffers; foreach (var nest in nested) { nest.CleanupRenderCache(); } this.graphics = null; }
RenderEngine(GraphicsDevice device, IRenderableSurface surface, IInputManager inputManager, IContextState context, EngineNotificator notificator) : base(surface, inputManager, context, notificator) { Graphics = new SynchronizedGraphics(surface, device); var includes = new System.Collections.Generic.Dictionary <string, IIncludeResourse>(); includes.Add("Common", new IncludeResourse("Common", "D3DLab.Toolkit._CommonShaders.Common.hlsl")); Graphics.Device.Compilator.AddInclude(new D3DLab.SDX.Engine.Shader.D3DIncludeAdapter(includes)); }
public override void Dispose() { graphics.Changed -= UpdateBuffers; this.graphics = null; foreach (var n in nested) { n.Cleanup(); n.CleanupRenderCache(); } nested.Clear(); base.Dispose(); }
public D3DRenderSystem <TProperties> Init(SynchronizedGraphics graphics) { this.graphics = graphics; graphics.Changed += UpdateBuffers; UpdateBuffers(graphics.Device); foreach (var nest in nested) { nest.CleanupRenderCache(); } return(this); }
void Initializing(SynchronizedGraphics device) { var em = Context.GetEntityManager(); var cameraTag = new ElementTag("CameraEntity"); { //systems creating var smanager = Context.GetSystemManager(); smanager.CreateSystem <DefaultInputSystem>(); smanager.CreateSystem <D3D.D3DCameraSystem>(); smanager.CreateSystem <DefaultLightsSystem>(); smanager.CreateSystem <CollidingSystem>(); smanager.CreateSystem <MovementSystem>(); smanager.CreateSystem <EmptyAnimationSystem>(); smanager.CreateSystem <MeshAnimationSystem>(); // smanager.CreateSystem<StickOnHeightMapSystem>(); smanager.CreateSystem <ObjectMovementSystem>(); smanager.CreateSystem <Systems.TerrainGeneratorSystem>(); smanager.CreateSystem <Physics.Engine.PhysicalSystem>(); smanager .CreateSystem <RenderSystem>() .Init(device) .CreateNested <SkyGradientColoringRenderTechnique>() .CreateNested <SkyPlaneWithParallaxRenderTechnique>() .CreateNested <TerrainRenderTechnique>() // .CreateNested <TriangleColoredVertexRenderTechnique>() .CreateNested <LineVertexRenderTechnique>() .CreateNested <SpherePointRenderStrategy>() .CreateNested <AminRenderTechniqueSystem>(); //smanager // .CreateSystem<AminRenderSystem>() // .Init(device); } { var engine = EngineInfoBuilder.Build(em, Window); } {//entities ordering Context.EntityOrder .RegisterOrder <RenderSystem>(cameraTag, 0) .RegisterOrder <DefaultInputSystem>(cameraTag, 0); } }