Learning
When: 1학년 9월 3일
How:
학교 수업 시간에 날아다니는 몬스터의 이동을 구현해야 했는데, 선생님이 Spline이라는 기능을 알려주셔서 공부하게 되었습니다.
Understanding:
- 사용법 :
- Spline은 맵에 마우스로 경로를 만들어서 오브젝트가 그 경로를 따라 이동하게 만들 수 있는 기능입니다.
앞서 말한 것처럼, 특정 사물의 이동 패턴을 만들 수 있습니다. Spline을 만드는 방법은
하이라키 창에서 오브젝트를 만드는 방법과 같은데, 우클릭 -> Spline -> Draw Splines Tool을 눌러
직접 Spline을 만들거나 Square, Star 등의 모양의 Spline을 만들 수도 있습니다.
클릭해서 Spline을 만들고 esc 키를 둘러 만드는 것을 종료하면 Spline을 만들 수 있습니다. - 만든 Spline을 사용하기 위해선 움직일 오브젝트에 Spline Animate 컴포넌트를 붙이고
설정을 조정하면 끝납니다.
- Spline은 맵에 마우스로 경로를 만들어서 오브젝트가 그 경로를 따라 이동하게 만들 수 있는 기능입니다.
- 설정 :
- Spline : 만들어진 Spline을 넣어주면 됩니다.
- Up/Forward Axis : Spline은 3D 게임을 기준으로 하므로 그냥 위를 Y로,
앞은 Z로 설정한다면 오브젝트가 Spline에 관통되며 움직입니다. 그래서 위쪽으로 90도 돌려주면 딱 맞는데,
Up이 Y일 때 카메라 방향이 되기 때문에 Z로 바꿔주고, Z가 아래 방향이기 때문에 Y로 바꿔주면
원하는 대로 움직입니다. - Align To : 방금 제대로 움직이지 않았던 이유가 Align To가 Spline Element 였기 때문인데,
World Space나 Spline Object로 설정한다면 오브젝트가 Spline에 맞게 돌아가진 않아도
Spline을 따라 잘 움직인다. - Play On Awake : 시작할 때 Play를 하게 됩니다.
- Start Offset : * 1000%로 해서 시작할 때 처음에서부터 몇 %만큼 앞에서 시작할지 정할 수 있습니다.
0.5로 하면 Spline의 중간에서부터 시작합니다. - Method : Time은 그 밑의 Duration과 Speed 중 하나를 정해 속도를 조절할 수 있습니다.
Time으로 하면 Duration을 조정하여 Spline의 끝까지 가는 데 얼마나 걸리게 할지를 정할 수 있고,
Speed로 하면 Speed를 조절하여 속도를 조절할 수 있습니다. - Easing : Easing으로 속도의 변화를 설정할 수 있습니다. Ease In Only는 갈수록 빨라지는,
Ease Out Only는 갈 수록 느려지는, Ease In-Out은 처음부터 중간까지는 느려지고,
중간에서 끝까지는 빨라지는 다른 2개를 섞은 Ease입니다. - Loop Mode : 재시작을 어떻게 할지 정할 수 있습니다. Once는 한 번만 실행하고
재시작하지 않는 것이고, Loop Continuous는 계속 처음부터 재시작하는 것입니다.
Ease In Then Continuous는 계속 처음부터 다시 시작하되, Easing으로 빨라진 속도는
초기화되지 않기 때문에 Easing이 Ease In Only일 때 처음에는 한 바퀴에 1초가 걸렸다면
두 번째 바퀴에선 0.5초만 걸리게 됩니다. Ping Pong은 Spline이 끝났을 때 역방향으로
다시 되돌아가는 것이 반복됩니다.

Result: 최근에 이런 이동을 쉽게 하는 것을 DOTween으로 밖에 못했는데, 마침 필요할 때 배워서 좋았습니다.
'UnityEngine' 카테고리의 다른 글
| [Unity] 글자에 맞게 UI 크기 조절하기 (0) | 2025.09.05 |
|---|---|
| [Unity] Layout Element (0) | 2025.09.04 |
| [Unity] DOTween Seqence (3) | 2025.08.21 |
| [Unity] Unity 이벤트 메서드 (5) | 2025.08.18 |
| [Unity] Y-Sorting (1) | 2025.08.17 |