/// <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); TerrainTexture = Content.Load <Texture2D>("terrain"); Font = Content.Load <SpriteFont>("MainFont"); Char = Content.Load <Texture2D>("char"); CrosshairTexture = Content.Load <Texture2D>("Crosshair"); Mob player = new Mob(Char, Vector3I.Zero); Calm1 = Content.Load <SoundEffect>("calm1"); Calm1Instance = Calm1.CreateInstance(); AudioEmitter = new AudioEmitter(); AudioListener = new AudioListener(); ObjectPos = Vector3.Zero; Calm1Instance.Apply3D(AudioListener, AudioEmitter); Calm1Instance.IsLooped = true; Calm1Instance.Volume = 1f; // Full volume. Calm1Instance.Play(); RaiseLoadEvent(Content); }
/// <summary> /// Allows the game to run logic such as updating the world, /// checking for collisions, gathering input, and playing audio. /// </summary> /// <param name="gameTime">Provides a snapshot of timing values.</param> protected override void Update(GameTime gameTime) { /*if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed || Keyboard.GetState().IsKeyDown(Keys.Escape)) * Exit();*/ IsMouseVisible = Paused; RaiseUpdateEvent(gameTime); // Move the sound in a circle ObjectPos = new Vector3( (float)Math.Cos(gameTime.TotalGameTime.TotalSeconds) / 2, 0, (float)Math.Sin(gameTime.TotalGameTime.TotalSeconds)); //ObjectPos = MainWorld.Spawn; AudioEmitter.Position = ObjectPos; AudioListener.Position = ObjectPos; Calm1Instance.Apply3D(AudioListener, AudioEmitter); base.Update(gameTime); }