/// <summary> /// LoadContent will be called once per game and is the place to load /// all of your content. /// </summary> protected override void LoadContent() { // Create a new SpriteBatch, which can be used to draw textures. spriteBatch = new SpriteBatch(GraphicsDevice); // TODO: use this.Content to load your game content here imageKK = Content.Load<Texture2D>(@"Images\KK"); imageBox = Content.Load<Texture2D>(@"Images\BoxSides"); imageBall = Content.Load<Texture2D>(@"Images\football"); var model = new KModel(); model.TexCoordsAreInPixels = false; for (int i = 3; i < 100; i = i+2) { var z = -i / 2; model.AddQuad( model.AddVertex(new Vector3(-i, -i, z)), model.AddVertex(new Vector3(i, -i, z)), model.AddVertex(new Vector3(-i, i, z)), model.AddVertex(new Vector3(i, i, z)), new Rectangle(0, 0, 1, 1)); } _drawableKK = new DrawableModel(model, imageKK, GraphicsDevice); model = new KModel(); model.AddBox(new BoundingBox(new Vector3(-5, -5, 1), new Vector3(-3, -3, 3)), new Rectangle(0, 0, 64, 64)); model.AddBox(new BoundingBox(new Vector3(-5, 3, 1), new Vector3(-3, 5, 3)), new Rectangle(0, 64, 64, 64)); model.AddBox(new BoundingBox(new Vector3(3, -5, 1), new Vector3(5, -3, 3)), new Rectangle(0, 64, 64, 64)); model.AddBox(new BoundingBox(new Vector3(3, 3, 1), new Vector3(5, 5, 3)), new Rectangle(0, 0, 64, 64)); _drawableBox = new DrawableModel(model, imageBox, GraphicsDevice); model = GeometricalPrimitives.CreateBall(2, new Rectangle(0, 0, 1, 1)); model.TexCoordsAreInPixels = false; /* model.Transform(Matrix.CreateTranslation(1, 0, 0)); var model2 = GeometricalPrimitives.CreateBall(3, new Rectangle(0, 0, 1, 1)); model2.Transform(Matrix.CreateScale(0.5f)); model2.Transform(Matrix.CreateTranslation(-1, 0, 0)); model.Append(model2);*/ _drawableBall = new DrawableModel(model, imageBall, GraphicsDevice); // Matrix test var mat = Matrix.CreateTranslation(1, 2, 3); Console.WriteLine(mat); }
/// <summary> /// LoadContent will be called once per game and is the place to load /// all of your content. /// </summary> protected override void LoadContent() { // Create a new SpriteBatch, which can be used to draw textures. spriteBatch = new SpriteBatch(GraphicsDevice); // TODO: use this.Content to load your game content here imageKK = Content.Load<Texture2D>(@"Images\KK"); imageBox = Content.Load<Texture2D>(@"Images\BoxSides"); imageBall = Content.Load<Texture2D>(@"Images\football"); imageSpikyBall = Content.Load<Texture2D>(@"Images\spiky"); var model = new KModel(); model.TexCoordsAreInPixels = false; for (int i = 3; i < 100; i = i+2) { var z = -i / 2; model.AddQuad( model.AddVertex(new Vector3(-i, -i, z)), model.AddVertex(new Vector3(i, -i, z)), model.AddVertex(new Vector3(-i, i, z)), model.AddVertex(new Vector3(i, i, z)), new Rectangle(0, 0, 1, 1)); } _drawableKK = new DrawableModel(model, imageKK, GraphicsDevice, false); model = new KModel(); model.AddBox(new BoundingBox(new Vector3(-5, 3, 1), new Vector3(-3, 5, 3)), new Rectangle(0, 64, 64, 64), true); model.AddBox(new BoundingBox(new Vector3(3, 3, 1), new Vector3(5, 5, 3)), new Rectangle(0, 0, 64, 64), true); model.AddBox(new BoundingBox(new Vector3(-5, -5, 1), new Vector3(-3, -3, 3)), new Rectangle(0, 0, 64, 64), true); for (int i = 0; i < 11; i++) for (int j = 0; j < 11; j++) if (i % 2 == 0 || j % 2 == 0) { model.AddBox(new BoundingBox(new Vector3(3 + 2*i, -5 - 2*j, 1), new Vector3(5 + 2*i, -3 - 2*j, 3)), new Rectangle(0, 128, 225, 225), false); } _drawableBox = new DrawableModel(model, imageBox, GraphicsDevice, false); model = GeometricalPrimitives.CreateBall(2, new Rectangle(0, 0, 1, 1)); model.TexCoordsAreInPixels = false; _drawableBall = new DrawableModel(model, imageBall, GraphicsDevice, true); model = GeometricalPrimitives.CreateSpikyBall(3, 0.2f, new Rectangle(0, 0, 1, 1)); model.TexCoordsAreInPixels = false; _drawableSpikyBall = new DrawableModel(model, imageSpikyBall, GraphicsDevice, true); // Matrix test var mat = Matrix.CreateTranslation(1, 2, 3); Console.WriteLine(mat); }
/// <summary> /// LoadContent will be called once per game and is the place to load /// all of your content. /// </summary> protected override void LoadContent() { // Create a new SpriteBatch, which can be used to draw textures. _spriteBatch = new SpriteBatch(GraphicsDevice); _font = Content.Load<SpriteFont>(@"Fonts\TestFont"); // TODO: use this.Content to load your game content here _imageKK = Content.Load<Texture2D>(@"Images\KK"); var imageFloor = Content.Load<Texture2D>(@"Images\FloorWoodLight"); var imageBox = Content.Load<Texture2D>(@"Images\BoxSides"); var imageBall = Content.Load<Texture2D>(@"Images\football"); var imageSpikyBall = Content.Load<Texture2D>(@"Images\spiky"); _levelSearch = new Search3DSimple<FacetRef>(); var model = new KModel(); model.TexCoordsAreInPixels = false; int size = 100; model.AddQuad( model.AddVertex(new Vector3(-size, -size, 0)), model.AddVertex(new Vector3(size, -size, 0)), model.AddVertex(new Vector3(-size, size, 0)), model.AddVertex(new Vector3(size, size, 0)), new Rectangle(0, 0, 10, 10)); _drawableKK = new DrawableModel(model, imageFloor, GraphicsDevice, false); ModelSearch.AddModel(_levelSearch, model); model = new KModel(); var boxes = new List<Vector3> { new Vector3(1, 1, 0), new Vector3(2, 1, 0), new Vector3(2, 1, 1), new Vector3(2, 1, 2), new Vector3(3, 1, 0), new Vector3(3, 1, 1), new Vector3(3, 1, 2), new Vector3(-2, 1, 0), new Vector3(-2, 1, 1), new Vector3(-3, -3, 0), new Vector3(-3, -3, 1), new Vector3(-3, -3, 2), new Vector3(-3, -3, 3), new Vector3(-3, -6, 0), new Vector3(-3, -6, 1), new Vector3(-3, -6, 2), new Vector3(-3, -6, 3), new Vector3(-3, -4, 3), new Vector3(-3, -5, 3), }; for (int j = 0; j < 5; j++) for (int i = -20; i < 20; i++) { //boxes.Add(new Vector3(i, -20, j)); boxes.Add(new Vector3(-20, i + 1, j)); boxes.Add(new Vector3(i + 1, 20, j)); boxes.Add(new Vector3(20, i, j)); } foreach (var corner in boxes) model.AddBox(new BoundingBox(corner, corner + new Vector3(1, 1, 1)), new Rectangle(0, 128, 225, 225), false); /* model.AddBox(new BoundingBox(new Vector3(3, 3, 1), new Vector3(5, 5, 3)), new Rectangle(0, 0, 64, 64), true); model.AddBox(new BoundingBox(new Vector3(-5, -5, 1), new Vector3(-3, -3, 3)), new Rectangle(0, 0, 64, 64), true); */ model.AddBox(new BoundingBox(new Vector3(2, -5, 0), new Vector3(2, -5, 0) + new Vector3(2.5f, 2.5f, 2.5f)), new Rectangle(0, 128, 225, 225), false); _drawableBox = new DrawableModel(model, imageBox, GraphicsDevice, false); ModelSearch.AddModel(_levelSearch, model); model = GeometricalPrimitives.CreateBall(2, new Rectangle(0, 0, 1, 1)); model.TexCoordsAreInPixels = false; _drawableBall = new DrawableModel(model, imageBall, GraphicsDevice, true); model = GeometricalPrimitives.CreateSpikyBall(3, 0.2f, new Rectangle(0, 0, 1, 1)); model.TexCoordsAreInPixels = false; _drawableSpikyBall = new DrawableModel(model, imageSpikyBall, GraphicsDevice, true); SceneRenderer.EnableShadows(GraphicsDevice, Content.Load<Effect>(@"Shaders\ShadowCasting"), 4, 2048); InitLights(); }