Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Sprache für Spiele? (https://www.delphipraxis.net/72341-sprache-fuer-spiele.html)

CodenameCookie 28. Jun 2006 19:25


Sprache für Spiele?
 
Hallo Ihrs,

was für eine Sprache haltet ihr für die beste für Spieleprogrammierung?

Danke im Vorraus für JEDE Antwort!

Grüsse :)

Matze 28. Jun 2006 19:27

Re: Sprache für Spiele?
 
Selbst habe ich nur rudimentär mit DirectX und Delphi einmal mit einem Spiel angefangen, kann dazu also nicht viel sagen. Sehr gut soll C++ sein.

droppi 28. Jun 2006 19:37

Re: Sprache für Spiele?
 
Naja es kommt natürlich drauf an was du für ein Spiel machen willst. Delphi ist gut für Minispiele. Für größere Projekte kann amn natülich auch Delphi nehemen oder halt auch C++, auch wenn das ein wenig komplizierter ist(aber wenn man einmal programmieren kann fällt die angewöhnung nicht ganz so schwer). Wenn du 3D Programmieren willst würde ich dir das programmieren mit einer Fertigen Engine empfehlen (z.B. mit 3D Gamestudio und der ziemlich guten 3D Engine)
die Sprche hierzu ist C-Script (ziemlich einfach). Also musst du für dich selbst entscheiden was das Beste ist.

CodenameCookie 28. Jun 2006 19:46

Re: Sprache für Spiele?
 
Naja das Spiel sollte ein Game für eine Online Community werden , dass heisst eine art Casino Spiel.

Ich habe seit einem Jahr das Buch "C++ für Spieleprogrammierer" zuhause liegen , allerdings noch nie reingeschaut. Allerdings glaube ich dass es bei einer Sprache wie C++ jahre dauert bist solch ein Spiel realisierbar ist , was meint ihr?

Grüsse

Balu der Bär 28. Jun 2006 19:48

Re: Sprache für Spiele?
 
Delphi ist für größere Spiele wie 3D-Geschichten eher ungeeignet, da man in C zum Beispiel viel betriebssystemnäher programmiert.

JasonDX 28. Jun 2006 19:49

Re: Sprache für Spiele?
 
Das primaere Kriterium fuer die Wahl der Sprache ist: Welche Sprache beherrsche ich am besten. Da ist es besser, auf eine Sprache zurueckzugreifen, die man bereits beherrscht. Sich extra dafuer in eine neue Sprache einzuarbeiten kostet Zeit, und bringt oft nicht das Ergebnis, das man in der Zeit mit einer vertrauten Sprache erreichen koennte.
Weiteres bleibt noch die Frage, ob die gewuenschte Sprache auch den technischen Anforderungen entspricht. Oder anders formuliert: gibt es fuer die gewuenschten APIs auch Header in meiner Sprache. Fuer Sprachen wie Delphi, C(++), C# ect. duerfte da aber meisst was zu finden sein ;)

Die Zeit, die ein Spiel braucht, um in einen Release-State zu kommen, haengt primaer von dessen Groesse ab. Die Sprache ist dabei fast nebensaechlich (unter der Bedingung, dass man die verwendete Sprache auch beherrscht ;) )

greetz
Mike

Thorben77 28. Jun 2006 20:07

Re: Sprache für Spiele?
 
C# und Managed DirectX find ich auch ganz nett.

JasonDX 28. Jun 2006 20:13

Re: Sprache für Spiele?
 
Zitat:

Zitat von Thorben77
C# und Managed DirectX find ich auch ganz nett.

Dito, sehr einfach zu verwenden, und definitiv uebersichtlicher als die nativen Kollegen *g*
Mal gucken, ob ich irgendwann die Zeit finde, mein Tutorial dafuer fertigzustellen :roll:

greetz
Mike

CodenameCookie 28. Jun 2006 20:30

Re: Sprache für Spiele?
 
Danke für die Antworten *g , allerdings weiss ich immer noch ned wirklich weiter.

Also schonmal klar ist , dass es kein 3D Spiel werden soll .. sondern eher ein Kartenspiel. Da ist es so eigentlich sinnvoller das Delphi wissen noch zu erweiteren um dann darauf aufzubauen , oder?

Grüsse

DGL-luke 28. Jun 2006 20:47

Re: Sprache für Spiele?
 
Zitat:

Zitat von Balu der Bär
Delphi ist für größere Spiele wie 3D-Geschichten eher ungeeignet, da man in C zum Beispiel viel betriebssystemnäher programmiert.

Wehalb sich ja auch alles in Richtung native programmmierung entwickelt. (Was, C# ist kein Assemblerdialekt?)
So eine pauschale Aussage ist Schwachinn.
Delphi eignet sich genauso gut für Spiele wie jede andere vernünftige Programmiersprache. Mit einem OpenGL-NonVCL-Template kriegst du alles hin ( www.delphigl.com ).

So, BTT:

Kartenspiel? Kein Problem. Obwohl dir hier eine 3d-engine bereits helfen könnte, insbesondere im 2d-Modus^^ allerdings reicht dir für bereits eine gescheite 2d-grafik-lib, zum beispiel Graphics32 ( www.graphics32.org )

Ein Kartenspiel ist auch ideal, um etwas richtig objektorientiert aufzuziehen.

Das mit Delphi zu machen ist überhaupt kein Problem.

CodenameCookie 28. Jun 2006 21:06

Re: Sprache für Spiele?
 
@DGL-luke , DANKE!

Dass ist wirklich mal ein guter Thread :) . Also ist es schon realisierbar ! An dieser stelle möchte ich kurze Zeit away from topic sein und euch fragen ob ihr mir speziell für Spiele ( Delphi ) irgendwelche Bücher empfehlen könnt?

Grüsse

DGL-luke 28. Jun 2006 21:17

Re: Sprache für Spiele?
 
Es gibt natürlcih das alt bekannte "Game Programming für Kids", das sich aber mit 3d beschäftigt (!)

Dir reichen wohl auch ein paar gute Grundlagentutorials - www.dsdt.info/tutorials (gibts auch welche über grafik nehm ich mal an, das was die mit canvas machen kannst du mit GR32 auf jeden fall nachvollziehen), oder wenns n buch sein soll, http://de.wikibooks.org/wiki/Delphi

CodenameCookie 28. Jun 2006 21:34

Re: Sprache für Spiele?
 
Danke schonmal ,

also Delphi an sich lerne ich gerade noch ,habe bisher die Bücher "Delphi für Kids" und "Delphi 6 In Team" . Also hoffe ich dass ich die Kenntnisse soweit besitze , um die tutorials zu verstehen ;).

Grüsse

EDIT: Die Ausgabe von Delphi aus der wikibook datenbank sollte auf jeden fall einen preis bekommen , ist einfach top !!

Luckie 28. Jun 2006 22:07

Re: Sprache für Spiele?
 
Zitat:

Zitat von droppi
Delphi ist gut für Minispiele. Für größere Projekte kann amn natülich auch Delphi nehemen oder halt auch C++

Ja was denn nun? Ist Delphi nun nur geeignet für "Minispiele", was auch immer das sein mag, oder auch für größere Projekte? Und wenn es nicht für größere Projekte geeignet ist, warum ist es das nicht?

droppi 29. Jun 2006 14:32

Re: Sprache für Spiele?
 
Naja ich hab mich vielleicht ein wenig unglücklich ausgedrückt. Minispiele sind für mich sowas wie Snake oder Minesweeper. Für größere Spiele wie z.B. Egoshooter oder Rollenspiele (mit 3D) finde ich persönlich das es dafür nicht geeignet ist. Für größere Progs im Sinne von Nutzprogrammen (Dtenbänke etc.) ist Delphi natülich geeignet.

sakura 29. Jun 2006 14:36

Re: Sprache für Spiele?
 
Zitat:

Zitat von CodenameCookie
Naja das Spiel sollte ein Game für eine Online Community werden , dass heisst eine art Casino Spiel.

Soll das Spiel online gehostet sein? Also als HTML, dann PHP, Perl, ASP, ASP.NET, ...

Soll es Flash sein, dann musst Du halt ein Flash-Entwicklungstool nehmen.

Soll es eine "EXE" sein mit Onlineverbindung, dann kannst Du eigentlich jede akutelle Entwicklungsumgebung nehmen, ob Delphi, C++Builder, Visual Studio oder anderes ist dann nur von Deinem Geschmack abhängig.

...:cat:...

Luckie 29. Jun 2006 14:54

Re: Sprache für Spiele?
 
Zitat:

Zitat von droppi
Für größere Spiele wie z.B. Egoshooter oder Rollenspiele (mit 3D) finde ich persönlich das es dafür nicht geeignet ist.

Und warum nicht?

droppi 29. Jun 2006 15:35

Re: Sprache für Spiele?
 
Na weil Delphi eher was für Objektorientierte Progrmmierung ist. Natülich gibs da auch NonVCL aber das ist meiner Meinung nach etwas komplizierter. Außerdem gibt es viel einfachere Möglichkeinten für den Ottonormalprogrammierer 3D Spiele zu programmieren. Oder kannst du mir einen bekannten Egoshooter nennen der mit Delphi programmiert wurde? Ich weiß nicht obs da einen gibt. Wenn du mir einen zeigen kannst dann halt ich sofort die Klappe.

JasonDX 29. Jun 2006 15:43

Re: Sprache für Spiele?
 
Zitat:

Zitat von droppi
Na weil Delphi eher was für Objektorientierte Progrmmierung ist. Natülich gibs da auch NonVCL aber das ist meiner Meinung nach etwas komplizierter. Außerdem gibt es viel einfachere Möglichkeinten für den Ottonormalprogrammierer 3D Spiele zu programmieren. Oder kannst du mir einen bekannten Egoshooter nennen der mit Delphi programmiert wurde? Ich weiß nicht obs da einen gibt. Wenn du mir einen zeigen kannst dann halt ich sofort die Klappe.

Einen Egoshooter mit VCL zu programmieren is auch nicht gerade intelligent. Genausowenig werden sie in C++ mit der MFC oder sonstigen Libraries programmiert. Das ist ein Overhead, der abolut unnoetig und deshalb sinnlos ist. Von einem Egoshooter sind eh vielleicht 1% WinAPI-Aufrufe. Und komplizierter als der Rest ist NonVCL sicher nicht ;)
Der Grund, warum C++ beliebter ist, ist weil die APIs bereits die benoetigten Header fuer diese Sprache zur Verfuegung stellen. Bei DirectX bspw. hab ich, wenn ich das SDK runterlade, alles, was ich in C++ brauche, inklusive Support des Herstellers. Wenn ich hingegen DirectX in Delphi verwenden will, so muss ich die Header einer dritten Partei verwenden, was im worst-Case zu Schwierigkeiten fueren kann.

greetz
Mike

arbu man 29. Jun 2006 15:49

Re: Sprache für Spiele?
 
Also wenn du GLScene benutzt kanst du Problemlos mit Delphi ein komplexes 3D Spiel programmieren.
Jedoch ist 3D Spiele entwicklung langwirig...

Brainstalker 29. Jun 2006 18:01

Re: Sprache für Spiele?
 
Ich kenn zwar jetzt kein Egoshooter aber zb. Siedler wurde mit Delphi programmiert. Weiß jetzt nur nicht wie das bei Teil 5 aussieht. Delphi ist also durchaus dazu geeignet 3D Spiele zu erstellen.

Luckie 29. Jun 2006 18:07

Re: Sprache für Spiele?
 
Zitat:

Zitat von droppi
Na weil Delphi eher was für Objektorientierte Progrmmierung ist.

Und das hat in der Spiele Programmierung nichts verloren?


Zitat:

Natülich gibs da auch NonVCL aber das ist meiner Meinung nach etwas komplizierter.
Das unterscheidet sich so gut wie gar nicht von der Programmierung von C für WinAPI Anwnedungen.

CodenameCookie 29. Jun 2006 19:08

Re: Sprache für Spiele?
 
Nene , spiel wird executable mit anbindung ans netz und vor allem das game kommuniziert anschliessend mit einer datenbank für die userstats und halt alle anderen daten die vor , während und nach dem spielen anfallen ;).

Phoenix 29. Jun 2006 19:21

Re: Sprache für Spiele?
 
Ohne jetzt den Rest des Threads verfolgt zu haben...

Ich habe mal relativ kurz in einer Spieleschmiede gearbeitet (in den Credits von Airline Tycoon bin ich auch zu finden): Erfahrungsgemäß werden nahezu alle größeren kommerziellen Spiele in C++ auf DirectX basis realisiert.

Ein Team an der FH bei mir hat ein Kartenspiel (sowas ähnliches wie MS Hearts) in Java gemacht und geflucht (ging aber). Ein anderes Team hat ein Bomberman-ähnliches Spiel in C++ auf Basis von Qt gemacht (läuft einwandfrei unter Linux) und das lief super.

Es kommt also drauf an: Performancemässig würde ich tatsächlich zu C++ greifen, weil Du in der Regel (zumindest wenn es in den 3D-Bereich geht) relativ Hardwarenah auf die Grafikkarte zugreifen musst bzw. die GPU direkt programmierst.

Klar geht auch sowas wie z.B. die UFO-Spiele auch in Delphi (da gibts ein OpenSource Projekt von einem unserer Member), aber wenns was professionelles werden sollte würde ich echt zu C++ greifen.

Alternativ C# und Managed Direct X, aber das habe ich noch nicht ausprobiert.

CodenameCookie 29. Jun 2006 19:26

Re: Sprache für Spiele?
 
@Phoenix , danke für deinen Beitrag.

Also wie gesagt 3D mässig "soll es eigentlich" nicht sein .. ob es nun in C++ stabiler läuft und auch einfacher zu programmieren ist , weiss ich nicht da ich ausser "Hallo Welt" in C++ noch nichts gemacht habe.

Falls du die obrigen Beiträge nicht überflogen hast , es soll eine Casino Kartenspiel werden (Poker,Skat o.ä. da habe ich mich noch nicht festgelegt).

Der_Unwissende 29. Jun 2006 19:27

Re: Sprache für Spiele?
 
Hi,
ich möchte hier nur mal anmerken, dass mich diese Diskussion ein wenig an den Eisengehalt von Spinat erinnert. Es gibt einfach Gerüchte, die sich super halten, die interessante Frage ist eigentlich wo sie herkommen.
Fakt ist, Spinat enthält unheimlich wenig Eisen und Delphi ist nicht weniger geeignet ein Spiel zu programmieren als irgendeine andere Sprache.
Ich persönlich zähle fast noch dazu, das Delphi eher Objekt Orientiert ist, aber egal. Was ist C++ gleich? Da gab es doch einen Unterschied zu C...

Natürlich kann man weiterhin denken, dass alle 3D Spiele aus reinem Handoptimierten Assembler bestehen, aber (sehen wir von der Playstation ab), dass ist doch ein wenig weit hergeholt.
Trotzdem denke ich wird sich dieses Gerücht (C++ ist die Sprache für Spiele) noch weiterhin ein weilchen halten.

Zitat:

Zitat von Phoenix
Alternativ C# und Managed Direct X, aber das habe ich noch nicht ausprobiert.

Sorry, aber Hardwarenah und Perfomant <> C#. Nichts gegen C#, aber das ist doch nichts anderes als Java (ohne näher drauf einzugehen). Es programmiert vielleicht noch jmd. die GPU per Hand, dummerweise gibt es aber ziemlich viele GPUs und die entwickeln sich auch noch rasant weiter. Da wäre es doch schön, wenn ich ganz Objekt Orientiert eine Schnittstelle hätte, die mich von der direkten Hardwarebindung löst. Ich meine rein fiktiv, nennen wir die doch mal DirectX, dann könnte man die ja mit jeder Sprache ansprechen und auch auf jeder Grafikkarte (mit beliebiger GPU), die das unterstützt.
Aber da ja alle professionellen Spiele auf DirectX basieren, vielleicht sollte man doch eine andere Sammlung nehmen und die, hm, OpenGL nennen. Wäre doch irgendwie toll wenn jmd. sowas machen würde...

Gruß Der Unwissende

bigg 29. Jun 2006 19:50

Re: Sprache für Spiele?
 
moin,

es ist aus meiner Sicht völlig Bananne, ob du deinen Ego-Shooter in C++ oder Object Pascal schreibst. Beide Sprachen eignen sich dafür recht gut. Im Endeffekt greift man eh über Schnittstellen auf die Hardware zu. OpenGlide und DirectX sind solche Schnittstellen, die optimierte Grafikroutinen bereitstellen. (wobei das nicht die Regel ist, das man auf Schnittstellen zurückgreifen muss)

Die Hochsprache C++ hat eventuell den Vorteil, das man die Quellen auf andere Plattformen portieren kann. Mit Pascal hätte man da sicherlich seine Schwierigkeiten, grade weil es nur wenige Pascal-Compiler für diverse Plattformen gibt.

Aber selbst das ist nicht das wichtigste, bevor du mit solchen Sachen anfängst, solltest du vielleicht wissen, wie das jeweilige Betriebssystem tickt und wie man auf die Schnittstellen zugreift. Bis dahin werden aber noch etliche Jahren vergehen, und ein wenig Mathematik und Physikkenntnisse wären sicherlich auch von Vorteil.

Phoenix 29. Jun 2006 20:08

Re: Sprache für Spiele?
 
Ach.. Kartenspiel.. tja, da isses im Prinzip egal was Du nimmst.

@Der Unwissende: Ich komme wie gesagt aus der Ecke der Spieleschmieden und bin dort ans Programmieren gekommen. Dass die meisten Spiele in C++ geschrieben sind ist kein Gerücht sondern nunmal Fakt. Hier mal ein kleiner Auszug: Counterstrike (auch CS:S), Quake (alle Teile), X (alle Teile), Airline Tycoon, Desperados 1+2, World of Warcraft, Guildwars, MS Flight Simulator, GTA.... und ich könnte hier noch viele auflisten.

Wenn C++ hier keine Vorteile hätte (hochoptimierende Compiler für extrem viele Plattformen inkl. Spielekonsolen) würden sich die Unternehmen denke ich auch nach Alternativen umsehen.

Und viele Spiele unterstützen dabei im übrigen sowohl DirectX als auch OpenGL parallel, die direkt für die GPU erstellten Vertexshader sind ja zum Glück unabhängig von der Treiberkapselung.

TheAn00bis 29. Jun 2006 20:10

Re: Sprache für Spiele?
 
Ich wundere mich, dass Java so wenig genannt wird. Spricht irgendetwas gegen Java? Die Plattformunabhängigkeit, welche Java bietet wäre doch eine schöne Entwicklung für eine Zukunft in der alles auch auf Linux läuft?

Ich weiß jetzt ehrlich gesagt nicht, wie es mit .net unter Linux aussieht... aber beispielsweise C++ ist doch völlig an Windows gebunden, oder irre ich?

Phoenix 29. Jun 2006 20:20

Re: Sprache für Spiele?
 
OMG...

Also Java kannst Du aus performancegründen in die Tonne kicken. Ich meine, das ganze Zeug von muss von einer Virtual Mashine interpretiert werden jedesmal. Das ist nix für Spiele.

Und C++ ist hochportabel, deswegen laufen die meisten aktuellen Spiele ja auch z.B. einwandfrei auf MacOS-X, was ja ein Unix-System ist.

Flare 29. Jun 2006 20:24

Re: Sprache für Spiele?
 
[ot]
Zitat:

Zitat von Phoenix
Hier mal ein kleiner Auszug: Counterstrike (auch CS:S), Quake (alle Teile), X (alle Teile), Airline Tycoon, Desperados 1+2, World of Warcraft, Guildwars, MS Flight Simulator, GTA.... und ich könnte hier noch viele auflisten.

Und meinen Favoriten lässt du weg! Alle Teile von Unreal Tournament sind zu großen Teil OpenSource. (Also alles außer die Exe und die DLLs) Ich finde das sehr gut.
[/ot]
Zitat:

Zitat von Der_Unwissende
das Delphi eher Objekt Orientiert ist, aber egal. Was ist C++ gleich?

Und am Beispiel von UT kann man auch sehen, dass C++ genau so objektorientiert ist.


Flare

TheAn00bis 29. Jun 2006 20:25

Re: Sprache für Spiele?
 
Zitat:

Zitat von Phoenix
OMG...

Also Java kannst Du aus performancegründen in die Tonne kicken. Ich meine, das ganze Zeug von muss von einer Virtual Mashine interpretiert werden jedesmal. Das ist nix für Spiele.

Das ist falsch, uns wurde hier gelehrt über HotSpot sei die Ausführung genauso schnell wie kompilierte ASM Programme.
Außerdem solltest du Ausrufe wie "OMG" in Zukunft unterlassen, es sei denn du möchtest überheblich wirken. :)

Edit: "geleert" :o

Der_Unwissende 29. Jun 2006 20:48

Re: Sprache für Spiele?
 
Es ist einfach völlig egal, welche Sprache man nimmt. Performance Unterschiede die Sprachbedingt sind, die möchte ich gerne sehen.
Sagen wir mal du nimmst C++, gut, was genau sagt das über die Perfomance aus? Also mir wäre es neu, wenn der Code aus C++ direkt lauffähig wäre. Ich muss da immer einen Compiler und Linker bemühen und da habe ich bei C++ eine ganze Menge zur Auswahl (auch bei anderen Sprachen). Hinzu kommt, dass die auch noch ein paar Schalter haben, die gewisse Optimierungen an- bzw. abschalten. Wenn hier also über die Perfomance einer Sprache gesprochen wird, nun ja, es hat einfach mal keine Aussage.

Natürlich haftet Java immer der Ruf an, nicht so richtig perfomant zu sein. Lustigerweise denkt das keiner von C# oder Delphi.Net, warum eigentlich? Die ganze .net Dinger laufen genau wie Java auf einer VM ab. Genau darin liegt die Idee dieser plattformunabhängigen Sprachen. Man übersetzt sie nur in einen Zwischencode, der auf einer VM läuft. Dank einer Menge Entwicklung, sowohl bei den heutigen Rechnern, aber vorallem auch bei den JITs ist auch hier der Perfomanceunterschied zu vernachlässigen.
Die komplette 2D/3D arbeit übernehmen in modernen Spielen die darauf hochspezialisierten Grafikkarten (warum liest man wohl immer häufiger dass man mind. eine DirectX ... Karte mit xxx MByte Ram braucht?). Diese werden zudem über Schnittstellen angesprochen, einfach um von der konkreten HW so gut wie möglich abstrahieren zu können. Die HW kümmert sich schon um die ihr best mögliche Umsetzung von Aufrufen dieser Schnittstellen. Hier geht also auch keine Perfomance durch die Sprache die verwendet wird verloren.
Was bleibt sind zwei Sachen, der ganze Rest des Spiels (es muss ja auch eine Logik geben, nicht nur Grafik) und natürlich der Teil, was man an Grafiken darstellen möchte. Für beide Fälle gilt, dass der Einfluss der Sprache auf die Perfomance irgendwo ganz weit unten liegt. Viel wichtiger (und hier sind dann wirklich die Unterschiede) ist das, was der Programmierer schreibt. Ist der Code einfach mal schlecht, wird keine Sprache die Perfomance retten können. Man sollte schon etwas verständnis für ein paar Routinen und Datenstrukturen haben, sonst klappt dass mit dem schnellen und flüssigem Spiel nicht. Hier kommt es dann auf Verständnis des Rechners und natürlich auch der Grafikkarte (im allgemeinen) an. Wer mit Vektorrechnung oder noch allgemeiner Mathematik nichts anfangen kann, der wird kaum ein großer Spieleprogrammierer (ohne geht hier einfach nichts).

mkinzler 29. Jun 2006 20:52

Re: Sprache für Spiele?
 
Zitat:

aber vorallem auch bei den JITs ist auch hier der Perfomanceunterschied zu vernachlässigen.
Interessanterweise laüfen manche Demoanwendungen auf Axiom (c#-Konversion von OGRE) schneller als auf OGRE.

negaH 29. Jun 2006 20:59

Re: Sprache für Spiele?
 
Ganz egal ist die Wahl der Sparche nicht.

Zb. könntest du dir vorstellen das dein Online Kartenspiel später mal auf Handys laufen sollte ? Dann wäre JAVA mein Favorit und Delphi die schlechtste Wahl und C ginge eventuell auch noch.

Oder die Frage welche Sprache kannst du ? und wie gut kanst du sie ? mit welcher hast du die letzten 10 deiner Spiele programmiert ?

Auf normalen Windows Rechnern ist delphi genauso performant wie C oder jede andere Sprache, denn egal was du benutzt du wirst immer auf fertige Blibliotheken zurückgreifen, einfach um Streß mit der unterschiedlichen Hardware zu sparen. Du wirst dich also eher fragen müssen welche Grafik Bibliothek benutzte ich, DirectX oder OpenGL. Wie mache ich den Sound ? DirectX oder native API oder was anderes ?
All diese Schnittstellen kannst du in Delphi oder C benutzen und deren Performance wird sich nicht unterscheiden.
Ergo: in diesem Szenario wäre es wichtiger mit der Sprache zu arbeiten die man am besten beherrscht.

Gruß Hagen

Nils_13 29. Jun 2006 21:03

Re: Sprache für Spiele?
 
Es ist wirklich vollkommen egal, es ist im Notfall auch möglich sich einen Wrapper von einer Engine zu schreiben und mit dem Wrapper ein Spiel zu programmieren.

Phoenix 29. Jun 2006 21:05

Re: Sprache für Spiele?
 
Das liegt daran dass .NET Code nicht in einer virtuellen Maschine läuft.

Bei Java läuft das ganze tatsächlich Just in Time - wenn eine Funktion aufgerufen wird wird erstmal geguckt ob sie schon übersetzt wurde und wenn nein -> Ab durch den Compiler und ausführen. Und das interessanterweise bei jeder neuen Ausführung des Programmes erneut. Deswegen ist Java auch so langsam.

Bei .NET wird der IL-Code vor der ersten Ausführung vom 'JIT' direkt in für die jeweilige Plattform optimierten, nativen ASM-Code übersetzt und direkt gegen das .NET Framework (inkl. Garbagecollection etc.) gelinkt und dann ausgeführt. Das bedeutet hier läuft keine VM drumherum die auch noch bei jedem Call erst irgendwo nachgucken muss ob was übersetzt werden muss, sondern das ganze Management ist direkt in der nativen Anwendung integriert. Die Java-Nachteile fallen hier weg, deswegen ist .NET auch entsprechend performant.

TheAn00bis 29. Jun 2006 21:07

Re: Sprache für Spiele?
 
Zitat:

Zitat von Phoenix
Deswegen ist Java auch so langsam.

Hier wurde bereits mehrfach geschrieben, dass dem nicht so ist. Kannst du deine Aussage denn belegen? Zahlen würden mich interessieren.

backdraft 29. Jun 2006 21:12

Re: Sprache für Spiele?
 
Ich hab mal eine 1:1 umsetzung vom C64 Spiel Frantic Freddie geschrieben.
Dabei hatte ich eine Soundausgabe, eigene 2D Engine und auf meinem Rechner (Laptop Centrino 1800) ca. 400 FPS.
Das ganze klappte ganz gut quasi über Canvas und BitBlt

Oliver

Phoenix 29. Jun 2006 21:33

Re: Sprache für Spiele?
 
Zitat:

Zitat von TheAn00bis
Hier wurde bereits mehrfach geschrieben, dass dem nicht so ist. Kannst du deine Aussage denn belegen? Zahlen würden mich interessieren.

Ich habe es nachgemessen - und das musst Du wohl leider auch selber tun wenn es Dich interessiert:

Zitat:

Zitat von Lizenz zum .NET-Framework SDK
"4.8 Vergleichstests. Sie sind nicht berechtigt, ohne vorherige schriftliche Zustimmung von Microsoft die Ergebnisse von Vergleichstests mit der Server- oder Clientsoftware gegenüber Dritten offenzulegen."

Edit Nachtrag:
Ich hab grad nochmal nachgeschaut, von 'the middleware company' gab es mal einen unabhängigen Performancevergleich von J2EE gegen .NET - und da hat - obwohl die J2EE - Anwendnung extra für diesen Test noch optimiert wurde - .NET haushoch gewonnen. Such mal nach Bei Google suchenJ2EEdotnetbench.


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:25 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz