UpdateProbe.cs
Download
using UnityEngine;
using System.Collections;
public class UpdateProbe : MonoBehaviour {
// Achtung: Dieses Property ist an sich inzwischen
// überflüssig, da die Reflection Probe eine Einstellung
// Refresh Mode = Every Frame hat. Wenn man die auswählt,
// ist dieses gesamte Script nicht mehr notwendig.
// Eine Möglichkeit wäre, entweder Refresh Mode auf
// Via Scripting einzustellen und die Updates mit der
// hier eingestellen Frequenz laufen zu lassen, oder
// dieses Script zu deaktivieren (bzw. zu entfernen)
// und Refresh Mode auf Every Frame zu stellen.
public bool everyFrame = true;
[Range(5F, 60F)]
public float updateFrequencyHz = 5F;
private ReflectionProbe probe = null;
void Awake() {
probe = GetComponent<ReflectionProbe>();
}
// Diese Methode (und dann natürlich auch die Deklaration
// von everyFrame) kann man löschen und dann stattdessen
// Refresh Mode an der Reflection Probe auf Every Frame
// setzen und das Script deaktivieren oder löschen.
void Update() {
if (everyFrame) {
probe.RenderProbe();
}
}
private IEnumerator UpdateLoop() {
while (true) {
if (!everyFrame && this.enabled) {
probe.RenderProbe();
}
yield return new WaitForSeconds(1F / updateFrequencyHz);
}
}
}