public static dynamic GetTSObject(ViewCamera dynObject)
 {
     if (dynObject is null)
     {
         return(null);
     }
     return(dynObject.teklaObject);
 }
Exemple #2
0
        // Call CaseInsensitiveComparer.Compare with the parameters reversed.
        public int Compare(VisibleLight x, VisibleLight y)
        {
            //try to switch to
            Vector3 xDepthMin = ViewCamera.WorldToScreenPoint(x.light.transform.position - CameraForward * x.light.range);
            Vector3 yDepthMin = ViewCamera.WorldToScreenPoint(y.light.transform.position - CameraForward * y.light.range);

            return(xDepthMin.z < yDepthMin.z? -1:1); // screen space depth
        }
        /// <summary>
        /// creates two cameras and viewports for split-screen.
        /// </summary>
        public void InitCamera()
        {
            //  Make two mutiple cameras
            ViewCamera followViewCamera = new ViewCamera();

            FollowCamera[] followCamera = new FollowCamera[2]
            {
                new FollowCamera(),
                new FollowCamera(),
            };

            int playerCount = GameLevel.PlayerCountInLevel;

            for (int i = 0; i < playerCount; i++)
            {
                GamePlayer player = GameLevel.GetPlayerInLevel(i);

                followCamera[i].SetPespective(
                    MathHelper.ToRadians(this.GameLevel.Info.FOV),
                    (float)FrameworkCore.ViewWidth,
                    (float)FrameworkCore.ViewHeight / playerCount,
                    1.0f, 1000.0f);

                // Follow camera offset position setting
                followCamera[i].TargetOffset =
                    player.SpecData.CameraTargetOffset;

                followCamera[i].PositionOffset =
                    player.SpecData.CameraPositionOffset;

                int splitX      = 0;
                int splitY      = 0;
                int splitWidth  = 0;
                int splitHeight = 0;

                //  1P viewport area
                if (i == 0)
                {
                    splitX = 0;
                    splitY = 0;
                }
                //  2P viewport area
                else if (i == 1)
                {
                    splitX = 0;
                    splitY = FrameworkCore.ViewHeight / playerCount;
                }

                splitWidth  = FrameworkCore.ViewWidth;
                splitHeight = FrameworkCore.ViewHeight / playerCount;

                followViewCamera.Add(followCamera[i],
                                     new Rectangle(splitX, splitY, splitWidth, splitHeight));
            }

            Viewer.AddCamera("Follow", followViewCamera);
            Viewer.SetCurrentCamera("Follow");
        }
Exemple #4
0
        protected override void CreateScene()
        {
            ViewCamera mainCamera = new ViewCamera("MainCamera", new Vector3(500, 500, 500), Vector3.Zero);

            mainCamera.BackgroundColor = Color.Black;
            EntityManager.Add(mainCamera.Entity);

            Entity drawable = new Entity("Drawable")
                              .AddComponent(new DrawableLines(1));

            EntityManager.Add(drawable);
        }
        /// <summary>
        /// creates Hud images for versus game.
        /// </summary>
        public override void CreateHud()
        {
            ViewCamera viewCamera = FrameworkCore.CurrentCamera;
            int        viewCount  = viewCamera.Count;

            this.textKillScore          = new GameText[viewCount];
            this.textKillConditionScore = new GameText[viewCount];
            Color scoreColor = new Color(136, 217, 224);

            // kill score and condition score
            for (int i = 0; i < viewCount; i++)
            {
                this.textKillScore[i] = new GameText(
                    this.fontHud, "0", 0, 0, scoreColor);

                this.refSceneHudRoot.AddChild(this.textKillScore[i]);

                this.textKillConditionScore[i] = new GameText(
                    this.fontHud,
                    string.Format("/ {0}", RobotGameGame.VersusGameInfo.killPoint),
                    0, 0, scoreColor);

                this.refSceneHudRoot.AddChild(this.textKillConditionScore[i]);
            }

            this.spriteHudVersus = new GameSprite2D();
            this.spriteHudVersus.Create(4, "Textures/VS_Text");
            this.refSceneHudRoot.AddChild(this.spriteHudVersus);

            //  1P image
            this.spriteObjHudVersus1P =
                this.spriteHudVersus.AddSprite(0, "Versus 1P");

            //  2P image
            this.spriteObjHudVersus2P =
                this.spriteHudVersus.AddSprite(1, "Versus 2P");

            //  You win
            this.spriteObjHudVersusWin =
                this.spriteHudVersus.AddSprite(2, "Versus Win");

            this.spriteObjHudVersusWin.Visible = false;

            //  You lose
            this.spriteObjHudVersusLose =
                this.spriteHudVersus.AddSprite(3, "Versus Lose");

            this.spriteObjHudVersusLose.Visible = false;

            base.CreateHud();
        }
