Silencium schrieb:
Und dank netcode dann dennoch mit 30 FPS 😬
Es gibt nicht „den Netcode“, und Netcode an sich hat auch nichts mit FPS zu tun.
Was Leute mit Netcode meinen, hat eigentlich recht wenig mit Netcode zu tun, auch wenn es auch darüber gelöst werden könnte: Es ist das Problem, dass eine Menge Entities verarbeitet werden, die nicht einmal mit einem einzelnen Pixel am Schirm sichtbar sind und das auch mit mehreren Minuten Quantum Travel noch nicht wären. Die Optimierung, diese Objekte nicht mehr ins normale Frame Rendering einzubeziehen, kann auf Network Ebene erfolgen (der Server sendet einfach nichts mehr), genauso gut kann aber auch der Client einfach einen großen Teil der Daten ignorieren, die er bekommt. Je nach Datenstruktur kostet das ziemlich genau null Rechenkraft, man müsste also schon schön blöd sein, dort Performance zu verlieren.
Idealerweise macht man vermutlich beides – den Client alles ignorieren zu lassen funktioniert ganz offensichtlich nur sehr schlecht, da das massiv Bandbreite verschwendet (hat mit FPS aber auch wenig zu tun), und den Server, der deutlich weniger und auch nur verzögerte Information über die lokale Renderingsituation hat, über was im Wesentlichen die Sichtweite ist entscheiden zu lassen, erscheint mir auch nicht die allerbeste Idee zu sein.
Object Container sind auf alle Fälle ein erster großer Schritt in diese Richtung, und haben nichts mit Netcode zu tun, sind aber verdammt wichtig. Ohne kann Star Citizen nie auf Sonnensystem-Größe funktionieren. Was es ist? Sichtweite für Objekte (Entities), nur in etwas fortgeschrittener. Anstatt nur ab einer gewissen Distanz Information abzuschneiden, wird das auch anhand von Topologie entschieden.
Network Bind Culling vom Schedule wirkt dürfte dabei genau die Optimierung sein, die an der Stelle die Bandbreite spart, wo ich sie als verschwendet aufgelistet habe. Hat nicht viel mit FPS zu tun, solange die Client Sichtweite nicht davon abhängt. (Was ich nicht glaube)
Gerade in der aktuellen Star Citizen Alpha, die noch gar nicht besonders viele Object Container enthalten könnte, selbst wenn sie denn fertig wären, ist Items 2.0 sehr wichtig und ein großer Faktor für Performance. Kann ja nicht sein, dass eine einzelne Starfarer der Server schon lahm legt. Da hilft es auch nicht viel, wenn dank Object Container Leute in der Station nicht so viel davon mitbekommen, denn die Haupt-Action wird meist bei den Schiffen draußen stattfinden.
Wenn das Objekt-Updating wirklich bis hin zu Objektebene Parallelisiert ist, sind wirklich nur die Sterne die Grenzen bei großen Schlachten. Aggressive LoDs retten die GPU vor Überhitzung (in einer großen Schlacht klebt auch keiner mit der Nase an einer Wand um detaillierte Meshes zu bewundern) und die 32 Kern CPU regelt für die Schiffe.

LoGH Reenactment here I come …