checkpoint: preserve user-gated FW closeout fixes
This commit is contained in:
parent
a2f2eb7d78
commit
b8befded8b
22 changed files with 1005 additions and 198 deletions
|
|
@ -190,6 +190,51 @@ public sealed class WalkStaticStreamPopulatorTests
|
|||
Assert.Equal((uint)alphaGfxObj, selectionParts[1].GfxObjId);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ClassifyEntityForWalk_NoDrawProjectileRecord_SubmitsNeitherMeshNorSelection()
|
||||
{
|
||||
using var fx = new DispatcherFixture();
|
||||
const ulong projectileGfxObj = 0x0100_0003UL;
|
||||
InjectRenderData(fx.Manager, projectileGfxObj, MakeFlatMesh(
|
||||
MakeBatch(
|
||||
0x08000003u,
|
||||
TranslucencyKind.Opaque,
|
||||
firstIndex: 0,
|
||||
baseVertex: 0,
|
||||
indexCount: 3,
|
||||
textureSlotIndex: 1)));
|
||||
|
||||
RenderProjectionRecord projectile = MakeRecord(
|
||||
localEntityId: 101,
|
||||
serverGuid: 0x7000_0101u,
|
||||
position: Vector3.Zero,
|
||||
meshRefs: [new MeshRef((uint)projectileGfxObj, Matrix4x4.Identity)])
|
||||
with
|
||||
{
|
||||
// ACE's projectile-impact SetState sets NoDraw immediately;
|
||||
// the later DeleteObject intentionally arrives five seconds
|
||||
// afterward. The journal projects that state as resident and
|
||||
// hidden, with Draw cleared.
|
||||
Flags = RenderProjectionFlags.SpatiallyResident
|
||||
| RenderProjectionFlags.Selectable
|
||||
| RenderProjectionFlags.Hidden,
|
||||
};
|
||||
|
||||
var batches = new List<WbDrawDispatcher.WalkClassifiedBatch>();
|
||||
var selectionParts =
|
||||
new List<WbDrawDispatcher.WalkClassifiedSelectionPart>();
|
||||
|
||||
fx.Dispatcher.ClassifyEntityForWalk(
|
||||
in projectile,
|
||||
tupleLandblockId: 0x8C04u,
|
||||
batches,
|
||||
selectionParts,
|
||||
liveDynamic: true);
|
||||
|
||||
Assert.Empty(batches);
|
||||
Assert.Empty(selectionParts);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void ClassifyEntityForWalk_SetupComposite_EncodesPartAndSetupPartIndexLikePackedRoute()
|
||||
{
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue