private static Rectangle GetScoreWindowDrawArea(Size size)
 {
     var left = Brick.OffsetPortrait.X + GridRenderLeftOffset;
     var top = Brick.OffsetPortrait.Y - Brick.ZoomPortrait + ScoreRenderTopOffset;
     var height = Width / size.AspectRatio;
     return new Rectangle(left, top, Width, height);
 }
Beispiel #2
0
 private static void CreateFontTexts(Vector2D[] centers, Size size)
 {
     new FontText(Font.Default, "Up", Rectangle.FromCenter(centers[0], size));
     new FontText(Font.Default, "Down", Rectangle.FromCenter(centers[1], size));
     new FontText(Font.Default, "Left", Rectangle.FromCenter(centers[2], size));
     new FontText(Font.Default, "Right", Rectangle.FromCenter(centers[3], size));
 }
		public AutoArrangingMenu(Size buttonSize, int renderLayer = 0)
			: base("<GeneratedScene>")
		{
			this.buttonSize = buttonSize;
			center = Vector2D.Half;
			this.renderLayer = renderLayer;
		}
		protected override void OnFullscreenChanged(Size displaySize, bool isFullScreenEnabled)
		{
			deviceManager.PreferredBackBufferWidth = (int)displaySize.Width;
			deviceManager.PreferredBackBufferHeight = (int)displaySize.Height;
			deviceManager.IsFullScreen = isFullScreenEnabled;
			base.OnFullscreenChanged(displaySize, isFullScreenEnabled);
		}
Beispiel #5
0
		public Logo Create()
		{
			Randomizer random = Randomizer.Current;
			Size size = new Size(random.Get(0.02f, 0.08f));
			var halfWidth = size.Width / 2f;
			var doubleWidth = size.Width * 2f;
			Rectangle view = screen.Viewport;
			Vector2D position = new Vector2D(random.Get(doubleWidth, view.Width - doubleWidth), view.Bottom - size.Height / 2);
			float direction = position.X > 0.5f ? -1 : 1;
			if (random.Get(1, 100) >= 30) direction *= -1;
			float r = direction > 0
				? random.Get(0, view.Width - position.X - doubleWidth)
				: random.Get(0, position.X - doubleWidth);
			var h = random.Get(0.3f, view.Height - 0.05f);
			var angle = Math.Atan((4 * h) / r);
			if (angle == 0)
				angle = 1.57079f;
			var v0 = Math.Sqrt(r * MovingSprite.Gravity / Math.Sin(2 * angle));
			var v_x = (float)(v0 * Math.Cos(angle));
			var v_y = (float)(v0 * Math.Sin(angle));
			v_x *= direction;
			var data = new SimplePhysics.Data()
			{
				Gravity = new Vector2D(0f, MovingSprite.Gravity),
				Velocity = new Vector2D(v_x, -v_y),
				RotationSpeed = random.Get(10, 50) * direction
			};
			return new Logo("DeltaEngineLogo", Color.GetRandomBrightColor(), position, size, data);
		}
 private static void SetupWindowSizeProperties(Mock<Window> windowMock)
 {
     Window window = windowMock.Object;
     var currentSize = new Size(1024, 640);
     windowMock.SetupGet(w => w.TotalPixelSize).Returns(() => currentSize);
     #pragma warning disable 0618
     windowMock.SetupSet(w => w.TotalPixelSize).Callback(s =>
     {
         currentSize = s;
         windowMock.Raise(w => w.ViewportSizeChanged += null, s);
     });
     windowMock.SetupGet(w => w.ViewportPixelSize).Returns(() => currentSize);
     bool isFullscreen = false;
     var rememberSizeBeforeFullscreen = new Size();
     windowMock.Setup(w => w.SetFullscreen(It.IsAny<Size>())).Callback((Size displaySize) =>
     {
         isFullscreen = true;
         rememberSizeBeforeFullscreen = window.TotalPixelSize;
         window.TotalPixelSize = displaySize;
     });
     windowMock.Setup(w => w.SetWindowed()).Callback(() =>
     {
         isFullscreen = false;
         window.TotalPixelSize = rememberSizeBeforeFullscreen;
     });
     windowMock.SetupGet(w => w.IsFullscreen).Returns(() => isFullscreen);
 }
Beispiel #7
0
 private void ResetDeviceToNewViewportSize(Size newSizeInPixel)
 {
     Screen = new ScreenSpace(newSizeInPixel);
     NativeDevice.PresentationParameters.BackBufferWidth = (int)newSizeInPixel.Width;
     NativeDevice.PresentationParameters.BackBufferHeight = (int)newSizeInPixel.Height;
     NativeDevice.Reset(NativeDevice.PresentationParameters);
 }
Beispiel #8
0
		private static Vertex[] SetDataColored(Size size, ShaderWithFormat shader, Material material)
		{
			if ((shader.Flags & ShaderFlags.Textured) != 0)
				return CreateVerticesColoredTextured(size, material.DefaultColor);
			return CreateVerticesColored(size, material.DefaultColor);

		}
Beispiel #9
0
		public MovingSprite(string image, Color color, Vector2D position, Size size)
			: base(image, Rectangle.One)
		{
			Size = size;
			Center = position;
			ID += 1;
		}
		public static LevelTileType[] MapInfo(Size gridSize)
		{
			size = gridSize;
			var mapData = new LevelTileType[(int)(BathRoomLevelInfo.size.Width * BathRoomLevelInfo.size.Height)];
			for (int i = 0; i < mapData.Length; i++)
				mapData[i] = LevelTileType.Nothing;

			//walls and emoty grid spaces
			SetMapValuesToBlocked(mapData, 0, 0, 0, 23);
			SetMapValuesToBlocked(mapData, 12, 13, 0, 23);
			SetMapValuesToBlocked(mapData, 1, 1, 17, 23);
			SetMapValuesToBlocked(mapData, 11, 11, 0, 6);

			SetTile(mapData, 9, 0, LevelTileType.Blocked);
			SetTile(mapData, 10, 0, LevelTileType.Blocked);
			SetTile(mapData, 11, 0, LevelTileType.Blocked);
			SetTile(mapData, 11, 12, LevelTileType.Blocked);

			//towel shelf
			SetTile(mapData, 6, 8, LevelTileType.Blocked);
			SetTile(mapData, 7, 8, LevelTileType.Blocked);
			SetTile(mapData, 8, 8, LevelTileType.Blocked);
			SetTile(mapData, 6, 9, LevelTileType.Blocked);
			SetTile(mapData, 7, 9, LevelTileType.Blocked);
			SetTile(mapData, 8, 9, LevelTileType.Blocked);

			//plant
			SetTile(mapData, 2, 23, LevelTileType.Blocked);

			//toilet
			SetTile(mapData, 1, 14, LevelTileType.Blocked);

			//towels
			SetTile(mapData, 3, 4, LevelTileType.Blocked);
			SetTile(mapData, 4, 5, LevelTileType.Blocked);

			SetTile(mapData, 5, 15, LevelTileType.Blocked);
			SetTile(mapData, 7, 16, LevelTileType.Blocked);
			SetTile(mapData, 9, 14, LevelTileType.Blocked);

			//stools
			SetTile(mapData, 4, 20, LevelTileType.Blocked);
			SetTile(mapData, 2, 10, LevelTileType.Blocked);

			//toilet paper
			SetTile(mapData, 5, 14, LevelTileType.Blocked);

			//spawn points
			SetTile(mapData, 2, 1, LevelTileType.SpawnPoint);

			//Exit Points
			SetTile(mapData, 7, 23, LevelTileType.ExitPoint);

			//Tower Placeable Points
			SetTile(mapData, 3, 7, LevelTileType.Yellow); //impact tower
			SetTile(mapData, 6, 13, LevelTileType.Red); //fire tower
			SetTile(mapData, 8, 20, LevelTileType.Blue); //water tower
			return mapData;
		}
Beispiel #11
0
 protected virtual void SetResolution(Size displaySize)
 {
     ResizeCentered(displaySize);
     if (FullscreenChanged != null)
     {
         FullscreenChanged(displaySize, IsFullscreen);
     }
 }
Beispiel #12
0
        protected virtual void ResizeCentered(Size newSizeInPixels)
        {
            var xOffset = (int)((panel.Width - newSizeInPixels.Width) / 2.0f);
            var yOffset = (int)((panel.Height - newSizeInPixels.Height) / 2.0f);

            panel.Location = new SystemPoint(panel.Location.X + xOffset, panel.Location.Y + yOffset);
            panel.Size     = new SystemSize((int)newSizeInPixels.Width, (int)newSizeInPixels.Height);
        }
Beispiel #13
0
		public Billboard(Vector3D position, Size size, Material material,
			BillboardMode billboardMode = BillboardMode.CameraFacing)
			: base(position)
		{
			mode = billboardMode;
			planeQuad = new PlaneQuad(size, material);
			OnDraw<BillboardRenderer>();
		}
Beispiel #14
0
		private void UpdateCameraProjectionSize()
		{
			var width = screenSpace.Viewport.Width;
			var height = screenSpace.Viewport.Height;
			size = new Size(width, height);
			size /= zoomLevel;
			ForceProjectionMatrixUpdate();
		}
Beispiel #15
0
		public void Division()
		{
			var v = new Vector2D(2, 4);
			const float F = 2f;
			var s = new Size(F);
			Assert.AreEqual(new Vector2D(1, 2), v / F);
			Assert.AreEqual(new Vector2D(1, 2), v / s);
		}
