1. DOShakePosition
- duration: 흔드는 시간(초)
- strength: 흔드는 거리(강도) — Vector3 또는 float 가능
- vibrato: 흔드는 진동 수(진동 횟수)
- randomness: 흔드는 방향의 불규칙 정도 (0~180도)
- fadeOut: 흔들기 끝날 때 점점 줄어드는 효과 여부 (기본 true)
using UnityEngine;
using DG.Tweening;
public class SpriteFade : MonoBehaviour
{
private float elapsedTime = 0f;
void Start()
{
// 5초 동안 흔들기, 흔드는 강도 5f, 진동 10회, 흔들림 강도 랜덤 정도 90도
transform.DOShakePosition(5f, strength: 5f, vibrato: 10, randomness: 90f)
.OnComplete(() => Debug.Log("흔들기 끝!"));
}
private void Update()
{
elapsedTime += Time.deltaTime;
if (elapsedTime >= 5f)
{
Debug.Log("5초");
}
}
}
fadeOut: false
using UnityEngine;
using DG.Tweening;
public class SpriteFade : MonoBehaviour
{
private float elapsedTime = 0f;
void Start()
{
// fadeOut: false
transform.DOShakePosition(5f, strength: 5f, vibrato: 10, randomness: 90f, fadeOut: false)
.OnComplete(() => Debug.Log("흔들기 끝!"));
}
private void Update()
{
elapsedTime += Time.deltaTime;
if (elapsedTime >= 5f)
{
Debug.Log("5초");
}
}
}
2. DOShakeRotation
축으로 회전하며 흔들기
using UnityEngine;
using DG.Tweening;
public class SpriteFade : MonoBehaviour
{
private float elapsedTime = 0f;
void Start()
{
transform.DOShakeRotation(
duration: 3f, // 흔들기 시간
strength: new Vector3(0, 0, 90), // 흔들림 각도 (Z축으로 회전 흔들기)
vibrato: 10, // 진동 횟수
randomness: 180f, // 랜덤한 각도 퍼짐 정도
fadeOut: true // 흔들림 점점 줄어들게 할지
).OnComplete(() => Debug.Log("회전 흔들기 완료!"));
}
private void Update()
{
elapsedTime += Time.deltaTime;
if (elapsedTime >= 3f)
{
Debug.Log("3초");
}
}
}
fadeOut: false
using UnityEngine;
using DG.Tweening;
public class SpriteFade : MonoBehaviour
{
private float elapsedTime = 0f;
void Start()
{
transform.DOShakeRotation(
duration: 3f, // 흔들기 시간
strength: new Vector3(0, 0, 90), // 흔들림 각도 (Z축으로 회전 흔들기)
vibrato: 10, // 진동 횟수
randomness: 180f, // 랜덤한 각도 퍼짐 정도
fadeOut: false // 흔들림 점점 줄어들게 할지
).OnComplete(() => Debug.Log("회전 흔들기 완료!"));
}
private void Update()
{
elapsedTime += Time.deltaTime;
if (elapsedTime >= 3f)
{
Debug.Log("3초");
}
}
}
3. DOShakeScale
크기 흔들기
using UnityEngine;
using DG.Tweening;
public class SpriteFade : MonoBehaviour
{
private float elapsedTime = 0f;
void Start()
{
transform.DOShakeScale(
duration: 3f, // 지속 시간
strength: new Vector3(0.5f, 0.5f, 0), // 흔들림 크기 (X, Y축 위주로)
vibrato: 10, // 진동 횟수
randomness: 90f, // 랜덤성
fadeOut: true // 점점 줄어들게 할지
).OnComplete(() => Debug.Log("크기 흔들기 완료!"));
}
private void Update()
{
elapsedTime += Time.deltaTime;
if (elapsedTime >= 3f)
{
Debug.Log("3초");
}
}
}
fadeOut: false
using UnityEngine;
using DG.Tweening;
public class SpriteFade : MonoBehaviour
{
private float elapsedTime = 0f;
void Start()
{
transform.DOShakeScale(
duration: 3f, // 지속 시간
strength: new Vector3(0.5f, 0.5f, 0), // 흔들림 크기 (X, Y축 위주로)
vibrato: 10, // 진동 횟수
randomness: 90f, // 랜덤성
fadeOut: false // 점점 줄어들게 할지
).OnComplete(() => Debug.Log("크기 흔들기 완료!"));
}
private void Update()
{
elapsedTime += Time.deltaTime;
if (elapsedTime >= 3f)
{
Debug.Log("3초");
}
}
}
'DOTWeen' 카테고리의 다른 글
DOTWeen: DOJump, DOText (0) | 2025.07.21 |
---|---|
DOTWeen: DOFade, DOColor (0) | 2025.07.20 |
DOTWeen: Ease4 Flash (0) | 2025.07.20 |
DOTWeen: Ease3 탄성 (0) | 2025.07.20 |
DOTWeen: Ease2 함수 사용 (0) | 2025.07.19 |