Unity - Kann eine Funktion ausgelöst werden, sobald ein Variable Wert sich ändert?

Hallo.

ich habe in meinem spielt sehr viele Funktionen, die über public void update laufen, also jeden Frame ausgelöst werden. Zum Beispiel:

if (Leben == 0)

{
Destroy(gameObject);
}

Ich mache mir dabei ein wenig Sorgen, dass es es von der Leistung zu viel wird für das Gerät auf dem das Spiel läuft. Besonders, weil ich mir denke, dass es bei vielen Funktionen gar nicht nötig ist jeden Frame abgefragt zu werden, weil sie nur paar mal ausgelöst werden. Deshalb wollte ich mal fragen, ob es möglich ist, dass eine Funktion nur dann ausgelöst wird, sobald der Wert einer Variable sich verändert. Zum Beispiel soll Funktion a ausgelöst werden, sobald int Leben seinen Wert ändert z.B. von 10 auf 9. klar könnte ich den Wert abspeichern und sobald der aktuelle Wert nicht mehr den abgespeicherten Wert entspricht wird die Funktion dann ausgelöst, aber dann nutze ich ja auch wieder public void update um das abzufragen.
Wie machen das gewöhnlich die Profis? Lassen sie wirklich Funktionen wie diese jeden Frame abfragen? Bitte um Hilfe!

Und dazu würde mich auch interessieren, wie sehr belastet zum Beispiel das obige Beispiel die Leistung eines Geräts, wenn 100 Funktionen wie diese jeden Frame abgefragt werden? Gibt es ein Maß an den man sich richten sollte oder kann ein gewöhnliches Gerät sogar bedenkenlos viele solcher Funktionen per Frame mit Leichtigkeit abfragen?

Computer, Leistung, Unity
Excel: Wenn Werte aus 2 Tabellenblättern gleich, dann Zelle kopieren.. Funktion gesucht?

Hallo zusammen,

ich habe eine Excel-Tabelle mit 2 Blättern.

Tabellenblatt 1 sieht in etwa so aus

A:             B:Kunde    C:Bestellung    D:Personen-nr.

                     1234       10                 2

                      5678         4                  3

                      9876         4                 4

Tabellenblatt 2 so:

A:Kunde   B:Bestellung   C:Personen-Nr. D: Bemerkung

1444         8                2                                 Hunde vorhanden

9876        4                 4                                telefonisch nicht erreichbar

3987        4                4                                 telefonisch nicht erreicht

  Nun möchte ich im Tabellenblatt 1 die Bemerkung angezeigt bekommen, sofern eine Übereinstimmung mit Kunde, Bestellung und Personen-Nr. zusammen gibt.. In Spalte A soll also neben dem Kunden 9876 "telefonisch nicht erreicht" stehen.

Die Daten in den Tabellen sind nicht sortiert und sollen auch nicht sortiert werden.

Weiß hier jemand eine Lösung?

Vielen Dank schon einmal.

Computer, Microsoft Excel, Schule, Formel

Meistgelesene Beiträge zum Thema Computer