Exemple #6
0
        protected override void CreateScene()
        {
            ViewCamera viewCamera = new ViewCamera("view", new Vector3(0f, 0f, 2.5f), Vector3.Zero);

            viewCamera.BackgroundColor = Color.CornflowerBlue;
            EntityManager.Add(viewCamera.Entity);

            var cube = new Entity("Cube")
                       .AddComponent(new Transform3D())
                       .AddComponent(Model.CreateCube())
                       .AddComponent(new MaterialsMap())
                       .AddComponent(new ModelRenderer());

            EntityManager.Add(cube);
        }
Exemple #7
0
        protected override void CreateScene()
        {
            RenderManager.BackgroundColor = Color.Black;
            //WaveServices.ScreenLayers.SetDiagnosticsActive(true);

            ViewCamera mainCamera = new ViewCamera("MainCamera", new Vector3(0f, 10f, 15f), Vector3.Zero);

            EntityManager.Add(mainCamera.Entity);

            RenderManager.SetActiveCamera(mainCamera.Entity);

            Entity drawable = new Entity("Drawable")
                              .AddComponent(new DebugShapes());

            EntityManager.Add(drawable);
        }
        /// <summary>
        /// calling when screen size has changed.
        /// changes the sizes of camera and Hud when the screen size is changed.
        /// </summary>
        /// <param name="viewRect">new view area</param>
        public override void OnSize(Rectangle newRect)
        {
            base.OnSize(newRect);

            Viewport viewport = FrameworkCore.CurrentViewport;

            //  Follow Camera
            ViewCamera followViewCamera = Viewer.GetViewCamera("Follow");

            followViewCamera.Resize(0,
                                    viewport.X, viewport.Y,
                                    viewport.Width, viewport.Height);

            //  Resizing Hud
            ResizeHud();
        }
Exemple #9
0
        protected override void CreateScene()
        {
            this.CreateMaterials();

            this.camera = new ViewCamera("camera", new Vector3(0, 5, 13), new Vector3(0, 5, 0))
            {
                FieldOfView = 0.8f,
                NearPlane   = 0.1f
            };
            this.camera.Entity.AddComponent(this.skyboxMaps[this.currentEnv]);
            EntityManager.Add(camera);

            this.CreateVenus();

            this.CreateUI();

            this.UpdateMaterials();
        }
Exemple #10
0
        protected override void CreateScene()
        {
            ViewCamera camera = new ViewCamera("Camera", new Vector3(0f, 0f, 5f), Vector3.Zero);

            RenderManager.SetActiveCamera(camera.Entity);

            EntityManager.Add(camera.Entity);

            CreateCube("Cube1", Vector3.Zero);
            CreateCube("Cube2", new Vector3(5f, 0f, 0f));
            CreateCube("Cube3", new Vector3(-5f, 0f, 0f));
            CreateCube("Cube4", new Vector3(5f, 0f, 5f));
            CreateCube("Cube5", new Vector3(-5f, 0f, 5f));
            CreateCube("Cube6", new Vector3(5f, 0f, -5f));
            CreateCube("Cube7", new Vector3(-5f, 0f, -5f));
            CreateCube("Cube8", new Vector3(0f, 0f, 5f));
            CreateCube("Cube9", new Vector3(0f, 0f, -5f));
        }
