Пример #1
0
        public void cameraRestore()
        {
            Vector3 cameraPosition = new Vector3(100, 0, camera.Transform.LocalPosition.Z);

            cameraPosition.Y = 5 + terrainRenderer.GetAltitude(cameraPosition);
            camera.Transform.LocalPosition = cameraPosition;
            noisyToggle           = false;
            camera.FieldOfView    = 1;
            hoopLogic.MaxSpeed    = hoopLogic.lowMaxSpeed;
            cameraCurrectVelocity = Vector3.Zero;
            curUpDown             = 0;
            curLeftRight          = 0;
            MediaPlayer.Stop();
            waveOut.Play();
        }
Пример #2
0
        public override void LoadContent()
        {
            if (content == null)
            {
                content = new ContentManager(ScreenManager.Game.Services, "Content");
            }

            // Create a new SpriteBatch, which can be used to draw textures.
            spriteBatch = new SpriteBatch(GameScreenManager.GraphicsDevice);
            background  = content.Load <Texture2D>("back");

            // Setting up render target
            PresentationParameters pp = ScreenManager.GraphicsDevice.PresentationParameters;

            renderTarget = new RenderTarget2D(ScreenManager.GraphicsDevice, pp.BackBufferWidth, pp.BackBufferHeight, true, SurfaceFormat.Color, DepthFormat.Depth24);
            postProcess  = content.Load <Effect>("PostProcess");
            postProcess.Parameters["darkenFactor"].SetValue(1f);

            virtualTerrain               = content.Load <Effect>("virtualTerrain");
            CustomTerrainRenderer.wire   = content.Load <Texture2D>("wire");
            CustomTerrainRenderer.effect = virtualTerrain;

            terrainRenderer = new CustomTerrainRenderer(Vector2.One * 200);

            terrainObject       = GameObject3d.Initialize();
            terrainRenderer.obj = terrainObject;

            terrainObject.material = terrainRenderer;

            //SET CAM
            camera = new Camera();
            camera.Transform.LocalPosition += new Vector3(100, 0, 10);
            camera.Transform.Rotate(Vector3.Up, (float)Math.PI);
            Vector3 pos = camera.Transform.Position;

            pos.Y = 2 + terrainRenderer.GetAltitude(camera.Transform.Position);
            camera.Transform.LocalPosition = pos;
            camera.NearPlane = 0.001f;

            // Setup skybox
            camera.skybox = new Skybox {
                skyboxModel = content.Load <Model>("Box"), skyboxTexture = background
            };
            Skybox.shader = content.Load <Effect>("skybox");

            //SET HOOP
            hoopLogic.player   = camera;
            hoopObject.lastPos = camera.Transform.LocalPosition + new Vector3(0, 2, 100);
            hoopObject.Initialize();

            //sfx
            staticNoise        = content.Load <Song>("static");
            MediaPlayer.Volume = 0.2f;

            foreach (GameObject3d gameObject in GameObject3d.activeGameObjects)
            {
                gameObject.Start();
            }
            GameObject.gameStarted = true;
        }