AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Multimedia Delphi Spieleprogrammierung
Thema durchsuchen
Ansicht
Themen-Optionen

Spieleprogrammierung

Ein Thema von Gamer · begonnen am 11. Apr 2005 · letzter Beitrag vom 21. Aug 2005
Antwort Antwort
Seite 3 von 4     123 4      
Neotracer64

Registriert seit: 27. Okt 2004
292 Beiträge
 
Delphi 7 Professional
 
#21

Re: Spieleprogrammierung

  Alt 17. Aug 2005, 16:27
Zitat:
Allerdings ist eines in den meisten PC-Magazinen deutlich zu sehen:
Wenn man OpenGL verwendet, hat man mit weniger Frames eine passable Spielbarkeit, bei DirectX ist das nicht so!
Also bei mir funktioniert CS viel besser mit OpenGL als mit DirectX. Auf einem älteren PC hab ich es fast aufgegeben CS zum laufen zubringen. Aber OpenGL schafft da dann 30 Frames während DirectX mir eine DiaShow bietet.

Naja vlt. kommt es auch drauf an wie die Spieleprogrammierer OpenGL und DirectX implentiert haben.
  Mit Zitat antworten Zitat
Benutzerbild von JasonDX
JasonDX
(CodeLib-Manager)

Registriert seit: 5. Aug 2004
Ort: München
1.062 Beiträge
 
#22

Re: Spieleprogrammierung

  Alt 17. Aug 2005, 17:00
ich will hier auch mal was loswerden: Es gibt kein besser oder schlechter, schneller oder langsamer, einfacher oder komplizierter bei OpenGL vs. DirectX. Alles ist Meinungssache bzw. Abhängig von der Programmierung.
Ein Spiel läuft mit OpenGL schneller als mit DX, ein anderes umgekehrt. Und nochmal das ganze umgedreht auf einer anderen Grafikkarte.
Es gibt zu viele variable Faktoren um sagen zu können, das eine wäre besser, schneller oder sonstwas. Am Ende sieht so aus: Eine 3D-API ist immer so schnell, wie man sie auslastet. D.h. die Geschwindigkeit ist eher unabhängig von der API, sondern eher von der Programmierung, wie das ganze eingebunden wurde ect. Zudem spielt logisch die Hardware eine wichtige Rolle.

Lange rede, kurzer Sinn: Es hat keinen Sinn darüber zu streiten, was man nehmen soll. Mein Tip: Probier beides aus. Les dich in beides ein bisschen ein, und schau was dir besser gefällt.

Und noch ein Wort zu Dingen wie DelphiX oder GLScene: lass die Finger davon. Es ist so, alsob du lernen möchtest, ein Flugzeug fliegen und dabei den Autopiloten einschaltest...


PS: Bezüglich OpenGL kann man mit weniger Frames spielen: Hä? Ein Frame ist ein Frame. Bei einer FpS-Rate fängts irgendwann an zu stocken und wird unspielbar. die FpS-Rate ist aber nicht API-Abhängig, sondern Abhängig von der Abtastungsrate unserer Augen. Ich versteh das Argument irgendwie nich
Mike
Passion is no replacement for reason
  Mit Zitat antworten Zitat
Joachim Rohde

Registriert seit: 20. Jun 2004
24 Beiträge
 
#23

Re: Spieleprogrammierung

  Alt 17. Aug 2005, 17:34
An diejeniegen, die bei OpenGL als Vorteil die Plattformunabhängigkeit ins Feld geführt haben: habt ihr schonmal eine Anwendung geschrieben, die auf mehreren Plattformen läuft? Für einen Anfänger halte ich dieses Argument für völlig überflüssig.
Dann zur Aussage, dass OpenGL ja nur für Grafik sei: ja und? Wozu gibt es denn Libraries wie FMOD, Bass, HawkNL oder ähnliche?

Ansonsten werf ich nochmal in den Raum, dass es auf meiner Webseite (www.joachimrohde.com) eine Übersetzung der NeHe-OpenGL-Tutorials gibt und enthalte mich jeder weiteren Meinung ;-)
  Mit Zitat antworten Zitat
Benutzerbild von Mr_T
Mr_T

Registriert seit: 7. Jun 2002
Ort: Eilsum
136 Beiträge
 
Delphi 2005 Personal
 
#24

Re: Spieleprogrammierung

  Alt 17. Aug 2005, 20:22
