Unityde korku oyunu yapıyorsanız işinize yarayabilecek bir script ışıgın intensitysini sürekli düşürüp artırıyor bu da ışıgın yanıp yanıp sönmesini sağlıyor birde ses ekleyince daha kaliteli duruyor.
Not : v o i d, **** diye gözüktügü için ayrı yazılmıştır birleştiriniz.
Kodlar :
Not : v o i d, **** diye gözüktügü için ayrı yazılmıştır birleştiriniz.
Kodlar :
Kod:
using System;
using System.Collections;
using UnityEngine;
using Random = UnityEngine.Random;
[RequireComponent(typeof (Light))]
public class Flickeringlight : MonoBehaviour {
public float MinLightIntensity = 0.6F;
public float MaxLightIntensity = 1.0F;
public float AccelerateTime = 0.15f;
private float _targetIntensity = 1.0f;
private float _lastIntensity = 1.0f;
private float _timePassed = 0.0f;
private Light _lt;
private const double Tolerance = 0.0001;
private v o i d Start() {
_lt = GetComponent<Light>();
_lastIntensity = _lt.intensity;
FixedUpdate();
}
private v o i d FixedUpdate() {
_timePassed += Time.deltaTime;
_lt.intensity = Mathf.Lerp(_lastIntensity, _targetIntensity, _timePassed/AccelerateTime);
if (Math.Abs(_lt.intensity - _targetIntensity) < Tolerance) {
_lastIntensity = _lt.intensity;
_targetIntensity = Random.Range(MinLightIntensity, MaxLightIntensity);
_timePassed = 0.0f;
}
}
}