public void CanStartAndReachMainMenu() { UiSystems.MainMenu.Show(MainMenuPage.MainMenu); Game.RenderFrame(); ImageComparison.AssertImagesEqual(Game.TakeScreenshot(), "Game/MainMenu.png"); }
public void TestBorderAndBackground() { var backgroundAndBorder = Style(new StyleDefinition() { BackgroundColor = PackedLinearColorA.FromHex("#666666"), BorderColor = PackedLinearColorA.FromHex("#AAAAAA"), BorderWidth = 2 }); var backgroundOnly = Style(new StyleDefinition() { BackgroundColor = PackedLinearColorA.FromHex("#666666"), BorderColor = PackedLinearColorA.FromHex("#AAAAAA") }); var borderOnly = Style(new StyleDefinition() { BorderColor = PackedLinearColorA.FromHex("#AAAAAA"), BorderWidth = 1 }); var thickBorder = Style(new StyleDefinition() { BorderColor = PackedLinearColorA.FromHex("#AAAAAA"), BorderWidth = 4 }); Device.BeginDraw(); Device.TextEngine.RenderBackgroundAndBorder(25, 75, 100, 50, backgroundAndBorder); Device.TextEngine.RenderBackgroundAndBorder(25, 275, 100, 50, borderOnly); Device.TextEngine.RenderBackgroundAndBorder(225, 275, 100, 50, thickBorder); Device.TextEngine.RenderBackgroundAndBorder(225, 75, 100, 50, backgroundOnly); Device.EndDraw(); var screenshot = TakeScreenshot(); ImageComparison.AssertImagesEqual(screenshot, "Core/GFX/TextRendering/BackgroundAndBorder.png"); }
public void TestVeryLongChainLightning() { Device.BeginDraw(); _renderer.Render(Viewport.Camera, 0, 0, CameraCenter, CameraCenter + new Vector3(0, 0, 10000)); Device.EndDraw(); using var screenshot = TakeScreenshot(); ImageComparison.AssertImagesEqual(screenshot, "Core/Systems/Vfx/ChainLightningVeryLong.png"); }
private void RenderAndCompare(TextLayout layout, string refName) { Device.BeginDraw(); Device.TextEngine.RenderTextLayout(200, 200, layout); Device.EndDraw(); var screenshot = TakeScreenshot(); ImageComparison.AssertImagesEqual(screenshot, refName); }
public void TestHeightDifferenceChainLightning() { var a = CameraCenter - new Vector3(200, -25, 0); var b = CameraCenter; var c = CameraCenter + new Vector3(200, 25, 0); Device.BeginDraw(); _renderer.Render(Viewport.Camera, 0, 0, a, b); _renderer.Render(Viewport.Camera, 0, 250, b, c); Device.EndDraw(); using var screenshot = TakeScreenshot(); MarkWorldPositions(screenshot, a, b, c); ImageComparison.AssertImagesEqual(screenshot, "Core/Systems/Vfx/ChainLightningHeightDifference.png"); }
public void TestRasterization() { const int dimension = 192; var buffer = new byte[dimension * dimension]; Span <Vector2> vertices = stackalloc Vector2[3] { new Vector2(5.5f, 10.2f), new Vector2(5.5f + 16, 10.2f + 5.0f), new Vector2(5.5f - 5, 10.2f + 5.0f) }; TriangleRasterizer.Rasterize(dimension, dimension, buffer, vertices, 0xFF); using var image = Image.LoadPixelData <L8>(buffer, dimension, dimension); ImageComparison.AssertImagesEqual(image, "FogOfWar/tesselated_expected.png"); } }