Ejemplo n.º 1
0
 public LightManager(ContentManager content, GraphicsDevice device)
 {
     this.quadRender   = new QuadRender(device);
     this.device       = device;
     shadowmapResolver = new ShadowmapResolver(device, quadRender, ShadowmapSize.Size256, ShadowmapSize.Size1024);
     shadowmapResolver.LoadContent(content);
     screenShadows = new RenderTarget2D(device, device.Viewport.Width, device.Viewport.Height);
 }
Ejemplo n.º 2
0
 public void Cast(SpriteBatch batch, ShadowmapResolver resolver)
 {
     BeginDrawingShadowCasters();
     batch.Begin();
     CastedItems.ForEach(item =>
     {
         batch.Draw(item.Texture, ToRelativePosition(Vector2.Zero), Color.Black);
         batch.Draw(item.Texture, ToRelativePosition(item.Position), Color.Black);
     });
     batch.End();
     EndDrawingShadowCasters();
     resolver.ResolveShadows(RenderTarget, RenderTarget, Position());
 }