public override void Draw(GameTime gameTime, Frame frame) { var ir = new ImperativeRenderer(frame, Materials); ir.AutoIncrementLayer = true; ir.Clear(color: ClearColor); var rect1 = new Rectangle(0, 0, 32, 32); var rect2 = new Rectangle(1, 1, 30, 30); var drawSet = (Action<Rectangle, float>)((r, y) => { DrawRow(ref ir, 0f, y + 0f, SamplerState.PointClamp, r); DrawRow(ref ir, 0.5f, y + 1 + 64f, SamplerState.PointClamp, r); DrawRow(ref ir, 0f, (y + 3 + 128) + 0.5f, SamplerState.PointClamp, r); DrawRow(ref ir, 0f, y + 5 + 192f, SamplerState.LinearClamp, r); DrawRow(ref ir, 0.5f, y + 7 + 256f, SamplerState.LinearClamp, r); DrawRow(ref ir, 0f, (y + 9 + 320) + 0.5f, SamplerState.LinearClamp, r); }); drawSet(rect1, 0f); drawSet(rect2, (70f*6)); var cornerSamplers = SamplerState.LinearClamp; ir.Draw(TestTexture, new Vector2(Graphics.PreferredBackBufferWidth - 1, Graphics.PreferredBackBufferHeight - 1), origin: new Vector2(1, 1), samplerState: cornerSamplers); ir.Draw(TestTexture, new Vector2(0, Graphics.PreferredBackBufferHeight - 1), origin: new Vector2(0, 1), samplerState: cornerSamplers); ir.Draw(TestTexture, new Vector2(Graphics.PreferredBackBufferWidth - 1, 0), origin: new Vector2(1, 0), samplerState: cornerSamplers); }
public override void Draw(GameTime gameTime, Frame frame) { var ir = new ImperativeRenderer(frame, Materials); ir.AutoIncrementLayer = true; ir.Clear(color: ClearColor); DrawRow(ref ir, 16f, 16f, SamplerState.PointClamp); DrawRow(ref ir, 16.5f, 16 + 64f, SamplerState.PointClamp); DrawRow(ref ir, 16f, (16 + 128) + 0.5f, SamplerState.PointClamp); DrawRow(ref ir, 16f, 16 + 192f, SamplerState.LinearClamp); DrawRow(ref ir, 16.5f, 16 + 256f, SamplerState.LinearClamp); DrawRow(ref ir, 16f, (16 + 320) + 0.5f, SamplerState.LinearClamp); }