Merge branch 'master' into texture-marknonreadable

This commit is contained in:
ousttrue
2025-03-14 16:39:45 +09:00
committed by GitHub
2 changed files with 8 additions and 5 deletions

View File

@@ -300,6 +300,7 @@ namespace UniGLTF.SpringBoneJobs
public void Execute(int springIndex)
{
var spring = Springs[springIndex];
var center = spring.centerTransformIndex >= 0 ? Transforms[spring.centerTransformIndex] : (BlittableTransform?)null;
for (int jointIndex = spring.logicSpan.startIndex; jointIndex < spring.logicSpan.EndIndex; ++jointIndex)
{
if (float.IsNaN(CurrentTails[jointIndex].x))
@@ -317,9 +318,10 @@ namespace UniGLTF.SpringBoneJobs
}
var tail = Transforms[tailIndex];
CurrentTails[jointIndex] = tail.position;
PrevTails[jointIndex] = tail.position;
NextTails[jointIndex] = tail.position;
var tailPos = center.HasValue ? center.Value.worldToLocalMatrix.MultiplyPoint3x4(tail.position) : tail.position;
CurrentTails[jointIndex] = tailPos;
PrevTails[jointIndex] = tailPos;
NextTails[jointIndex] = tailPos;
}
}
}

View File

@@ -69,8 +69,9 @@ namespace UniGLTF
public NativeArray<T> CreateNativeArray<T>(ArraySegment<T> data) where T : struct
{
var array = CreateNativeArray<T>(data.Count);
for (int i = 0; i < data.Count; i++)
array[i] = data.Array[data.Offset + i];
var toSpan = array.AsSpan();
var fromSpan = data.AsSpan();
fromSpan.CopyTo(toSpan);
return array;
}