Beispiel #16
0
 private void CreateDefaultTexture()
 {
     NativeTexture = new Texture2D(nativeDevice, (int)DefaultTextureSize.Width,
         (int)DefaultTextureSize.Height);
     NativeTexture.SetData(ConvertToXnaColors(checkerMapColors));
     pixelSize = DefaultTextureSize;
     DisableLinearFiltering = true;
 }
Beispiel #17
0
		public Level(Size size)
			: base("<GeneratedLevel" + size + ">")
		{
			InitializeLists();
			Current = this;
			Size = size;
			ModelName = "None";
		}
		public override void SetViewport(Size newSizeInPixel)
		{
			NativeDevice.PresentationParameters.BackBufferWidth = (int)newSizeInPixel.Width;
			NativeDevice.PresentationParameters.BackBufferHeight = (int)newSizeInPixel.Height;
			NativeDevice.Reset(NativeDevice.PresentationParameters);
			NativeDevice.Clear(new Color(0, 0, 0));
			SetModelViewProjectionMatrixFor2D();
		}
Beispiel #19
0
		private Rectangle GetSelectorDrawArea()
		{
			float aspectRatio = Theme.RadioButtonNotSelected.DiffuseMap != null
				? Theme.RadioButtonNotSelected.DiffuseMap.PixelSize.AspectRatio
				: DefaultRadioButtonAspectRatio;
			var size = new Size(aspectRatio * DrawArea.Height, DrawArea.Height);
			return new Rectangle(DrawArea.TopLeft, size);
		}
		public ColoredLogoTilemap(Size world, Size map)
			: base(world, map)
		{
			var data = Get<Data>();
			var logo = new Material(ShaderFlags.Position2DColoredTextured, "DeltaEngineLogo");
			CreateWorld(data, logo);
			CreateMap(data, logo);
		}
Beispiel #21
0
		public override PhysicsBody CreateRectangle(Size size)
		{
			Body rectangle = BodyFactory.CreateRectangle(world, unitConverter.ToSimUnits(size.Width),
				unitConverter.ToSimUnits(size.Height), 1.0f);
			var body = new FarseerBody(rectangle) { UnitConverter = unitConverter };
			AddBody(body);
			return body;
		}
Beispiel #22
0
		public Grid3D(Vector3D center, Size dimension, float gridScale = 1.0f)
			: base(center)
		{
			this.dimension = dimension;
			this.gridScale = gridScale;
			lines = new List<Line3D>();
			DrawGrid();
		}
		public static Matrix CreateOrthoProjectionMatrix(Size viewportSize)
		{
			return new Matrix(
				2.0f / viewportSize.Width, 0.0f, 0.0f, 0.0f,
				0.0f, 2.0f / -viewportSize.Height, 0.0f, 0.0f,
				0.0f, 0.0f, -1.0f, 0.0f,
				-1.0f, 1.0f, 0.0f, 1.0f);
		}
		private static Rectangle GetScoreWindowDrawArea(Size size)
		{
			var left = Brick.OffsetLandscape.X + GridRenderLeftOffset;
			var top = Brick.OffsetLandscape.Y - Brick.ZoomLandscape + ScoreRenderTopOffset;
			const float Width = Grid.Width * Brick.ZoomLandscape + GridRenderWidthOffset;
			var height = Width / size.AspectRatio;
			return new Rectangle(left, top, Width, height);
		}
Beispiel #25
0
		private static Rectangle CalculateArrowDrawArea(Material material, Vector2D start, Vector2D target)
		{
			start += Vector2D.Normalize(start.DirectionTo(target)) * 0.033f;
			target -= Vector2D.Normalize(start.DirectionTo(target)) * 0.033f;
			var distance = start.DistanceTo(target);
			var size = new Size(distance, distance / material.DiffuseMap.PixelSize.AspectRatio);
			return Rectangle.FromCenter((start + target) / 2, size * GameLogic.ArrowSize);
		}
Beispiel #26
0
		public void ShowManyRabbits()
		{
			var viewport = Resolve<ScreenSpace>().Viewport;
			var size = new Size(0.1f);
			for (float x = viewport.Left + size.Width / 2; x <= viewport.Right; x += size.Width)
				for (float y = viewport.Top + size.Height / 2; y <= viewport.Bottom; y += size.Height)
					CreateRabbitWith50Health(new Vector2D(x, y));
		}
Beispiel #27
0
		public void CreateFromFloat()
		{
			const float Width = 3.51f;
			const float Height = 0.23f;
			var s = new Size(Width, Height);
			Assert.AreEqual(s.Width, Width);
			Assert.AreEqual(s.Height, Height);
		}