Exemple #11
0
        protected override void CreateScene()
        {
            ViewCamera camera = new ViewCamera("MainCamera", new Vector3(2, 1, 2), new Vector3(0, 1, 0));

            camera.BackgroundColor = Color.CornflowerBlue;
            EntityManager.Add(camera.Entity);

            Entity animatedModel = new Entity("Isis")
                                   .AddComponent(new Transform3D())
                                   .AddComponent(new BoxCollider())
                                   .AddComponent(new SkinnedModel("Content/isis.wpk"))
                                   .AddComponent(new MaterialsMap(new BasicMaterial("Content/isis-difuse.wpk")))
                                   .AddComponent(new Animation3D("Content/isis-animations.wpk"))
                                   .AddComponent(new SkinnedModelRenderer());

            anim = animatedModel.FindComponent <Animation3D>();
            EntityManager.Add(animatedModel);
        }
Exemple #12
0
        //This method is called every frame and updates everything in the game, then notifies the view.
        public void Timer_Tick(object sender, EventArgs e)
        {
            Ticks++;
            UpdatePlayer();
            UpdateAI();
            UpdateWells();
            if (Ticks % WellSpawnFreq == 0)
            {
                SpawnWell();
            }
            if (Ticks % 4 == 0 && Orbs.Count < 200)
            {
                SpawnOrb();
            }
            if (AIShips.Count < 3)
            {
                SpawnAI();
            }

            GameUpdatedEvent(this, ViewCamera.GetCameraFrame());
        }
Exemple #13
0
        protected override void CreateScene()
        {
            ViewCamera camera = new ViewCamera("MainCamera", new Vector3(0, 0, 3), Vector3.Zero);

            camera.BackgroundColor = Color.CornflowerBlue;
            EntityManager.Add(camera.Entity);

            Entity primitive = new Entity("Primitive")
                               .AddComponent(new Spinner()
            {
                AxisTotalIncreases = new Vector3(1f, 2f, 1f)
            })
                               .AddComponent(new Transform3D())
                               .AddComponent(Model.CreateTeapot())
                               .AddComponent(new BoxCollider())
                               .AddComponent(new ChangeModel())
                               .AddComponent(new MaterialsMap())//new BasicMaterial(Color.White)))
                               .AddComponent(new ModelRenderer());

            EntityManager.Add(primitive);
        }
Exemple #14
0
        protected override void CreateScene()
        {
            #region Scene creation
            // Create the camera
            ViewCamera camera = new ViewCamera("MainCamera", new Vector3(2, 1, 2), new Vector3(0, 1, 0));
            EntityManager.Add(camera.Entity);

            RenderManager.SetActiveCamera(camera.Entity);

            // Create the model. Note of we add the Animation3D component.
            Entity animatedModel = new Entity("Isis")
                                   .AddComponent(new Transform3D())
                                   .AddComponent(new BoxCollider())
                                   .AddComponent(new SkinnedModel("Content/isis.wpk"))
                                   .AddComponent(new MaterialsMap(new BasicMaterial("Content/isis-difuse.wpk")))
                                   .AddComponent(new Animation3D("Content/isis-animations.wpk"))
                                   .AddComponent(new SkinnedModelRenderer())
                                   .AddComponent(new IsisBehavior());

            // Create the sound bank
            SoundBank spankerSlamSounds = new SoundBank();
            spankerSlamSounds.Add(SoundsManager.FootStep1);
            spankerSlamSounds.Add(SoundsManager.FootStep2);
            WaveServices.SoundPlayer.RegisterSoundBank(spankerSlamSounds);

            RenderManager.BackgroundColor = Color.CornflowerBlue;
            #endregion

            #region Key Events
            // Add the key frames. The first parameter is the name of the animation, the second the number of frames and the third the name of the event. As you can see, we raise two events when
            // the animation is "Attack" ( see the Animation3D example for further information ). The first event is raised on frame 10 and the second on frame 25. See the SpankerBehavior class
            animation = animatedModel.FindComponent <Animation3D>()
                        .AddKeyFrameEvent("Jog", 1, "DoFootstep")
                        .AddKeyFrameEvent("Jog", 14, "DoFootstep")
                        .AddKeyFrameEvent("Jog", 26, "DoFootstep")
                        .AddKeyFrameEvent("Jog", 39, "DoFootstep");
            EntityManager.Add(animatedModel);
            #endregion
        }
