diff --git a/src/main/java/de/extio/game_engine/renderer/model/RenderingBo.java b/src/main/java/de/extio/game_engine/renderer/model/RenderingBo.java index 967628f..403a6dc 100644 --- a/src/main/java/de/extio/game_engine/renderer/model/RenderingBo.java +++ b/src/main/java/de/extio/game_engine/renderer/model/RenderingBo.java @@ -117,6 +117,11 @@ public interface RenderingBo extends AutoCloseable { */ RenderingBo withPositionRelative(HasPosition2 position); + /** + * Sets a visible area (clipping area) for this rendering bo. Coordinates are absolute viewport coordinates. + */ + RenderingBo withVisibleArea(int x, int y, int width, int height); + void apply(RenderingBo other); void staticCleanupAfterFrame(); diff --git a/src/main/java/de/extio/game_engine/renderer/model/RenderingBoHasDimension.java b/src/main/java/de/extio/game_engine/renderer/model/RenderingBoHasDimension.java index 73921ca..e4be716 100644 --- a/src/main/java/de/extio/game_engine/renderer/model/RenderingBoHasDimension.java +++ b/src/main/java/de/extio/game_engine/renderer/model/RenderingBoHasDimension.java @@ -26,6 +26,5 @@ public interface RenderingBoHasDimension extends RenderingBo { RenderingBoHasDimension withDimensionIncrementalAbsolute(int width, int height); RenderingBoHasDimension withDimensionIncrementalPercentual(double width, double height); - - RenderingBoHasDimension withVisibleArea(int x, int y, int width, int height); + } diff --git a/src/test/java/de/extio/game_engine/renderer/work/RendererWorkingSetImplTest.java b/src/test/java/de/extio/game_engine/renderer/work/RendererWorkingSetImplTest.java index c376c37..491fced 100644 --- a/src/test/java/de/extio/game_engine/renderer/work/RendererWorkingSetImplTest.java +++ b/src/test/java/de/extio/game_engine/renderer/work/RendererWorkingSetImplTest.java @@ -624,6 +624,11 @@ public class RendererWorkingSetImplTest { public RenderingBo withPositionRelative(final HasPosition2 position) { return this; } + + @Override + public RenderingBo withVisibleArea(int x, int y, int width, int height) { + return this; + } @Override public void staticCleanupAfterFrame() { diff --git a/src/test/java/de/extio/game_engine/renderer/work/RenderingBoPoolImplTest.java b/src/test/java/de/extio/game_engine/renderer/work/RenderingBoPoolImplTest.java index e9119c7..ad7c1e9 100644 --- a/src/test/java/de/extio/game_engine/renderer/work/RenderingBoPoolImplTest.java +++ b/src/test/java/de/extio/game_engine/renderer/work/RenderingBoPoolImplTest.java @@ -422,6 +422,11 @@ public class RenderingBoPoolImplTest { return this; } + @Override + public RenderingBo withVisibleArea(final int x, final int y, final int width, final int height) { + return this; + } + @Override public void setRendererData(final RendererData rendererData) { this.rendererData = rendererData; @@ -581,6 +586,11 @@ public class RenderingBoPoolImplTest { return this; } + @Override + public RenderingBo withVisibleArea(final int x, final int y, final int width, final int height) { + return this; + } + @Override public void setRendererData(final RendererData rendererData) { this.rendererData = rendererData;