AnimationTrack

AnimationTrack : Instance

Overview

애니메이터에 적용된 애니메이션의 실행을 관리하는 객체입니다.

이 객체는 Animator의 LoadAnimation() 메서드를 호출해야만 얻을 수 있습니다.

Properties

Animation

Animation

AnimationTrack에 설정된 Animation 객체를 반환하는 속성입니다. (읽기 전용)

Code Samples

print(AnimationTrack.Animation)

IsPlaying

bool

애니메이션 트랙의 실행 여부를 반환하는 속성입니다. (읽기 전용)

Code Samples

AnimationTrack:Play()

if AnimationTrack.IsPlaying then
    print("DoSomething")
end

Length

number

애니메이션 트랙의 전체 재생 시간을 초 단위로 반환하는 속성입니다. (읽기 전용)

Code Samples

print(AnimationTrack.Length)

Looped

bool

애니메이션 완료 후 자동으로 다시 반복 실행할지를 지정하는 속성입니다.

이 속성은 애니메이션을 실행하기 전에 미리 지정해야 정상적으로 반영됩니다. 실행 중에 값을 변경할 경우, 해당 애니메이션이 종료된 뒤 기본 애니메이션으로 돌아가지 않고 그대로 멈출 수 있으므로 주의가 필요합니다.

Code Samples

AnimationTrack.Looped = true

Priority

Enum.AnimationPriority

여러 애니메이션이 동시에 실행될 때 어떤 동작이 우위를 차지할지 지정하는 속성입니다.

Enum.AnimationPriority는 총 7단계로 구분되며, 가장 높은 Action4부터 가장 낮은 Core까지 세분화되어 있습니다. 애니메이션의 우선순위를 적절히 설정하면, 서로 다른 애니메이션이 한 번에 실행되더라도 부드럽게 조화됩니다.

예를 들어 AnimationTrack의 Priority를 Movement로 지정하면 이동 동작이 발생할 경우 애니메이션이 즉시 중단됩니다. 반면 Priority를 Action으로 설정하면 이동 중에도 애니메이션이 계속 재생됩니다.

기본값은 Action입니다.

Code Samples

AnimationTrack.Priority = Enum.AnimationPriority.Movement

AnimationTrack:Play()

Speed

number

현재 지원되지 않습니다.

Code Samples

TimePosition

number

현재 지원되지 않습니다.

Code Samples

WeightCurrent

number

현재 지원되지 않습니다.

Code Samples

WeightTarget

number

현재 지원되지 않습니다.

Code Samples

Methods

AdjustSpeed

현재 지원되지 않습니다.

Parameters

number InSpeed

Return

void

Code Samples

AdjustWeight

현재 지원되지 않습니다.

Parameters

number InWeight

number InFadeTime

Return

void

Code Samples

GetMarkerReachedSignal

애니메이션 재생 중 특정 키프레임에 지정된 마커에 도달하면 실행되는 이벤트를 반환합니다.

Parameters

string InName

마커의 이름입니다.

Return

ScriptSignal

반환된 이벤트입니다.

Code Samples

local function OnAnimationEvent()
    print("OnAnimationEvent")
end
AnimationTrack:GetMarkerReachedSignal("SomeKeyName"):connect(OnAnimationEvent)

GetTimeOfKeyframe

현재 지원되지 않습니다.

Parameters

string InName

Return

number

Code Samples

Play

애니메이션 트랙을 실행합니다.

InFadeTime은 애니메이션이 재생될 때 가중치가 서서히 증가하는 데 걸리는 시간을 조절하여 점진적인 전환 효과를 제공합니다.

InSpeed는 애니메이션의 재생 속도를 배율로 조정하여 기본 속도보다 빠르거나 느리게 실행되도록 설정할 수 있습니다.

Parameters

number InFadeTime

애니메이션의 가중치가 증가하는 데 걸리는 시간입니다. (기본값은 0.1입니다.)

number InWeight

현재 지원되지 않습니다.

number InSpeed

재생 속도입니다. (기본값은 1입니다.)

Return

void

Code Samples

local Players = game:GetService("Players")

local Character = Players.LocalPlayer.Character
local Humanoid = Character:WaitForChild("Humanoid")

local Animation = Instance.new("Animation")
Animation.AnimationId = "ovdrassetid://18850100" -- WinAnimation01

local Animator = Humanoid:FindFirstChild("Animator")
local AnimationTrack = Animator:LoadAnimation(Animation)

AnimationTrack:Play()

Stop

실행중인 애니메이션 트랙을 정지합니다.

Parameters

number InFadeTime

현재 지원되지 않습니다.

Return

void

Code Samples

AnimationTrack:Stop()

Events

DidLoop

루프 기능이 활성화된 애니메이션 트랙이 루프를 마칠 때마다 실행되는 이벤트입니다.

루프가 끝난 직후 다음 업데이트에서 발생하며, 루프가 없는 애니메이션에는 호출되지 않습니다.

Parameters

Code Samples

AnimationTrack.Looped = true

local function OnLoopAnimation()
    print("The animation looped!")
end
AnimationTrack.DidLoop:Connect(OnLoopAnimation)

AnimationTrack:Play()

Ended

애니메이션 트랙의 재생이 완료되면 실행되는 이벤트입니다.

루프 기능이 활성화되어 있으면 호출되지 않으며, Stop() 메서드에 의해 종료될 때도 호출됩니다.

Parameters

Code Samples

local function OnEnded()
    print("The animation has ended!")
end
AnimationTrack.Ended:Connect(OnEnded)

KeyframeReached

(Deprecated) 애니메이션이 진행되면서 지정된 이름을 가진 키프레임에 도달할 때마다 실행되는 이벤트입니다.

GetMarkerReachedSignal 사용을 권장합니다.

Parameters

string KeyframeName

키프레임 이름입니다.

Code Samples

local function OnKeyframeReached(keyframeName)
    print(keyframeName)
end
AnimationTrack.KeyframeReached:Connect(OnKeyframeReached)

Stopped

Stop() 메서드에 의해 종료될 때 애니메이션 트랙의 재생이 정지되면 실행되는 이벤트입니다.

Parameters

Code Samples

local function OnStopped()
    print("The animation has been stopped!")
end
AnimationTrack.Stopped:Connect(OnStopped)

See also

캐릭터 애니메이션

Last updated