38 lines
1.3 KiB
C#
38 lines
1.3 KiB
C#
using UnityEngine;
|
|
|
|
public class AnimasiLogo : MonoBehaviour
|
|
{
|
|
[Header("Pengaturan Goyangan (Rotasi)")]
|
|
public float kecepatanGoyang = 2.5f; // Seberapa cepat goyangnya
|
|
public float sudutGoyang = 4f; // Seberapa miring goyangannya (derajat)
|
|
|
|
[Header("Pengaturan Denyut (Skala)")]
|
|
public bool aktifkanDenyut = true; // Centang jika ingin logonya membesar-mengecil
|
|
public float kecepatanDenyut = 2f; // Seberapa cepat denyutnya
|
|
public float besarDenyut = 0.03f; // Seberapa besar perubahannya
|
|
|
|
private Quaternion rotasiAwal;
|
|
private Vector3 skalaAwal;
|
|
|
|
void Start()
|
|
{
|
|
// Menyimpan posisi dan ukuran asli logo saat game dimulai
|
|
rotasiAwal = transform.localRotation;
|
|
skalaAwal = transform.localScale;
|
|
}
|
|
|
|
void Update()
|
|
{
|
|
// 1. Animasi Goyang Kanan-Kiri (Sumbu Z)
|
|
// Menggunakan Mathf.Sin untuk pergerakan bolak-balik yang sangat halus
|
|
float ayunan = Mathf.Sin(Time.time * kecepatanGoyang) * sudutGoyang;
|
|
transform.localRotation = rotasiAwal * Quaternion.Euler(0, 0, ayunan);
|
|
|
|
// 2. Animasi Denyut Membesar-Mengecil (Opsional)
|
|
if (aktifkanDenyut)
|
|
{
|
|
float skala = 1f + (Mathf.Sin(Time.time * kecepatanDenyut) * besarDenyut);
|
|
transform.localScale = skalaAwal * skala;
|
|
}
|
|
}
|
|
} |