feat(content): bake and read flat collision assets
Append strict collision/topology payloads to the existing prepared package so later physics cutover can drop parsed DAT graphs without adding a second mapping or changing traversal behavior. The full 2,232,170-key catalog is deterministic across worker counts, exact-byte aliased, corruption-isolated, and cancellation-safe.
This commit is contained in:
parent
d9300c7854
commit
9cd42417a8
29 changed files with 2868 additions and 63 deletions
|
|
@ -131,7 +131,10 @@ internal static class PreparedAssetRequestContract
|
|||
{
|
||||
public static void ValidateType(PakAssetType type)
|
||||
{
|
||||
if (!Enum.IsDefined(type))
|
||||
if (type is not (
|
||||
PakAssetType.GfxObjMesh or
|
||||
PakAssetType.SetupMesh or
|
||||
PakAssetType.EnvCellMesh))
|
||||
{
|
||||
throw new ArgumentOutOfRangeException(
|
||||
nameof(type),
|
||||
|
|
@ -166,7 +169,9 @@ internal static class PreparedAssetRequestContract
|
|||
/// Production prepared source backed by one immutable memory-mapped pak.
|
||||
/// There is intentionally no DAT fallback.
|
||||
/// </summary>
|
||||
public sealed class PakPreparedAssetSource : IPreparedAssetSource
|
||||
public sealed partial class PakPreparedAssetSource :
|
||||
IPreparedAssetSource,
|
||||
IPreparedCollisionSource
|
||||
{
|
||||
private readonly PakReader _reader;
|
||||
private readonly Action<string>? _diagnosticSink;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue