Files
Studio/Assets/Scripts/Studio/DataStructures/TransformData.cs
2025-04-02 10:21:48 +09:00

33 lines
946 B
C#

using MessagePack;
using UnityEngine;
namespace XED.Manage
{
[MessagePackObject]
public class TransformData
{
[Key(0)]
public SerializableVector3 position;
[Key(1)]
public SerializableQuaternion rotation;
[Key(2)]
public SerializableVector3 scale;
public void SetData(Transform transform)
{
position = new SerializableVector3();
position.FromVector3(transform.position);
rotation = new SerializableQuaternion();
rotation.FromQuaternion(transform.rotation);
scale = new SerializableVector3();
scale.FromVector3(transform.lossyScale);
}
public void ApplyToTransform(Transform transform)
{
transform.position = position.ToVector3();
transform.rotation = rotation.ToQuaternion();
transform.localScale = scale.ToVector3();
}
}
}