Search in sources :

Example 31 with Resolution

use of com.b3dgs.lionengine.Resolution in project lionengine by b3dgs.

the class WorldIT method testWorld.

/**
 * Test the world.
 */
@Test
void testWorld() {
    EngineAwt.start(getClass().getSimpleName(), Version.create(1, 0, 0), System.getProperty("java.io.tmpdir"));
    final Resolution output = new Resolution(640, 480, 60);
    Loader.start(Config.windowed(output), Scene.class).await();
}
Also used : Resolution(com.b3dgs.lionengine.Resolution) Test(org.junit.jupiter.api.Test)

Example 32 with Resolution

use of com.b3dgs.lionengine.Resolution in project lionengine by b3dgs.

the class LoopHybridTest method testSlowRender.

/**
 * Test with slow rendering.
 */
@Test
void testSlowRender() {
    ScreenMock.setScreenWait(false);
    final Screen screen = new ScreenMock(new Config(new Resolution(320, 240, 100), 16, true));
    pause.set(50L);
    final Thread thread = getTask(screen);
    thread.start();
    assertTimeout(10_000L, thread::join);
    assertTrue(tick.get() >= maxTick.get(), tick.get() + " " + maxTick.get());
    final boolean min = rendered.get() >= Math.round(Math.floor(tick.get() / 2.0));
    final boolean max = rendered.get() <= Math.round(Math.ceil(tick.get() / 2.0));
    assertTrue(min || max, tick.get() + " " + rendered.get());
    final int expectedRate = screen.getConfig().getOutput().getRate();
    assertTrue(computed.get() < expectedRate / 2, String.valueOf(computed.get()));
    assertTrue(computed.get() > expectedRate / 2 - expectedRate, String.valueOf(computed.get()));
}
Also used : Screen(com.b3dgs.lionengine.graphic.Screen) Config(com.b3dgs.lionengine.Config) ScreenMock(com.b3dgs.lionengine.graphic.ScreenMock) Resolution(com.b3dgs.lionengine.Resolution) Test(org.junit.jupiter.api.Test)

Example 33 with Resolution

use of com.b3dgs.lionengine.Resolution in project lionengine by b3dgs.

the class LoopHybridTest method testNoSync.

/**
 * Test without sync.
 */
@Test
void testNoSync() {
    ScreenMock.setScreenWait(false);
    final Screen screen = new ScreenMock(new Config(new Resolution(320, 240, 0), 16, true));
    final Thread thread = getTask(screen);
    thread.start();
    assertTimeout(1000L, thread::join);
    assertEquals(maxTick.get(), tick.get());
    assertTrue(rendered.get() <= tick.get(), rendered.get() + " " + tick.get());
    assertTrue(extrapolation.get().doubleValue() < 1.0, String.valueOf(extrapolation.get()));
    final int expectedRate = screen.getConfig().getOutput().getRate();
    assertTrue(computed.get() > expectedRate, String.valueOf(computed.get()));
}
Also used : Screen(com.b3dgs.lionengine.graphic.Screen) Config(com.b3dgs.lionengine.Config) ScreenMock(com.b3dgs.lionengine.graphic.ScreenMock) Resolution(com.b3dgs.lionengine.Resolution) Test(org.junit.jupiter.api.Test)

Example 34 with Resolution

use of com.b3dgs.lionengine.Resolution in project lionengine by b3dgs.

the class LoopHybridTest method testNoSyncFullscreen.

/**
 * Test without sync full screen.
 */
@Test
void testNoSyncFullscreen() {
    ScreenMock.setScreenWait(false);
    final Screen screen = new ScreenMock(new Config(new Resolution(320, 240, 0), 16, false));
    loop.notifyRateChanged(50);
    final Thread thread = getTask(screen);
    thread.start();
    assertTimeout(1000L, thread::join);
    assertEquals(maxTick.get(), tick.get());
    assertTrue(rendered.get() <= tick.get(), rendered.get() + " " + tick.get());
    assertTrue(extrapolation.get().doubleValue() > 0, String.valueOf(extrapolation.get()));
    final int expectedRate = screen.getConfig().getOutput().getRate();
    assertTrue(computed.get() > expectedRate, String.valueOf(computed.get()));
}
Also used : Screen(com.b3dgs.lionengine.graphic.Screen) Config(com.b3dgs.lionengine.Config) ScreenMock(com.b3dgs.lionengine.graphic.ScreenMock) Resolution(com.b3dgs.lionengine.Resolution) Test(org.junit.jupiter.api.Test)

Example 35 with Resolution

use of com.b3dgs.lionengine.Resolution in project lionengine by b3dgs.

the class LoopUnlockedTest method testUnready.

/**
 * Test with not ready screen.
 */
@Test
void testUnready() {
    ScreenMock.setScreenWait(true);
    try {
        final Screen screen = new ScreenMock(new Config(new Resolution(320, 240, 50), 16, true));
        final Thread thread = getTask(screen);
        thread.start();
        assertTimeout(1000L, latch::await);
        loop.stop();
        assertTimeout(1000L, thread::join);
        assertEquals(0, rendered.get());
        assertEquals(0, tick.get());
        assertEquals(-1, computed.get());
    } finally {
        ScreenMock.setScreenWait(false);
    }
}
Also used : Screen(com.b3dgs.lionengine.graphic.Screen) Config(com.b3dgs.lionengine.Config) ScreenMock(com.b3dgs.lionengine.graphic.ScreenMock) Resolution(com.b3dgs.lionengine.Resolution) Test(org.junit.jupiter.api.Test)

Aggregations

Resolution (com.b3dgs.lionengine.Resolution)95 Config (com.b3dgs.lionengine.Config)75 Screen (com.b3dgs.lionengine.graphic.Screen)45 ScreenMock (com.b3dgs.lionengine.graphic.ScreenMock)45 Test (org.junit.jupiter.api.Test)45 Test (org.junit.Test)33 Graphic (com.b3dgs.lionengine.graphic.Graphic)3 Media (com.b3dgs.lionengine.Media)2 LionEngineException (com.b3dgs.lionengine.LionEngineException)1 FilterBilinear (com.b3dgs.lionengine.core.filter.FilterBilinear)1 FilterBlur (com.b3dgs.lionengine.core.filter.FilterBlur)1 FilterHq2x (com.b3dgs.lionengine.core.filter.FilterHq2x)1 FilterHq3x (com.b3dgs.lionengine.core.filter.FilterHq3x)1 SourceResolutionDelegate (com.b3dgs.lionengine.graphic.engine.SourceResolutionDelegate)1 FilterBilinear (com.b3dgs.lionengine.graphic.filter.FilterBilinear)1 FilterBlur (com.b3dgs.lionengine.graphic.filter.FilterBlur)1 FilterHq2x (com.b3dgs.lionengine.graphic.filter.FilterHq2x)1 FilterHq3x (com.b3dgs.lionengine.graphic.filter.FilterHq3x)1 DisplayMode (java.awt.DisplayMode)1 GraphicsDevice (java.awt.GraphicsDevice)1