Die folgende Antwort basiert auf eigenen RTS-Erfahrungen, die visuell mit Age Of Empires und anderen RTS-Spielen übereinstimmen
Heutzutage gibt es nicht einen, sondern 2 Fog Of Wars (FOW)
Static FOW ist einfacher (einmal aufgedeckt, bleibt offen):
Der erste FOW wird auf der CPU berechnet und für die Spielelogik verwendet, um zu testen, welche Einheiten im Spiel "sehen" und was nicht. Für ein RTS muss es zu 100% zwischen allen Maschinen und Grafikeinstellungen des Players identisch und zu 100% wiederholbar sein, vorausgesetzt, dass RTS traditionell den Mehrspielermodus mit Sperrschritt verwendet. Um eine zusätzliche CPU-Auslastung zu vermeiden, muss diese detaillierter sein - z. B. 1 Beispiel pro Plättchen pro 5 Ticks der Spielelogik (oder Sie können optimieren, indem Sie die Sicht der Einheiten nur aktualisieren, wenn sie auf einem neuen Plättchen ankommen).
Der zweite FOW wird auf der GPU gerendert und ist dynamischer / detaillierter. Diesen FOW sieht der Spieler . Die GPU kann jedes Bild mit einer viel höheren Auflösung rendern / aktualisieren, die die CPU verarbeiten kann (z. B. 4096 * 4096 Pixel), um glatte Sichtkreise zu erzeugen. Da der FOW viel genauer ist, kann die Spiellogik leicht vom FOW abweichen, was in Ordnung ist, da typische Fehlanpassungen am FOW-Rand auftreten, wo die genaue Beurteilung vage ist.
Warum nicht GPU FOW sowohl für Logik als auch für Grafik verwenden? Das Streamen von Texturdaten von der GPU zurück zur CPU nimmt viel Zeit in Anspruch. Das Rendern von GPUs kann nicht als vertrauenswürdig eingestuft werden. Es kann sich stark zwischen den Konfigurationen / Treibern / Einstellungen der Player unterscheiden.
Für statische FOW können Sie mit einer Art "additiven" Updates davonkommen - jedes Mal für jede FOW-Probe - wählen Sie die hellste aus und behalten Sie sie.
Herstellung FOW dynamisch ist ein weiteres komplexes Problem. Im einfachsten Fall kann dynamisches FOW 5 Zustände annehmen: vollständig abgedeckt, halb erforscht, erforscht, halb aufgedeckt, vollständig aufgedeckt. Sie können diese Zustände auf 0, 1-49, 50, 51-99, 100-255 abbilden. Wenn die Einheit Nebel aufdeckt, zeigt sie ihn auf 255. Jedes Häkchen, das Sie "halb aufgedeckt" und "vollständig aufgedeckt" um 10 verringern, bedeutet, dass beim Verlassen der Einheit der FOW 15 Zecken "vollständig aufgedeckt" bleibt, bevor Sie beginnen verblassen bis halb enthüllt und dann weitere 5 Ticks, bevor Sie bei "erkundet" anhalten.