| 12345678910111213141516171819202122232425262728293031323334353637 | using Unity.Entities;using UnityEngine;namespace GPUECSAnimationBaker.Engine.AnimatorSystem{    public class GpuEcsAttachmentBehaviour : MonoBehaviour    {    }        public class GpuEcsAttachmentBaker : Baker<GpuEcsAttachmentBehaviour>    {        public override void Bake(GpuEcsAttachmentBehaviour authoring)        {            int attachmentAnchorId = 0;            Entity gpuEcsAnimatorEntity = Entity.Null;                        GpuEcsAttachmentInitializerBehaviour initializer = authoring.GetComponent<GpuEcsAttachmentInitializerBehaviour>();            if (initializer != null) attachmentAnchorId = initializer.GetAttachmentAnchorID();            if (authoring.transform.parent != null)            {                GpuEcsAnimatorBehaviour gpuEcsAnimator = authoring.transform.parent.GetComponent<GpuEcsAnimatorBehaviour>();                if (gpuEcsAnimator != null)                {                    gpuEcsAnimatorEntity = GetEntity(gpuEcsAnimator, TransformUsageFlags.None);                }            }            Entity entity = GetEntity(TransformUsageFlags.Dynamic);            AddComponent(entity, new GpuEcsAttachmentComponent()            {                gpuEcsAnimatorEntity = gpuEcsAnimatorEntity,                attachmentAnchorId = attachmentAnchorId            });                    }    }}
 |