Thread MMORPG in Perl: Ein paar Fragen (3 answers)
Opened by Sebastian at 2006-08-19 13:39

sid burn
 2006-08-19 18:40
#69000 #69000
User since
2006-03-29
1520 Artikel
BenutzerIn

user image
[quote=Relais,19.Aug..2006, 13:34]Zur letzten Frage siehe CPAN:PAR.

Zur ersten, da mußt Du mal schaun. Wenn Du unter PHP nicht zu sehr gelitten hast, Perl sollte da schneller sein.

Zur zweiten Frage: schau die PAR genauer an ;-)[/quote]
Naja Perl wird nicht wirklich richtig Interpretiert.

Wenn du ein Perl Programm ausführst, dann wird der komplette Perl Source Code in einem Zwischencode Kompiliert, sprich Bytecode, und dieser Bytecode wird dann von einer Virtuellen Maschiene ausgeführt. Obwohl eine Virtuelle Maschiene auch nur eine besondere Form eines Interpreters ist. Nämlich letztendlich ein Bytecode-Interpreter.

Das dies so ist siehst du ja schon wenn du einen Syntaxfehler in einer Zeile, den dann bricht dein Skript noch vor der Ausführung ab. Bei reinen Interpretierten Sprachen siehst du einen Syntaxfehler in Zeile 100 erst, wenn er auch Zeile 100 ausführt, also schon etliche Zeilen darüber ausgeführt hat.


Zur Performance. SDL, OpenGL und andere Bibliotheken sind letztendlich C Bibliotheken. Auch der perl Interpreter ist letztendlich nichts anderes als ein C Programm. Dieses Programm führt dann bestimmte C Befehle aus, je nachdem was du in deinem Perl Sourcecode geschrieben hast. Wenn du SDL, OpenGL Befehle aufrufst dann werden diese Befehle letztendlich mit den C Bibliotheken angezeigt.

Etwas Performanceverlust kannst du sicherlich einrechnen, da die ganzen Befehle erstmal gelesen und dann die richtigen C Bibliotheken aufgerufen werden müssen. Wenn du aber nicht gerade ein Spiel in Half-Life2 Grafik Programmieren möchtest, dann sollte die PErformance okay sein.

Und solltest du wirklich sehr rechenintensive Sachen haben, dann kannst du ja auf C/C++ etc. zurück greifen. Und den Algorhitmus in dieser Sprache implementieren. Ein Modul das dir z.B. sehr einfach erlaubt C einzubetten (oder andere Programmiersprachen) wäre "Inline".


Das einzige Spiel das ich zur Zeit kenne, in Perl Programmiert wurde und ebenfalls die SDL benutzt ist "frozzen-bubble" für GNU/Linux. Unter Debian/Ubuntu sind das die Pakete "frozzen-bubble".

Allerdings nur 2D. 3D Spiele in Perl kenne ich jetzt nicht. Sollte aber auch Möglich sein. Bei Python kenne ich jedenfalls 3D Spiele wie "Slune", und die laufen auch gut. Von der Technik her ist ja Python und Perl an sich identisch.


Übrigens hast du genau das selbe Anliegen was ich auch irgendwann mal machen möchte. ;)\n\n

<!--EDIT|sid burn|1156000563-->
Nicht mehr aktiv. Bei Kontakt: ICQ: 404181669 E-Mail: perl@david-raab.de

View full thread MMORPG in Perl: Ein paar Fragen