Files
com.misaki.art-tools/Runtime/Cloner/Jobs/TransformAccessJob.cs
2024-09-16 00:08:10 +09:00

24 lines
642 B
C#

using Unity.Collections;
using Unity.Mathematics;
using UnityEngine.Jobs;
namespace Misaki.ArtTool
{
public struct TransformAccessJob : IJobParallelForTransform
{
public NativeArray<float4x4> points;
public void Execute(int index, TransformAccess transform)
{
if (index > points.Length || !transform.isValid)
{
return;
}
MatrixHelper.DecomposeMatrix(points[index], out var position, out var rotation, out var scale);
transform.SetPositionAndRotation(position, rotation);
transform.localScale = scale;
}
}
}