Zitat von hal
Weil schneller kanns rein aus technischen Gründen schon nicht sein, und sonst hast nicht viel davon.
Ich glaub bei Spielen ist das eigentlich egal.
Behaupten wir mal, Java sei 2 mal so langsam wie normaler C++ Code. Das ist vermutlich ein wenig übertrieben, weils mit neuen Versionen immer schneller wird, aber egal.
Dann behaupten wir mal, ein Spiel braucht 10% CPU-Zeit für die Spiellogik, und 90% für Grafik. Das ist auch schon weit übertrieben, die Norm ist so bei 99% für Grafik. Netzwerkcode und ähnliches ignorieren wir mal, weils kaum in's Gewicht fällt. Vielleicht 20% von diesen 90% Grafik muss der Java-Code machen, den Rest erledigt die Grafikhardware. Wobei dieser 20% Wert heute immer weiter sinkt, dank CG u.ä. Diese Werte sind mal alle ziemlich übertrieben und grob geschätzt.
Wenn man jetzt schaut, was C++ in einer Sekunde macht, sieht man, dass Java selbst bei diesen groben Werten gar nicht so langsam sein kann:
C++:
10ms für Spiellogik
900 ms für Grafik (180ms CPU + 720ms GPU)
== 1000 ms
Java:
20ms für Spiellogik
1080ms für Grafik (360ms CPU + 720ms GPU)
== 1200 ms
Ich hoffe ich hab jetzt nichts falsch gerechnet.
Das gilt halt nur für Spiele, die 3D Hardware nutzen. Aber da das heutzutage sowieso der Fall ist..
Also der Geschwindigkeitsnachteil ist bei Java & Spielen fast egal würde ich sagen. Dafür ist es dann wesentlich sicherer in der Entwicklung.