Deutsches Simutransforum
CUDA und Co. - Druckversion

+- Deutsches Simutransforum (https://simutrans-forum.de/mybb)
+-- Forum: Simutrans (https://simutrans-forum.de/mybb/forumdisplay.php?fid=3)
+--- Forum: Programmierung und Patches (https://simutrans-forum.de/mybb/forumdisplay.php?fid=38)
+--- Thema: CUDA und Co. (/showthread.php?tid=6662)

Seiten: 1 2 3 4


CUDA und Co. - Würfel_21 - 27-05-2012

Wäre es möglich bei Simutrans eine beschleunigung durch die grafikkarte einzubauen?(Mit CUDA,OpenCL oder direct compute und wie sie alle heißen)
dan würde es nicht mehr so laggen wen ich lange strecken lösche.


- a0001 - 27-05-2012

Würfel_21
Deine Idee Kann leider nicht in Simutrans eingebaut werden!
Es gibt noch Simutransfan´s die haben so etwas nicht!


- Würfel_21 - 27-05-2012

DAS kann man reinmachen und wenn der computer auf dem gespieltwird das nicht untestützt dann stört das nicht


- The Transporter - 27-05-2012

Dann würde ich mal vorschlagen, mach es!
Denk dabei aber an alle Versionen: Win-SDL, Win-GDI, MAC- x86, MAC- PPC, und die diversen Linux Varianten.
Und immer schön mit Updates versorgen.


- wernieman - 27-05-2012

Der Grund ist ein ganz anderer:

Simutrans ist ein pseude-3D Spiel, weshalb eine Grafikbeschleunigung da sehr wenig bringt. Auch eine Vektorberechnung (CODA etc.) bringt beim Aufbau des Codes nichts.

Edit:
Es ist Mist, wenn man so lange zum schreiben eines Beitrages braucht. Dieses war als Antwort auf a0001 geschrieben ....


- Würfel_21 - 27-05-2012

es heißt CUDA und hat mit grafik nichts zu tun es ist dafür da einfache aufgaben der grafikkarte
zu übergebeben ,die solche aufgaben viel schneller macht


- The Transporter - 27-05-2012

Du brauchst hier nicht gleich irgendwelche Fehler anderer Anmeckern, wenn doch, dann schau erstmal auf Deinen Schreibstil!

Es wird ausser einen großen Aufwand um den ganzen Code umzustellen, nicht wirklich viel bringen. Die Grafikkarte kann nicht alle Rechenoperationen beschleunigen. Und das hat Wernieman schon geschrieben.


- wernieman - 27-05-2012

Egal ob CUDA oder eine andere Grafikkarten-Bibliotek:

Hintergund:
Die Grafikkarte ist für SIMD optimiert (was man eben für Grafik braucht), eben Vektorberechnung und die "Bibliotheken" ermöglicht es, das auch anderer Code dieses verwenden kann. Da der Simutrans-Code allerdings auf SISD optimiert ist...


- SimuSpieler - 28-05-2012

CUDO & CO bringt nichts.
Da der Code sehr Objektorientiert mit vielen Verzweigungen aufgebaut ist und kaum Fließkommarechnungen beinhaltet, welche auf der GraKa aber gerade so schnell sind.

Was ich mir wünschen würde, wäre, dass das Rendering von der Grafikkarte übernommen wird.
Den genau defür ist sie schliesslich gedacht.
2D oder nicht spielt keine Rolle.
Es hat auch seinen Grund, dass das alte SDL seit einiger Zeit haushoch von dem Grafikkartenbeschleunigten SFML übertroffen wird. (beides 2D-Libs)

Natürlich müsste man dafür eine große Menge Code neuzuschreiben, aber wenn man es richtig macht, bringt es einen ordentlichen Qualitäts-(Bilineares Filtern, endlich Alphakannal, lückenloses Zoomen, Hq2x, weniger Grafikfehler da Z-Buffer) und Geschwindigkeitszuwachs.


- The Transporter - 28-05-2012

Schon richtig.
Aber wer soll es machen?
Und wann?
Es sind alles Freizeit und Hobby Programmierer, das darf auch nicht vergessen werden.