feat(vfx): bind effects to live animated poses

This commit is contained in:
Erik 2026-07-14 10:56:01 +02:00
parent 96ddfdf175
commit 542dcfc384
41 changed files with 3246 additions and 741 deletions

View file

@ -0,0 +1,24 @@
using System.Numerics;
namespace AcDream.Core.Vfx;
/// <summary>
/// Read-only view of the final pose used by entity-attached effects.
/// Implementations publish poses on the update/render thread after root motion,
/// animation, and equipped-child composition have completed.
/// </summary>
public interface IEntityEffectPoseSource
{
bool TryGetRootPose(uint localEntityId, out Matrix4x4 rootWorld);
bool TryGetPartPose(uint localEntityId, int partIndex, out Matrix4x4 partLocal);
}
/// <summary>
/// Optional spatial companion for consumers, such as object lights, whose
/// render registration is scoped to the owner's current AC cell.
/// </summary>
public interface IEntityEffectCellSource
{
bool TryGetCellId(uint localEntityId, out uint cellId);
}