public void TestDrawIndexedPrimitives()
        {
            using (PrimitiveBatchCreator creator = new PrimitiveBatchCreator()) {
                DummyDrawContext dummy = new DummyDrawContext();

                creator.PrimitiveBatch.Begin(QueueingStrategy.Immediate);
                try {
                    creator.PrimitiveBatch.Draw(
                        new TestVertex[10], createIndices(10), PrimitiveType.LineList, dummy
                        );
                    creator.PrimitiveBatch.Draw(
                        new TestVertex[10], createIndices(10), PrimitiveType.LineStrip, dummy
                        );
                    creator.PrimitiveBatch.Draw(
                        new TestVertex[9], createIndices(9), PrimitiveType.TriangleList, dummy
                        );
                    creator.PrimitiveBatch.Draw(
                        new TestVertex[10], createIndices(10), PrimitiveType.TriangleStrip, dummy
                        );
                }
                finally {
                    creator.PrimitiveBatch.End();
                }
            }
        }
Example #2
0
        public void TestDrawPrimitives()
        {
            using (PrimitiveBatchCreator creator = new PrimitiveBatchCreator()) {
                DummyDrawContext dummy = new DummyDrawContext();

                creator.PrimitiveBatch.Begin(QueueingStrategy.Immediate);
                try {
#if !XNA_4
                    creator.PrimitiveBatch.Draw(
                        new TestVertex[10], PrimitiveType.PointList, dummy
                        );
#endif
                    creator.PrimitiveBatch.Draw(
                        new TestVertex[10], PrimitiveType.LineList, dummy
                        );
                    creator.PrimitiveBatch.Draw(
                        new TestVertex[10], PrimitiveType.LineStrip, dummy
                        );
#if !XNA_4
                    creator.PrimitiveBatch.Draw(
                        new TestVertex[10], PrimitiveType.TriangleFan, dummy
                        );
#endif
                    creator.PrimitiveBatch.Draw(
                        new TestVertex[9], PrimitiveType.TriangleList, dummy
                        );
                    creator.PrimitiveBatch.Draw(
                        new TestVertex[10], PrimitiveType.TriangleStrip, dummy
                        );
                }
                finally {
                    creator.PrimitiveBatch.End();
                }
            }
        }
Example #3
0
        public void TestIndexedDrawing()
        {
            DummyBatchDrawer batchDrawer = new DummyBatchDrawer();

            using (
                DrawContextQueuer <TestVertex> queuer = new DrawContextQueuer <TestVertex>(
                    batchDrawer
                    )
                ) {
                DummyDrawContext context = new DummyDrawContext();

                queuer.Begin();
                try {
                    queuer.Queue(
                        TestVertices, 0, 9,
                        TestIndices, 0, 9,
                        PrimitiveType.TriangleList, context
                        );
                    queuer.Queue(
                        TestVertices, 9, 3,
                        TestIndices, 9, 3,
                        PrimitiveType.PointList, context
                        );
                }
                finally {
                    queuer.End();
                }
            }

            // TODO: Check results
        }
        public void TestDrawTriangles()
        {
            using (PrimitiveBatchCreator creator = new PrimitiveBatchCreator()) {
                DummyDrawContext dummy = new DummyDrawContext();

                creator.PrimitiveBatch.Begin(QueueingStrategy.Immediate);
                creator.PrimitiveBatch.Draw(new VertexPositionColor[9], dummy);
                creator.PrimitiveBatch.End();
            }
        }
        public void TestGraphicsDeviceReset()
        {
            using (PrimitiveBatchCreator creator = new PrimitiveBatchCreator()) {
                DummyDrawContext dummy = new DummyDrawContext();

                // Simulate a graphics device reset
                creator.MockedGraphicsDeviceService.ResetDevice();

                creator.PrimitiveBatch.Begin(QueueingStrategy.Immediate);
                creator.PrimitiveBatch.Draw(new VertexPositionColor[9], dummy);
                creator.PrimitiveBatch.End();
            }
        }
Example #6
0
        public void TestDrawPrimitiveRange()
        {
            using (PrimitiveBatchCreator creator = new PrimitiveBatchCreator()) {
                DummyDrawContext dummy = new DummyDrawContext();

                creator.PrimitiveBatch.Begin(QueueingStrategy.Immediate);
                try {
                    creator.PrimitiveBatch.Draw(
                        new TestVertex[10], 2, 6, PrimitiveType.PointList, dummy
                        );
                }
                finally {
                    creator.PrimitiveBatch.End();
                }
            }
        }
    public void TestSimpleDrawing() {
      DummyBatchDrawer batchDrawer = new DummyBatchDrawer();
      using(
        DrawContextQueuer<TestVertex> queuer = new DrawContextQueuer<TestVertex>(
          batchDrawer
        )
      ) {
        DummyDrawContext context = new DummyDrawContext();

        queuer.Begin();
        try {
          queuer.Queue(TestVertices, 0, 9, PrimitiveType.TriangleList, context);
          queuer.Queue(TestVertices, 9, 3, PrimitiveType.PointList, context);
        }
        finally {
          queuer.End();
        }
      }
      
      // TODO: Check results
    }
    public void TestGraphicsDeviceReset() {
      using(PrimitiveBatchCreator creator = new PrimitiveBatchCreator()) {
        DummyDrawContext dummy = new DummyDrawContext();

        // Simulate a graphics device reset
        creator.MockedGraphicsDeviceService.ResetDevice();

        creator.PrimitiveBatch.Begin(QueueingStrategy.Immediate);
        creator.PrimitiveBatch.Draw(new VertexPositionColor[9], dummy);
        creator.PrimitiveBatch.End();
      }
    }
    public void TestDrawIndexedTriangles() {
      using(PrimitiveBatchCreator creator = new PrimitiveBatchCreator()) {
        DummyDrawContext dummy = new DummyDrawContext();

        creator.PrimitiveBatch.Begin(QueueingStrategy.Immediate);
        creator.PrimitiveBatch.Draw(
          new VertexPositionColor[9], createIndices(9), dummy
        );
        creator.PrimitiveBatch.End();
      }
    }
    public void TestDrawIndexedPrimitiveRange() {
      using(PrimitiveBatchCreator creator = new PrimitiveBatchCreator()) {
        DummyDrawContext dummy = new DummyDrawContext();

        creator.PrimitiveBatch.Begin(QueueingStrategy.Immediate);
        try {
          creator.PrimitiveBatch.Draw(
            new TestVertex[10], 2, 6,
            createIndices(10), 1, 5,
            PrimitiveType.PointList, dummy
          );
        }
        finally {
          creator.PrimitiveBatch.End();
        }
      }
    }
    public void TestDrawIndexedPrimitives() {
      using(PrimitiveBatchCreator creator = new PrimitiveBatchCreator()) {
        DummyDrawContext dummy = new DummyDrawContext();

        creator.PrimitiveBatch.Begin(QueueingStrategy.Immediate);
        try {
#if !XNA_4
          creator.PrimitiveBatch.Draw(
            new TestVertex[10], createIndices(10), PrimitiveType.PointList, dummy
          );
#endif
          creator.PrimitiveBatch.Draw(
            new TestVertex[10], createIndices(10), PrimitiveType.LineList, dummy
          );
          creator.PrimitiveBatch.Draw(
            new TestVertex[10], createIndices(10), PrimitiveType.LineStrip, dummy
          );
#if !XNA_4
          creator.PrimitiveBatch.Draw(
            new TestVertex[10], createIndices(10), PrimitiveType.TriangleFan, dummy
          );
#endif
          creator.PrimitiveBatch.Draw(
            new TestVertex[9], createIndices(9), PrimitiveType.TriangleList, dummy
          );
          creator.PrimitiveBatch.Draw(
            new TestVertex[10], createIndices(10), PrimitiveType.TriangleStrip, dummy
          );
        }
        finally {
          creator.PrimitiveBatch.End();
        }
      }
    }