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);
        }
    }

}