Zehkul schrieb:
Mantle wurde als fernes Ziel genannt und die Unterstützung dafür ausgesprochen. Es wurden genau 0 Zeilen Code für Mantle geschrieben, egal ob vor oder nach Ankündigung.
„Zu Anfang“ gab es vanilla Cryengine und damit eine ganz normale um DX9 herum aufgebaute Engine. Leute, die sich ums Multithreading kümmern, also deine “Low Level Programmierung”, gibt es in Star Citizen in etwa seit es Foundry42 Frankfurt gibt.
Ja und? Die Spieleentwicklung beginnt ja auch nicht mit der Low Level Programmierung.
Chris Roberts plant das Projekt viele Jahre im voraus und was denkst du warum die Schiffe alle zig mal überarbeitet und optisch deutlich verbessert wurden? Glaubst du der Detailgrad von Star Citizen, so wie er jetzt ist, war ansatzweise so von Anfang an geplant?
War er nicht. Das entwickelte sich erst in den ersten 18 Monaten der Entwicklungsphase wo immer mehr Geld floss und für Chris Roberts abzusehen war das noch viel Geld hereinkommen wird. Dadurch wurde das ganze Projekt ja immer weiter nach oben skaliert in allen Dimensionen und in jedem Detailgrad, was ja zwangsläufig zu den vielen Verschiebungen führte. Das was da ist und was noch kommen wird, könnte man kaum mit DX11 realisieren. Außer jeder hat einen potenten i7 OctaCore.
Und bisher haben wir nur einzelne Teilstücke testen können. Da kommen noch diverse Dinge hinzu, angefangen von KI gesteuerten Charakteren, Schiffen und so weiter.
Die CPU Last wird zwar durch DX12 reduziert aber gleichzeitig durch neue Spielinhalte gesteigert werden.
Viele Dinge fehlen bisher einfach noch im Spiel welche die Anzahl der Berechnungen weiter erhöhen werden.
Im fertigen Spiel wird es sicherlich größere Raumschlachten mit 20-40 Schiffen, vielleicht sogar eine große Schlacht mit bis zu 100 Schiffen geben. Das wirst du dann gar nicht mehr mit dem alten Arena Commander und 16 Spielern vergleichen können.
Und Multithreading hat per se erstmal nichts mit Low Level Programmierung zu tun.
Was Low Level Programmierung bedeutet weißt du ja hoffentlich. Das ist eine Programmierung viel näher an der Hardware als dies mit DX11 möglich gewesen wäre. Die einzelnen Einheiten des Grafikchips lassen sich viel direkter ansprechen und man wird nicht mehr durch eine dicke API-Schicht gestört und verringert dadurch die CPU Zugriffe und kann Berechnungen effizienter und flexibler ausführen lassen.
Gerade HSA ist auch nochmal eine andere Programmierung. Da müssten diverse Dinge in der Engine massiv umgeschrieben werden wenn man maximal davon profitieren will und dann ist da noch die Kosten-Nutzen-Frage, ob es sich überhaupt lohnt ein Projekt nachträglich für HSA zu optimieren. Wahrscheinlich nicht denn mir ist kein Beispiel bekannt wo das jemals gemacht wurde.
Das Optimum da rauszuholen ist nicht trivial.
Zehkul schrieb:
Was verwechsel ich wo irgendwie? Und worauf willst du überhaupt hinaus? Erst "Star Citizen kann nie auf Konsolen laufen", dann wird der gute alte Mythos der hardwarenahen Konsolenprogrammierung ausgepackt?
Mythos? Ist dir das nicht peinlich sowas zu sagen?
Es ist schon immer so gewesen das die Hardware bei Konsolen direkter angesprochen werden konnte während bei Windows die API für deutlichen Overhead sorgte.
Was glaubst du denn aus welchem Gedanken sich Mantle und DX12 entwickelt haben? Direktere Hardwareprogrammierung wie bei Konsolen fordern einige Entwickler schon seit Ewigkeiten. Das höhere Programmiersprachen ineffizienter sind sollte jedem bewusst sein der sich etwas mit Programmierung auskennt.
Nach sowas wie Mantle wurde ja schon viele Jahre vorher geschrien und viele waren glücklich das mit Mantle endlich ein riesiger Schritt in diese Richtung getan hat. Du konntest ja mit DX11 nicht mal alle Funktionen der Grafikkarten nutzen weil die API dir einen Riegel vorgeschoben hat.
Zehkul schrieb:
Klar. Weil sich jetzt tatsächlich um Multithreading gekümmert werden muss. Kostet, und war bisher nie nötig. Die Konsolen hatten nicht so viele Kerne und der PC hatte keine brauchbare API – und konnte eh einfach höhere Single Core Leistung an das Problem werfen.
Nun bewegt sich die gesamte Industrie recht geschlossen in Richtung Zukunft. Ist doch schön.
Das ist es ja! Zu PS3 Zeiten hatten die Konsolen mehr Kerne aber am PC hat der Core2Duo die Leistung nach ein paar Jahren schon aus 2 Kernen rausgeballert.
Jetzt haben wir aber eine ganz andere Situation: Die PCs habe die deutlich stärkeren CPUs und Star Citizen wird selbst für den PC schon auf 8 Kerne optimiert. FRAG DICH MAL WARUM! Bestimmt nicht weil so viel CPU Leistung mit DX12 übrig bleiben wird das man sich auf 4 Threads ausruhen könnte.
Und wenn selbst am PC mit guter Low Level Programmierung 4-8 Kerne außerordentlich stark gefordert werden will ich mal sehen wie du das ganze Spiel mit einem Drittel der Leistung auf den Konsolen zum laufen bringen willst.
Zehkul schrieb:
Die auch wieder die CPU entlasten.
Nur unter bestimmten Umständen, wenn man Grafikleistung dafür opfert und nur im sehr begrenztem Umfang.
Erzähl uns jetzt nicht das die ACEs die schlechte CPU Leistung der Konsolen retten würden dann dafür würde dir jeder den Vogel zeigen.
Zehkul schrieb:
Die nächste Zeile direkt nach dem, was du aus meinem Post gequotet hast, war in unsichtbarer Tinte geschrieben, hat dein Bildschirm verschluckt oder du sie absichtlich ignoriert?
Deine Aussage, dass das mit der Speicherersparnis nicht der Hauptgrund für HSA ist und das dies nicht deine Behauptung war?
Wieso sollte ich das nochmal zitieren, geschweige denn kommentieren?
Zehkul schrieb:
Was soll daran unverständlich sein? Ich habe eine hohe CPU Leistung für Spiele mit einem Messer bei einer Schießerei verglichen. Falsche Baustelle, das Messer gehört in die Küche und die Grafikkarte sorgt für höhere Framerates.
Ehm??? Das Deutsch? Man versteht gar nicht was dieser Teilsatz "
weil mit mehr CPU Leistung bei Spielen auftauchen noch schlimmer ist" bedeuten soll.
Und was der dämliche Vergleich mit dem Messer soll darfst du mir auch nochmal schildern. Willst du damit sagen das die CPU unbedeutend für die fps sind?
Zehkul schrieb:
Nichts deutet darauf hin, dass Squadron42 ein großartig anderes CPU/GPU Anforderungsverhältnis haben wird als andere Spiele. Wird auf jeden Fall weit hinter KSP zurückbleiben. Squadron42 könnte man höchstwahrscheinlich mit vertretbarem Aufwand auf Konsolen zum Laufen zu bringen.
Das Verhältnis muss doch nicht anders ausfallen um die PS4 in die Knie zu zwingen.
Man sieht doch schon mir klarem Verstand dass das Verhältnis bei der Hardware von GPU zu CPU sich von PS3 zu PS4 komplett gewandelt hat im Vergleich zum PC.
Damals hatten PS3 und 360 die fettesten CPUs verbaut die es gab welche deutlich mächtiger waren als ein ein Athlon 64 DualCore. Erst der Core2Duo konnte teilweise mithalten, wurde aber auch in Games wie GTA4 zerstört wo die Konsolen alle Kerne nutzten.
Heute sieht das komplett anders aus weil eben viel mehr Wert auf die GPU gelegt wird. Die GPU kann Arbeit von der CPU übernehmen aber nicht wenn die GPU selbst schon total mit Grafikeffekten überlastet ist und erst recht nicht Last die man nicht auf die GPU auslagern kann, wie Gamephysik, KI-Berechnungen, Wegfindung, Levelstreaming, usw.
Zehkul schrieb:
Selbst für den Online Aspekt von Star Citizen hat Chris Roberts nie die Leistungsfähigkeit in Frage gestellt, sondern die Geschlossenheit der Plattform als Hauptproblem genannt.
Ich wage mal zu bezweifeln das man das jetzt schon beurteilen kann. Chris muss erstmal zusehen das er das Spiel flüssig auf dem PC zum laufen bekommt. Vor allem wenn mal 50-100 Schiffe und mehr in einer Schlacht miteinander kämpfen sollen.
Sicher, irgendwie kann man alles auch auf einer schwachen Plattform zum Laufen bekommen, siehe Bioshock auf dem iPad aber ist das am Ende noch das gleiche Spiel wenn die Hälfte aller Details fehlt und im Falle von Star Citizen vllt noch die Weitsicht künstlich beschränkt werden muss, Objekte, Charaktere und Schiffe ausgeblendet werden müssen und eventuell trotzdem Nachladeruckler vorhanden sind?
Das Bioshock auf dem iPad würde ich mitnichten mit dem echten Bioshock vergleichen wollen obwohl es sich dort wirklich nur auf die grafischen Eigenschaften ausgewirkt hat.
https://www.unocero.com/wp-content/uploads/2014/08/bioshh1.jpg
Kaputtoptimieren kann man alles....aber denkst du das Chris Roberts ein Squadron21 auf den Konsolen herausbringen würde?
Und vergiss mal nicht das in den Konsolen noch arschlahme Festplatten drin sind. Stream damit doch mal ein ~100GB Game. ^^ Aufwendigeres Steaming kostet übrigens zusätzliche CPU Leistung.