Xeelee schrieb:
@noxon
Nur dass der größte Teil dessen was du beschreibst bisher nur als Wunsch existiert.
64 Bit conversion ist abgeschlossen, Object Container existieren, Zone System existiert, Render2Texture Technologie existiert, Localized Physics Grids existieren, MegaMap existiert, Item Port System existiert, Subsumption existiert, Unified Animation System existiert, Batch Updater existiert, Serialized Variables existieren, alle möglichen prozedurale Technologien existieren und so weiter und so fort.
Das sind viele der grundlegenden Techniken und die sind auch schon im einsatz, sonst würde das Spiel nicht laufen, so wie es jetzt läuft.
Teilweise sind sie nur halt nur noch nciht vollständig abgeschlossen, so wie man sich das in seiner finalen Phase wünscht.
1st und 3rd Person Unification funktioniert ja zum Beispiel, aber dennoch kann man da noch vieles dran verbessert, bevor es wirklich perfekt ist.
Um das zu erreichen ist aber auch wichtig, dass dafür entsprechende Designer-Tools zur Verfügung stehen und auch die mussten entwickelt werden. DataForge = RegEdit für SC um nicht alles mit XML Dateien machen zu müssen, wie es die Lumberyard eigentlich vorsieht.
PlanEd und SolEd um Planeten und Sonnensysteme editieren zu können. CityEd um Städte und später auch Raumstationen prozedural generieren zu können. Subsumption Editor für die KI und das Mission Design.
Und natürlich noch alle möglichen Tools die man sonst so im Alltag benötigt.
Das zu entwickeln hat alles Zeit benötigt, aber es existiert jetzt zum großen Teil und Entwickler können diese Dinge jetzt endlich nutzen um den Content für das Spiel zu entwickeln und müssen sich nicht mehr darum kümmern die Tools zu entwickeln.
Die kommenden Features wie Object Container Streaming, Network Entity Streaming und solche Dinge sind also eigentlich nur noch Verbesserungen bereits existierender Technologien.. Sehr viele Dinge müssen jetzt statt synchron, asynchron verarbeitet werden und auf den Batch Updater verlagert werden um die Performance zu verbessern.
Auch das Server-Meshing wird bald kommen, was die Simulation von einem Server auf mehrere Server ausweiten wird und irgendwann wird SC dann das eine Sonnensystem so weit ausgebaut haben, dass es Zeit wird mehrere zu bauen und Jumppoints in's Spiel zu integrieren. Danach wird es dann aber auch schon kurz vor der Fertigstellung stehen.
Es geht jetzt nicht mehr so sehr um das Entwickeln neuer Core-Features, sondern um das ausbauen und optimieren existierender Features und das Erzeugen des Contents und der Game-Mechaniken.
Ob, wie und in welcher Tiefe das alles umgesetzt wird und werden kann steht im wahrsten Sinne noch in den Sternen. Denn am Ende des Tages hat CIG die selben Limits was die zugrundelegende Engine tatsächlich liefern kann wie jeder andere auch.
Naja, sie haben ja nicht ohne Grund jahrelange an der CryEngine herumgebastelt und sie mittlerweile fast komplett durch eigenen Code ausgewechselt. Es ist jetzt quasi eine Custom-Engine, die genau auf die Anforderungen von SC zugeschnitten ist und deutlich besser für das Spiel geeignet ist als andere Engines und sie ist in genau diesem Anwendungsbereich auch deutlich leistungsfähiger als andere Multipurpose-Engines.
Die Limits sind ja wie gesagt nicht die Selben. Es waren die Selben, bis CIG in praktisch allen Bereich daran gestoßen ist und die Engine deswegen auch in allen Bereichen erweitern musste.
32 Bit Worldspace reichte nicht um mehr als 8x8km in 1mm Genauigkeit ohne Jitter-Effekte darstellen zu können, also hat man es erweitert.
Eine einfache globale Physiksimulation reichte nicht aus also hat man localized physics grids implementiert.
Raumschiffe hatten zu viele Poligone und wurden zu komplex um in der Engine bearbeitet werden zu können.
Die CryEngne konnte auch nur 65535 Animationen verwalten und SC benötigte deutlich mehr.
Die Physik-Engine der CryEngine hatte sehr merkwürdige Effekte. Definierte zum Beispiel alles Y< 0 als "Unter Wasser" und Raumschiffe fliegen sich halt komisch unter Wasser.
Auch der Netcode war ab einer bestimmten Schwelle überlastet und hat Fehler verursacht und musste irgendwann aufgrund der speziellen Bedürfnisse ohnehin neu implementiert werden.
Für das Diffusion-Backend verwendet CIG sogar eine eigens entwickelte Scriptingsprache namens OOZ.
Die Art wie Gegenstände in der CryEngine verwaltet wurden, war für SC auch nicht ausreichend und musste deswegen komplett neu implementiert werden
Gleiches galt für das Animationssystem, welches CIG vereinheitlichen wollte.
Für Vulkan/DX12 war die CryEngine ebenfalls nicht vorbereit. Sie arbeitet quasi nur auf einem Mainthread und ist nur in der Lage einzelne Aufgaben wie Physik, Audio oder KI auf andere Threads auszulagern aber nicht in der Lage massiv zu parallelisieren, wie das für die neuen APIs von Nöten ist.
Limits über Limits und daher eben die ganzen neuen Technologien, die die Alten ersetzten.
PS: Wenn ich hier von CryEngine rede, dann meine ich im gleichen Zug natürlich auch die Lumberyard Engine. die unterscheidet sich dort kein Stück von der alten CryEngine.
Ich spreche hier auch nciht von der aktuellen CryEngine, sondern von der, auf der CIG damals aufgebaut hat und immer nur gewisse Teile integriert hat.
@
Nai
Das IFCS verhindert zum großen Teil den Glatteis-Effekt indem es dein Raumschiff herunterbremst.
Es ist ein automaitsches Fly-by-Wire System. Das Raumschiff als Mensch vollkommen von selbst zu kontrollieren wäre viel zu kompliziert, daher übernimmt das IFCS die Steuerung und es versucht das Raumschiff immer direkt dahin zu steuern, worauf du gerade die Nase deines Raumschiffes ausrichtest ohne zu driften.
Das geht nur, wenn es dabei abbremst und um dich dabei nicht zu hohen G-Kräften auszusetzen ist deine Geschwindigkeit immer begrenzt und wenn sie doch etwas zu hoch ist, dass kannst du tatsächlich ohnmächtig werden oder du fängst tatsächlich an zu driften.
Das kann man aber auch mittels Boostern und Afterburnern alles beeinflussen, was aber zusätzlichen speziellen Treibstoff erfordert.
An all diesen Mechaniken und am IFCS wird aber noch hart gearbeitet.
Früher gab es dafür extra einen
G-Safe und COMSTAB Modus. Heute haben die Modi schon alle wieder geändert und Morgen sieht das vielleicht schon wieder ganz anders aus.
Ach ja. Und natürlich ist der Grund das Gameplay. Dennoch muss man das alles auch sinnvoll erklären. Simuliert wird das Ganze dann auch tatsächlich über G-Kräfte und die Masse des Schiffs und solche Dinge.
Da steht nicht Schiff = Max-Geschwindigkeit 200 m/sec in den Spielregeln und das ist dasnn so fix im Spiel. Die Maximalgeschwindigkeit ändert sich, wenn du Fracht geladen hast, weil das IFCS dann nicht in der Lage ist die größere Masse so gut zu manövrieren. Genau so ändert sich das, wenn im Kampf Thruster beschädigt wurden und solche Dinge.
Das ist halt das schöne daran, dass sich Zusammenhänge in SC durch Simulationen ergeben und nicht einfach durch Parameter in Dateien definiert sind.