Ja, habe ich
Und ich denke auch, das geradebei kleinen Projekten es durchaus sinn macht die nach Linux zu portieren! Warum? Naja, recht einfach: es gibt sehr wenige Native Linux Spiele, die mit einer zeitgemäßen Grafik daherkommen. Die, welche es tun (komerzielle Projekte wie Quake, Doom oder Unreal Tournament) feiern unter Linux einen ziemlich guten Marktanteil am Game-Markt, halt einfach, weil es wenig Konkurenz in dem Segment gibt.
Auch wenn man sich kleinere Games ansieht wie z.b. Tux-Racer: unter Linux kennt es fast jeder und viele haben es auf ihrer Festplatte ... aber ich wage es zu bezweifeln, dass das Spiel, wenn es für Windows only wäre so viele Leute begeistern würde. Selbst wenn es Freeware wäre nicht, weil der Markt überlaufen ist. Deshalb halte ich sehr viel von portierbarkeit, welche man teilweise ja sogar umsonstr bekommt ... man nehme nur mal Freepascal / Lazarus, SDL als Initialisierungsschnittstelle, OpenGl für die Grafik und von mir aus OpenAi für 3D-Sound und Newton für die Physik. Alle diese Packete sind genauso unter Linux vorhanden... man muss nur wenige Zeilen in den Headern des Quellcodes ändern um ein solches Projekt auch unter Linux-Systemen zu kompilieren. Ich finde der sehr geringe Aufwand ist für das was man bekommt (nämlich mitunser eine doch größere Zeilgruppe für sein Projekt) sicherlich angebracht in meinen Augen.
Naja ... aber darum geht es an sich ja eigentlich nicht in diesem Thread ... es geht um OpenGl oder Direct 3d (DX wäre unfäir ... primär gehts ja um die Grafik-API) und da muss ich sagen haben wir ein nahezu Patt ....
Mein neuer, 13 Teiliger Open GL - Kurs (Samples in Delphi):
www.dcw-group.net
Neu! Ein großer Teil der Demos nach Kylix übersetzt!
Neu! Teil 2b: Initialisierung von OpenGL unter Kylix ist fertig!
  Mit Zitat antworten Zitat
Joachim Rohde

Registriert seit: 20. Jun 2004
24 Beiträge
 
#25

Re: Spieleprogrammierung

  Alt 17. Aug 2005, 22:14
Prinzipiell hast du ja recht. Wenn man ein kleines (vorzeigbares) Spiel hat, erreicht man natürliche ein größeres Publikum, wenn man dieses sowohl für Windows als auch Linux (oder andere Plattformen) anbieten kann.
Wenn aber jemand fragt, ob er DirectX oder OpenGL lernen soll, ist ja davon auszugehen, dass derjenige Windows benutzt (sonst würde er erst gar nicht nach DirectX fragen).
Häufig fehlt am Anfang auch noch das mathematische Verständnis, so dass einiges an Zeit vergeht, bis man etwas vorzeigbares hat. In der Regel fängt man ja mit rotierenden Würfel, o.ä. an, bevor man sich an 'größere' Projekte wagt. Und deshalb finde ich es anfangs völlig unerheblich, ob man plattformunabhängig programmiert oder nicht. Zumal es auch bei der Portierung erhebliche Schwierigkeiten geben kann.

Nachdem ich aber noch mal den Anfangs-Post gelesen habe, in dem es heißt, dass der Threadersteller, schon mal ein Spiel programmiert hat, muss ich dir natürlich recht geben, dass es eine Rolle spielen könnte.
  Mit Zitat antworten Zitat
Gandalfus

Registriert seit: 19. Apr 2003
407 Beiträge
 
Delphi 2006 Professional
 
#26

Re: Spieleprogrammierung

  Alt 17. Aug 2005, 22:23
Für DirectX ist das Buch von Martin gut. http://www.martinpyka.de/?postid=329
Besucht doch mal meine Homepage
  Mit Zitat antworten Zitat
Phobeus

Registriert seit: 14. Sep 2003
Ort: Tespe
65 Beiträge
 
Delphi 7 Professional
 
#27

Re: Spieleprogrammierung

  Alt 18. Aug 2005, 00:08
@joachim: Aber halt! Sicherlich ist es für einen Einsteiger sekundär uninteressant, ob es auch auf anderen Plattformen läuft. Aber z.B. SDL hat ja keine Nachteile als solche... die Unabhängigkeit gibt es quasi als Goodie dazu. Wenn also jemand auch nur im entferntesten daran denkt seine Anwendung irgendwann einmal unter Linux laufen zu lassen (aus den von MrT) genannten gründen, würde ich stets SDL (als Ergänzung OpenGL) empfehlen und zwar nur aus einem Grund: Gleich ein Gefühl dafür zu entwickeln, wo Grenzen der Lib und des darunter liegenden Systemes ist. Dies gleich zu beginn zu lernen ist für jemanden, der in dem Bereich sich fortbilden will, enorm wichtig. Das bei der darauf folgenden erfolgreichen Karriere man vermutlich nicht darum herum kommt auch die "Konkurrenz" zu erlernen und keine API einem die Optimierung von Algorithmen abnimmt, ist hoffentlich jedem Einsteiger klar. Letztendlich sollte die Frage nach der API von zwei Dingen abhängig gemacht werden a) Ideologie (Der OSS-Flagge schwingende Linux-Nuter im Delphi-Forum ist mit DX sicher nicht gut bedient b) (vermutlich wichtiger) ... wie er mit der Dokumentation der jeweiligen API zurecht kommt.
Umso mehr Frage ich mich immer wieder, warum solche Fragen "Was ist besser" eigentlich aufkommt. Trifft man seine Entscheidung nicht immer nach der Verfügbarkeit von Informationen und nicht danach, was andere Leute sagen? ... Utopie, hm? Schon gut, ich troll mich wieder
Florian Sievert
http://www.delphigl.com/
  Mit Zitat antworten Zitat