Beispiel #28
0
 protected ScreenSpace(Window window)
 {
     this.window = window;
     viewportPixelSize = window.ViewportPixelSize;
     window.ViewportSizeChanged += Update;
     window.OrientationChanged += UpdateOrientationChanged;
     current = this;
 }
Beispiel #29
0
		public void NearlyEquals()
		{
			var s1 = new Size(1, 2);
			Assert.IsTrue(s1.IsNearlyEqual(new Size(0.99999f, 2.00001f)));
			Assert.IsTrue(s1.IsNearlyEqual(new Size(1, 2.00001f)));
			Assert.IsFalse(s1.IsNearlyEqual(new Size(0.9f, 2.00001f)));
			Assert.IsFalse(s1.IsNearlyEqual(new Size(1, 2.1f)));
		}
Beispiel #30
0
		public void Multiplication()
		{
			var v = new Vector2D(2, 4);
			const float F = 1.5f;
			var s = new Size(F);
			Assert.AreEqual(new Vector2D(3, 6), v * F);
			Assert.AreEqual(new Vector2D(3, 6), v * s);
		}
Beispiel #31
0
		public void SetFullscreen(Size displaySize)
		{
			IsFullscreen = true;
			rememberSizeBeforeFullscreen = TotalPixelSize;
			TotalPixelSize = displaySize;
			if (FullscreenChanged != null)
				FullscreenChanged(TotalPixelSize, true);
		}
Beispiel #32
0
        private void CreateWindow(Size resolution, bool startInFullscreen)
        {
            viewportSize = resolution;
            IsFullscreen = startInFullscreen;
            int width  = (int)resolution.Width;
            int height = (int)resolution.Height;

            OpenWindow(startInFullscreen, width, height);
        }
Beispiel #33
0
		public Rabbit(Vector2D position, Size size)
			: base(ContentLoader.Load<Material>("MaterialRabbit"), Rectangle.FromCenter(position, size))
		{
			IsVisible = false;
			OriginalSize = size;
			RenderLayer = (int)RenderLayers.Rabbits;
			CreateRabbitHealthBar();
			Start<AlternatePositionInBoundingBox>();
		}
Beispiel #34
0
 public virtual void SetFullscreen(Size setFullscreenViewportSize)
 {
     windowedSize = viewportSize;
     Glfw.DestroyWindow(nativeWindow);
     CreateWindow(setFullscreenViewportSize, true);
     if (FullscreenChanged != null)
     {
         FullscreenChanged(setFullscreenViewportSize, true);
     }
 }
        private void SetDrawAreaPosition(Entity2D entity, int row, int column)
        {
            Size size = entity.Get <Material>().DiffuseMap != null
                                ? entity.Get <Material>().DiffuseMap.PixelSize
                                : entity.Get <Material>().Animation.Frames[0].PixelSize;

            float widthScale  = size.Width > size.Height ? 1.0f : size.Width / size.Height;
            float heightScale = size.Width > size.Height ? size.Height / size.Width : 1.0f;

            entity.DrawArea =
                Rectangle.FromCenter(new Vector2D(0.175f + 0.2f * column, 0.3f + 0.2f * row),
                                     new Size(0.15f * widthScale, 0.15f * heightScale));
            CreateOutline(row, column);
            StartPreviewList.Add(entity);
        }
Beispiel #36
0
 private void OnWindowResize(GlfwWindowPtr window, int width, int height)
 {
     if (width == 0 || height == 0)
     {
         return;
     }
     viewportSize = new Size(width, height);
     Orientation  = width > height ? DeltaEngine.Core.Orientation.Landscape : DeltaEngine.Core.Orientation.Portrait;
     if (ViewportSizeChanged != null)
     {
         ViewportSizeChanged(ViewportPixelSize);
     }
     if (OrientationChanged != null)
     {
         OrientationChanged(Orientation);
     }
 }
Beispiel #37
0
        public virtual void SetFullscreen(Size setFullscreenViewportSize)
        {
            IsFullscreen           = true;
            rememberedWindowedSize = new Size(panel.Size.Width, panel.Size.Height);
            var form = panel as Form;

            if (form != null)
            {
                form.TopMost         = true;
                form.StartPosition   = FormStartPosition.Manual;
                form.DesktopLocation = new Point(0, 0);
                form.WindowState     = FormWindowState.Maximized;
                form.FormBorderStyle = FormBorderStyle.None;
                Cursor.Hide();
                SetFullscreenNative(form.Handle, setFullscreenViewportSize);
            }
            SetResolution(setFullscreenViewportSize);
        }
Beispiel #38
0
 private static void SetFullscreenNative(IntPtr hwnd, Size size)
 {
     SetWindowPos(hwnd, IntPtr.Zero, 0, 0, (int)size.Width, (int)size.Height, 64);
 }