Exemple #15
0
        private void CreateViewport()
        {
            Mogre.NameValuePairList parameters = new Mogre.NameValuePairList();

            parameters["Name"]         = "intViewCamera" + Mogre.StringConverter.ToString(ViewportIndex);
            parameters["ClipDistance"] = "0.1 40000";

            BaseEditor scnMgr = MogitorsRoot.Instance.SceneManagerEditor;

            ViewCamera = CameraEditor.Factory.CreateObject(ref scnMgr, parameters) as CameraEditor;
            ViewCamera.Load();

            this.handle = MogitorsRoot.Instance.RenderTarget.AddViewport(ViewCamera.Camera, (int)ViewportIndex,
                                                                         dimensions.x, dimensions.y, dimensions.z, dimensions.w);

            if (Name == "")
            {
                this.name = "Viewport" + Mogre.StringConverter.ToString(ViewportIndex);
            }

            ViewCamera.Camera.AspectRatio = (float)this.handle.ActualWidth / (float)this.handle.ActualHeight;
            ViewCamera.ShowHelper         = false;

            ActiveCamera = ViewCamera;
            this.handle.BackgroundColour = this.colour;

            PopCompositors();

            ProjectOptions opt = MogitorsRoot.Instance.ProjectOptions;

            if (opt.Cameras.Count > 0)
            {
                ViewCamera.Position    = opt.Cameras[opt.Cameras.Count - 1].Position;
                ViewCamera.Orientation = opt.Cameras[opt.Cameras.Count - 1].Orientation;
            }

            LoadEditorObjects();
        }
        /// <summary>
        /// initializes the 3rd person view camera which follows player.
        /// </summary>
        public void InitCamera()
        {
            //  Follow Camera
            FollowCamera followCamera = new FollowCamera();

            followCamera.SetPespective(MathHelper.ToRadians(this.GameLevel.Info.FOV),
                                       (float)FrameworkCore.ViewWidth,
                                       (float)FrameworkCore.ViewHeight,
                                       1.0f, 1000.0f);

            // Follow camera offset position setting
            followCamera.TargetOffset =
                GameLevel.SinglePlayer.SpecData.CameraTargetOffset;

            followCamera.PositionOffset =
                GameLevel.SinglePlayer.SpecData.CameraPositionOffset;

            ViewCamera followViewCamera = new ViewCamera(followCamera,
                                                         new Rectangle(0, 0, FrameworkCore.ViewWidth, FrameworkCore.ViewHeight));

            Viewer.AddCamera("Follow", followViewCamera);
            Viewer.SetCurrentCamera("Follow");
        }
Exemple #17
0
        public override bool UnLoad()
        {
            if (!IsLoaded)
            {
                return(true);
            }

            UnLoadAllChildren();
            DestroyBoundingBox();

            if (this.handle != null)
            {
                //throw new NotImplementedException("this.viewGrid = null");

                ViewCamera.Destroy(false);
                ViewCamera = null;

                MogitorsRoot.Instance.RenderTarget.RemoveViewport(this.handle.ZOrder);
                this.handle = null;
            }

            IsLoaded = false;
            return(true);
        }
Exemple #18
0
        protected override void CreateScene()
        {
            RenderManager.RegisterLayerBefore(new SkyLayer(this.RenderManager), DefaultLayers.Alpha);

            ViewCamera camera = new ViewCamera("camera", new Vector3(0, 5, 13), new Vector3(0, 5, 0))
            {
                FieldOfView = 0.8f,
                NearPlane   = 0.1f
            };

            EntityManager.Add(camera);

            RenderManager.SetActiveCamera(camera.Entity);

            this.CreateMaterials();

            this.CreateVenus();

            this.CreateSky();

            this.CreateUI();

            this.UpdateMaterials();
        }
 public frmShowMaxCameral(ViewCamera viewCamera)
 {
     InitializeComponent();
     mviewCamera = viewCamera;
     this.Controls.Add(viewCamera);
 }
Exemple #20
0
        /// <summary>
        /// Creates the scene.
        /// </summary>
        /// <remarks>
        /// This method is called before all <see cref="T:WaveEngine.Framework.Entity" /> instances in this instance are initialized.
        /// </remarks>
        protected override void CreateScene()
        {
            string name = string.Empty;

            ViewCamera camera = new ViewCamera("MainCamera", new Vector3(0, 0, 3), Vector3.Zero);

            EntityManager.Add(camera.Entity);
            RenderManager.SetActiveCamera(camera.Entity);

            Entity primitive = new Entity("Primitive")
                               .AddComponent(new Spinner()
            {
                AxisTotalIncreases = new Vector3(1f, 2f, 1f)
            })
                               .AddComponent(new Transform3D())
                               .AddComponent(new BoxCollider())
                               .AddComponent(new MaterialsMap())
                               .AddComponent(new ModelRenderer());

            switch (this.index)
            {
            case (0):
                name = "Push";
                primitive.AddComponent(Model.CreateTeapot());
                RenderManager.BackgroundColor = Color.Black;
                break;

            case (1):
                name = "Color Fade";
                primitive.AddComponent(Model.CreateCapsule());
                RenderManager.BackgroundColor = Color.DarkBlue;
                break;

            case (2):
                name = "Doorway";
                primitive.AddComponent(Model.CreateSphere());
                RenderManager.BackgroundColor = Color.DarkCyan;
                break;

            case (3):
                name = "Comb";
                primitive.AddComponent(Model.CreateTorus());
                RenderManager.BackgroundColor = Color.DarkGoldenrod;
                break;

            case (4):
                name = "Cover";
                primitive.AddComponent(Model.CreateCapsule());
                RenderManager.BackgroundColor = Color.DarkGray;
                break;

            case (5):
                name = "Curtains";
                primitive.AddComponent(Model.CreatePyramid());
                RenderManager.BackgroundColor = Color.DarkGreen;
                break;

            case (6):
                name = "Falling Lines";
                primitive.AddComponent(Model.CreatePlane());
                RenderManager.BackgroundColor = Color.DarkKhaki;
                break;

            case (7):
                name = "Fan";
                primitive.AddComponent(Model.CreateCone());
                RenderManager.BackgroundColor = Color.DarkMagenta;
                break;

            case (8):
                name = "Rotate";
                primitive.AddComponent(Model.CreateCube());
                RenderManager.BackgroundColor = Color.DarkOliveGreen;
                break;

            case (9):
                name = "Scale";
                primitive.AddComponent(Model.CreateTeapot());
                RenderManager.BackgroundColor = Color.DarkOrange;
                break;

            case (10):
                name = "Shrink and Spin";
                primitive.AddComponent(Model.CreateCapsule());
                RenderManager.BackgroundColor = Color.DarkOrchid;
                break;

            case (11):
                name = "Spinning Squares";
                primitive.AddComponent(Model.CreateSphere());
                RenderManager.BackgroundColor = Color.DarkRed;
                break;

            case (12):
                name = "Uncover";
                primitive.AddComponent(Model.CreateTorus());
                RenderManager.BackgroundColor = Color.DarkSalmon;
                break;

            case (13):
                name = "Zoom";
                primitive.AddComponent(Model.CreatePyramid());
                RenderManager.BackgroundColor = Color.DarkSeaGreen;
                break;

            case (14):
                name = "Chequered";
                primitive.AddComponent(Model.CreatePlane());
                RenderManager.BackgroundColor = Color.DarkSlateBlue;
                break;

            case (15):
                name = "Cross Fade";
                primitive.AddComponent(Model.CreateCube());
                RenderManager.BackgroundColor = Color.DarkSlateGray;
                break;

            default:
                break;
            }

            Button button = new Button()
            {
                Text = string.Format("Next scene with {0} transition", name),
                HorizontalAlignment = HorizontalAlignment.Center,
                VerticalAlignment   = VerticalAlignment.Bottom,
                Width  = 400,
                Margin = new Thickness(10),
            };

            button.Click += this.OnClick;

            this.EntityManager.Add(button);
            this.EntityManager.Add(primitive);
        }
        /// <summary>
        /// calling when screen size has changed.
        /// changes the sizes of camera and Hud when the screen size is changed.
        /// </summary>
        /// <param name="viewRect">new view area</param>
        public override void OnSize(Rectangle newRect)
        {
            base.OnSize(newRect);

            int      playerCount = GameLevel.PlayerCountInLevel;
            Viewport viewport    = FrameworkCore.CurrentViewport;

            //  split-screen Camera
            ViewCamera followViewCamera = Viewer.GetViewCamera("Follow");

            for (int i = 0; i < playerCount; i++)
            {
                GamePlayer player = GameLevel.GetPlayerInLevel(i);

                int splitX      = 0;
                int splitY      = 0;
                int splitWidth  = 0;
                int splitHeight = 0;

                //  1P viewport area
                if (i == 0)
                {
                    splitX = 0;
                    splitY = 0;
                }
                //  2P viewport area
                else if (i == 1)
                {
                    splitX = 0;
                    splitY = viewport.Height / playerCount;
                }

                splitWidth  = viewport.Width;
                splitHeight = viewport.Height / playerCount;

                //  Resizing camera
                followViewCamera.Resize(i,
                                        splitX, splitY, splitWidth, splitHeight);
            }

            //  Resize Hud
            {
                int        posX = 0, posY = 0, scaledWidth = 0, scaledHeight = 0, offsetY = 0;
                ViewCamera viewCamera = FrameworkCore.CurrentCamera;
                int        viewCount  = viewCamera.Count;

                float scaleFactor = 1.0f;

                if (GameLevel.Info.GamePlayType == GamePlayTypeId.Versus)
                {
                    scaleFactor = 0.8f;
                }

                //  Scaling image size and positioning for screen resolution
                Vector2 sizeScale = new Vector2(
                    (float)FrameworkCore.ViewWidth * scaleFactor /
                    (float)ViewerWidth.Width1080,
                    (float)FrameworkCore.ViewHeight * scaleFactor /
                    (float)ViewerHeight.Height1080);

                Vector2 posScale = new Vector2(
                    (float)FrameworkCore.ViewWidth * scaleFactor /
                    (float)ViewerWidth.Width1080,
                    (float)FrameworkCore.ViewHeight * scaleFactor /
                    (float)ViewerHeight.Height1080);

                //  if versus mode, apply width offset rate
                if (GameLevel.Info.GamePlayType == GamePlayTypeId.Versus)
                {
                    posScale.X *= 1.3f;
                }

                for (int i = 0; i < viewCount; i++)
                {
                    Viewport view = viewCamera.GetViewport(i);

                    offsetY = (int)view.Y;

                    // kill score and condition score
                    this.textKillScore[i].PosX = (int)(215 * posScale.X);
                    this.textKillScore[i].PosY =
                        (int)((float)view.Height * 0.68f) + offsetY;

                    this.textKillConditionScore[i].PosX = (int)(300 * posScale.X);
                    this.textKillConditionScore[i].PosY =
                        (int)((float)view.Height * 0.76f) + offsetY;

                    this.textKillScore[i].Scale          = 1.6f;
                    this.textKillConditionScore[i].Scale = 0.8f;

                    float textScale = 1.4f * (float)FrameworkCore.ViewWidth /
                                      (float)ViewerWidth.Width720;

                    this.textKillScore[i].Scale          *= textScale;
                    this.textKillConditionScore[i].Scale *= textScale;
                }

                //  1P image
                this.spriteObjHudVersus1P.SourceRectangle = new Rectangle(
                    82, 560,
                    image1PWidth, image1PHeight);

                this.spriteObjHudVersus1P.ScreenRectangle = new Rectangle(
                    (int)(FrameworkCore.ViewWidth * 0.05f),
                    (int)(FrameworkCore.ViewHeight / 2 * 0.76f),
                    (int)((float)image1PWidth * sizeScale.X),
                    (int)((float)image1PHeight * sizeScale.Y));

                //  2P image
                this.spriteObjHudVersus2P.SourceRectangle = new Rectangle(
                    532, 560,
                    image1PWidth, image1PHeight);

                offsetY = (FrameworkCore.ViewHeight / 2);
                this.spriteObjHudVersus2P.ScreenRectangle = new Rectangle(
                    (int)(FrameworkCore.ViewWidth * 0.05f),
                    (int)((FrameworkCore.ViewHeight / 2 * 0.76f) + offsetY),
                    (int)((float)image1PWidth * sizeScale.X),
                    (int)((float)image1PHeight * sizeScale.Y));

                this.spriteObjHudVersusWin.SourceRectangle =
                    new Rectangle(108, 55, imageWinWidth, imageWinHeight);
                this.spriteObjHudVersusLose.SourceRectangle =
                    new Rectangle(48, 370, imageLoseWidth, imageLoseHeight);

                if (this.isFinishedVersus)
                {
                    for (int i = 0; i < GameLevel.PlayerCountInLevel; i++)
                    {
                        GamePlayer player = GameLevel.GetPlayerInLevel(i);

                        //  You win
                        if (RobotGameGame.VersusGameInfo.killPoint <= player.KillPoint)
                        {
                            scaledWidth  = (int)((float)imageWinWidth * sizeScale.X);
                            scaledHeight = (int)((float)imageWinHeight * sizeScale.Y);

                            posX = (int)((FrameworkCore.ViewWidth / 2) -
                                         (scaledWidth / 2));

                            posY = (int)((FrameworkCore.ViewHeight / 2) -
                                         (scaledHeight / 2));

                            if (player.PlayerIndex == PlayerIndex.One)
                            {
                                posY -= FrameworkCore.ViewHeight / 4;
                            }
                            else if (player.PlayerIndex == PlayerIndex.Two)
                            {
                                posY += FrameworkCore.ViewHeight / 4;
                            }

                            this.spriteObjHudVersusWin.ScreenRectangle = new Rectangle(
                                posX, posY,
                                scaledWidth, scaledHeight);
                        }
                        //  You lose
                        else
                        {
                            scaledWidth  = (int)((float)imageLoseWidth * sizeScale.X);
                            scaledHeight = (int)((float)imageLoseHeight * sizeScale.Y);

                            posX = (int)((FrameworkCore.ViewWidth / 2) -
                                         (scaledWidth / 2));

                            posY = (int)((FrameworkCore.ViewHeight / 2) -
                                         (scaledHeight / 2));

                            if (player.PlayerIndex == PlayerIndex.One)
                            {
                                posY -= FrameworkCore.ViewHeight / 4;
                            }
                            else if (player.PlayerIndex == PlayerIndex.Two)
                            {
                                posY += FrameworkCore.ViewHeight / 4;
                            }

                            this.spriteObjHudVersusLose.ScreenRectangle =
                                new Rectangle(posX, posY, scaledWidth, scaledHeight);
                        }
                    }
                }

                //  Resizing Hud
                ResizeHud();
            }
        }