Sidorion

Registriert seit: 23. Jun 2005
403 Beiträge
 
#28

Re: Spieleprogrammierung

  Alt 18. Aug 2005, 10:28
Zum Thema DirectX steht auf der Spieleverpackung wollte ich nur noch sagen:
Das steht darum drauf, damit man weiss, welche Version man benötigt. (wenn z.B.: DirectX9 draufsteht und diene GraKa kanns nicht, dann brauchst Du das Spiel garnicht erst kaufen).
Bei OpenGL ist das anders. Da liefert spätestens der Treiber für die Graphikkarte die dll mit und wenn die da ist, ist eigentlich egal, welche Version sie ist.
Normalerweise prüft ein Programm mit einem Aufruf, ob eine best. extension/version vorhanden ist und wenn nicht, werden die Aufrufe weggelassen. Die Folge ist eigentlich nur eine schlechtere Graphik, aber spielen kann mans.
Manchmal sehen Dinge, die wie Dinge aussehen wollen mehr wie Dinge aus, als Dinge
<Esmerelda Wetterwachs>
  Mit Zitat antworten Zitat
Joachim Rohde

Registriert seit: 20. Jun 2004
24 Beiträge
 
#29

Re: Spieleprogrammierung

  Alt 18. Aug 2005, 13:19
Zitat von Phobeus:
Das bei der darauf folgenden erfolgreichen Karriere man vermutlich nicht darum herum kommt auch die "Konkurrenz" zu erlernen und keine API einem die Optimierung von Algorithmen abnimmt, ist hoffentlich jedem Einsteiger klar.
Genau das denke ich eben nicht. Warum sonst fragen viele Leute anfangs (wie auch hier), was denn von beidem nun 'schneller' sei.
Zitat:
Trifft man seine Entscheidung nicht immer nach der Verfügbarkeit von Informationen und nicht danach, was andere Leute sagen?
Ich glaube, dass hier das Problem darin besteht, dass man zu beiden APIs recht viele Informationen findet, welche meist auch noch suggerieren, dass die jeweilige API die bessere sei. Deswegen plädiere ich ja immer noch dafür, dass man beides einmal ausprobiert, wenn man sich nicht entscheiden kann.
  Mit Zitat antworten Zitat
mimi

Registriert seit: 1. Dez 2002
Ort: Oldenburg(Oldenburg)
2.008 Beiträge
 
FreePascal / Lazarus
 
#30

Re: Spieleprogrammierung

  Alt 20. Aug 2005, 20:23
Ich habe mich versucht in beiden Apis einzuarbeiten: erst mit OpenGl und dann mit DX.
Bei beiden APIS stoße ich an ein großes problem, ich verstehe den Mathe kram nicht, jetzt wird gesagt das kein mahte benötig wird das machen die APIS selbst(habe ich oft genug gelesen). Aber du brauchst mathe z.b. Zusammenstöße, Licht, Isomap,... berechnen.

Und wenn ich immer den aufwand sehe wie viel zeilen code ich schreiben muss damit ich ein einfachen kleinen 3D Raum sehen kann verschwindet irgenwie die lust weiter zumachen und dann noch die sachen mit Sin und Cos und den Bogenmaß....

Ich habe auch verscuht mich in SDL einzuarbeiten aber dafand ich keine Deutsche dokumenation und auch keine Tutors.

Also kreife ich jetzt eifnach auf PowerDraw zurück(eine Kapslung von DX) wird upgedatet ist schneller und besser als DelphiX(in machen fällen).

Und für kleine spiele wie z.b. Packman, Brakout, Sokubahn, Snak,... reichen solche kapslungen vollkommen aus. Du musst klein anfang erst lerhnen wie Spiele geschrieben werden(egal welche API) dann den mahte kram verstehen und auch anwenden. Zum schluss kannst du eine API Lerhnen das ist finde ich der beste weg.

nachtrag:
und wengen meiner grafikarte habe ich mit dem versuchen aufgehört
Michael Springwald
MFG
Michael Springwald,
Bitte nur Deutsche Links angeben Danke (benutzte überwiegend Lazarus)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:31 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz