Fix native retained presentation batching

This commit is contained in:
gamer147
2026-07-10 21:37:42 -04:00
parent 992215cc48
commit 82afcf5506
10 changed files with 236 additions and 36 deletions

View File

@@ -4,6 +4,21 @@ namespace Age.Engine.Tests;
public class OneShotColorTests
{
[Fact]
public void TimedPresentation_TracksOnlyVisibleFiniteChannelsUntilSampledComplete()
{
var visible = Visible(GfxState.PackColor(0, 0xffffff));
visible.SetAnimatedObjectColorResolved(0x100, 0, 100, 0xff, 0xffffff);
Assert.True(visible.HasActiveTimedPresentation(1000));
visible.SnapshotVisibleObjects(1000);
visible.SnapshotVisibleObjects(1100);
Assert.False(visible.HasActiveTimedPresentation(1100));
var unbound = new GfxState();
unbound.SetAnimatedObjectColorResolved(0x200, 0, 100, 0xff, 0xffffff);
Assert.False(unbound.HasActiveTimedPresentation(1000));
}
private static GfxState Visible(long current)
{
var gfx = new GfxState();