/// <summary> /// Creates a new skybox /// </summary> /// <param name="skyboxTexture">the name of the skybox texture to use</param> public Skybox(Game1 game, Camera camera, String skyboxName) : base(game) { this.camera = camera; this.game = game; skyboxModel = LoadModel(game.Content, skyboxName, out skyboxTextures); }
public AsteroidField(Game1 game, Camera c) : base(game) { this.game = game; currentCamera = c; asteroidField = new BoundingBox(new Vector3(-1200, -300, 400), new Vector3(1200, 300, 1000)); generateAsteroidField(); }
public Control(Game1 g, Player p, Camera current, Boolean pad) : base(g) { game = g; player = p; gamepad = pad; acceleratingFor = 0; lastMouse = Mouse.GetState(); lastKeyboard = Keyboard.GetState(); currentCam = current; Initialize(); }
public void changeCamera() { if (availableCameras != null) { availableCameras.Enqueue(currentCam); currentCam = availableCameras.Dequeue(); foreach (GameComponent component in game.Components) { ICollidable comp = component as ICollidable; if (comp != null) { comp.setCamera(currentCam); } } } }
/// <summary> /// Sets the current camera that the object is being viewed through /// </summary> /// <param name="c">Camera to draw the model using</param> public void setCamera(Camera c) { camera = c; }
public override void Initialize() { float aspectRatio = game.GraphicsDevice.Viewport.AspectRatio; #region Load Models //Load Models Vector3 initPlayerPosition = new Vector3(-500, 550, 500); player = new Player(game, initPlayerPosition, 5f); terrain = new Terrain(game); game.Components.Add(player); game.Components.Add(terrain); #endregion #region Load Cameras //Load Cameras thirdPersonCam = new _3rdPersonCam(game, (player.getPosition()), player, Vector3.Up, aspectRatio); flyByCam = new StaticCam(game, player, Vector3.Up, aspectRatio); firstPersonCam = new FirstPersonCam(game, player.getPosition(), Vector3.Up, aspectRatio); availableCameras = new Queue<Camera>(); availableCameras.Enqueue(thirdPersonCam); availableCameras.Enqueue(flyByCam); currentCam = availableCameras.Dequeue(); #endregion #region setup game objects cameras and draw order player.setCamera(currentCam); player.DrawOrder = 3; terrain.setCamera(currentCam); terrain.DrawOrder = 2; skybox = new Skybox(game, currentCam, "Space"); skybox.DrawOrder = 1; game.Components.Add(skybox); #endregion #region initialize controls input = new Control(game, player, thirdPersonCam, false); game.Components.Add(input); #endregion collisionDetector = new Collision(game); game.Components.Add(collisionDetector); terrainCollisionDetector = new TerrainCollision(game, terrain); game.Components.Add(terrainCollisionDetector); #region Records //places records on the land scape randomly Random rand = new Random(); for (int i = 0; i < 10; i++) { Vector3 pos = new Vector3(rand.Next(-255*30, 0), 0, rand.Next(0, 255*30 )); pos.Y = terrain.getTerrainHeight(pos) + 30; Record newRecord = new Record(game, pos); recordList.Add(newRecord); newRecord.setCamera(currentCam); newRecord.DrawOrder = 3; game.Components.Add(newRecord); } #endregion optionsHaveChanged(); }
public void changeCamera(Camera c) { currentCam = c; }
public override void Initialize() { float aspectRatio = game.GraphicsDevice.Viewport.AspectRatio; #region Load Models //Load Models Vector3 initPlayerPosition = new Vector3(0, 0, 0); player = new Player(game, initPlayerPosition, 5f); moon = new Planet(game, new Vector3(0, 0, 9000), 300f, "moon"); game.Components.Add(player); game.Components.Add(moon); #endregion #region Load Cameras //Load Cameras thirdPersonCam = new _3rdPersonCam(game, (player.getPosition()), player, Vector3.Up, aspectRatio); flyByCam = new StaticCam(game, player, Vector3.Up, aspectRatio); firstPersonCam = new FirstPersonCam(game, player.getPosition(), Vector3.Up, aspectRatio); availableCameras = new Queue<Camera>(); availableCameras.Enqueue(thirdPersonCam); availableCameras.Enqueue(flyByCam); currentCam = availableCameras.Dequeue(); #endregion #region setup game objects cameras and draw order asteroidField = new AsteroidField(game, currentCam); game.Components.Add(asteroidField); player.setCamera(currentCam); player.DrawOrder = 3; moon.setCamera(currentCam); moon.DrawOrder = 3; skybox = new Skybox(game, currentCam, "Space"); skybox.DrawOrder = 1; game.Components.Add(skybox); #endregion #region initialize controls input = new Control(game, player, thirdPersonCam, false); game.Components.Add(input); #endregion collisonDetector = new Collision(game); game.Components.Add(collisonDetector); #region Audio //game.getMusicPlayer().playRandomTrack(); #endregion optionsHaveChanged(); }
public void setCamera(Camera c) { currentCamera = c; }