2
0
mirror of https://github.com/raylib-cs/raylib-cs synced 2025-09-09 03:01:41 -04:00

Testing fix for ModelAnimation using wrapper struct

This commit is contained in:
2021-12-05 11:44:34 +00:00
parent 2136d91269
commit 331dd8c4cf

View File

@@ -1,8 +1,6 @@
using System; using System;
using System.Collections.Generic;
using System.Numerics; using System.Numerics;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
using Microsoft.Toolkit.HighPerformance;
namespace Raylib_cs namespace Raylib_cs
{ {
@@ -105,6 +103,51 @@ namespace Raylib_cs
public readonly Transform** framePoses; public readonly Transform** framePoses;
/// <inheritdoc cref="framePoses"/> /// <inheritdoc cref="framePoses"/>
public ReadOnlySpan2D<Transform> FramePoses => new(framePoses, frameCount,boneCount,sizeof(Transform)); public FramePosesCollection FramePoses => new(framePoses, frameCount, boneCount);
public struct FramePosesCollection
{
readonly Transform** framePoses;
readonly int frameCount;
readonly int boneCount;
public FramePoses this[int index]
{
get
{
return new(framePoses[index], boneCount);
}
}
internal FramePosesCollection(Transform** framePoses, int frameCount, int boneCount)
{
this.framePoses = framePoses;
this.frameCount = frameCount;
this.boneCount = boneCount;
}
}
}
public unsafe struct FramePoses
{
readonly Transform* poses;
readonly int count;
public ref Transform this[int index]
{
get
{
return ref poses[index];
}
}
internal FramePoses(Transform* poses, int count)
{
this.poses = poses;
this.count = count;
}
} }
} }