Diect3D,OpenGL oder WinAPI lernen ??
-
habs gerade getestet man findet nichts dazu - aber: man fidet bestimmt ein Sample das zeigt wie DoubleBuffering mit GDI geht (ist auch eins unter der WinAPI Faq) und wie man Bilddateien lädt, auf den Bildschrim blittet usw...
-
Ich lese zZ Programming Game AI by Example | ISBN: 1556220782 und dort verwendet der Autor auch für alle Beispiele die GDI und auch etwas größere Programme, wie zB ein kleines 2D Fußballspiel und ein 2D Shooter kann man damit noch ganz anständig machen.
Der Autor hat sich nen paar kleine Wrapperklassen geschrieben, wenn du dir die Sourcecodes herunterladen kannst, dann haste es schonmal viel leichter, da das Zeichnen mit der GDI recht unhandlich ist ("Farbstifte" wechseln usw).
-
Ich würde ganz eindeutig eine engine vorschlagen. Sieh dir also lieber z.B. ogre an. Mittel ogreode hast du auch noch dynamik, sound und menüs lassen sich mit bibliotheken auch hinzufügen. Leider habe ich noch keine engine entdeckt, die alles vieres bietet bietet. Nun, um nicht vom thema abzukommen, hier die vorteile von (guten) engines:
- abstraktion vom renderer
soll heißen, mit nur einer Zeile code schaltest du um zwischen dx/ogl/software backend - abstraktion vom betriebssysthem
die engine kapselt osabh. kram - wenn dus schlau anstellst, kannst du auch das sound-, dynamik- und audiobackend abstrahieren
Mittels einer engine kannst du dich also aufs spieleproggen konzentrieren, ohne unter die haube schauen zu müssen.
/edit: yake ist wahrscheinlich einen blick wert
- abstraktion vom renderer
-
ness schrieb:
Ich würde ganz eindeutig eine engine vorschlagen. [...] Mittels einer engine kannst du dich also aufs spieleproggen konzentrieren, ohne unter die haube schauen zu müssen.
hängt davon ab, was man machen will.. ich finde eigentlich grade das "unter die haube schauen" interessant :>
-
Vergiss OpenGL, lern WinApi und DirectX.
-
BF_31 schrieb:
Vergiss OpenGL, lern WinApi und DirectX.
ein bisschen winapi is immer gut (unter w), wenn er "unter die haube schauen" möchte, is dx aus besagtem grund erste wahl, aber wenn er vernünftig ist und nicht gleich damit anfangen will, eine eigene engine zu proggen, sollte er mit engine anfangen und sich später sowohl dx als auch ogl anschauen um zu sehen, wie sich das ganze realisieren lässt.
-
BF_31 schrieb:
Vergiss OpenGL, lern WinApi und DirectX.
Jaja und alle hüpfen M$ hinterher und benutzen nur noch was die einem vorsetzen. Also ich persönlich finde den Umgang mit OpenGL tausendmal schöner und dass damit geile Spiele möglich sind beweist Riddick ja eindeutig.
Merkt Ihr gar nicht wie M$ versucht offene Technologien nun wirklich komplett auszurotten?? Machjt das niemanden hier was aus?? Ganz ehrlich: Ich verzichte eher auf die neuesten Games wie das ich DAS mitmache!!!!
rya.
Scorcher24EDIT:
Falls du dich für OpenGL begeistern kannst, schicke ich dir gerne mein OpenGL Framework. Das erstellt Dir ein komplettes OpenGL-fähiges Fenster incl. FSAA und/oder VSync. Sourcen kriegste bei....
-
Scorcher24 schrieb:
Jaja und alle hüpfen M$ hinterher und benutzen nur noch was die einem vorsetzen.
Ich nehme mal ganz stark an, dass du den Post nicht kapiert hast...egal, du brauchtest wahrscheinlich ein ventil um deine angestau(b)te Wut auf "M$"(wer auch immer das sein soll) loszuwerden, das ist ok...
Also ich persönlich finde den Umgang mit OpenGL tausendmal schöner und dass damit geile Spiele möglich sind beweist Riddick ja eindeutig.
Mit DirectX ist viel schöner zu arbeiten, da man nicht erst auf die verfügbarkeit von tausenden extensions prüfen muss.
Merkt Ihr gar nicht wie M$ versucht offene Technologien nun wirklich komplett auszurotten?? Machjt das niemanden hier was aus?? Ganz ehrlich: Ich verzichte eher auf die neuesten Games wie das ich DAS mitmache!!!!
rya.
Scorcher24Windows versucht DirectX in der Spieleindustrie zu pushen, das ist wahr. Damit unterstützt MS aber auch nur den trend der letzten Jahre: nur wenig Spiele werden mit OpenGl programmiert, dafür aber die meisten der professionellen anwendungen. Da wohl kein Professioneller Benutzer auf die neue klickibunti Oberfläche von Windows angewiesen ist, wird es für diese wohl keinen unterschied machen.
Im endeffekt ändert diese Einschränkung also garnichts.
-
Ich habe den Post kapiert und ja auch meine Meinung zum Thema und Hilfe angeboten. Nur fand ich diesen einen Satz den ich gequotet habe, total sinnlos und inkompetent. Und das testen auf Extensions ist mit Dingen wie der RadeonSDK auch kein Problem mehr, bzw nativ mit (w)(x)glgetProcAdress auch nicht aufwändiger als unter DX die verfügbarkeit von VSync abzufragen....
rya.
Scorcher24EDIT:
Und sehr wohl ändert dies was: OpenGL wird zu verdrängen versucht und M$ will die wenigen OpenGL Fans zu DirextX zwingen. Vor allem die Firmen. Und das ist doch schon ganz schön [].
-
Scorcher24 schrieb:
Und sehr wohl ändert dies was: OpenGL wird zu verdrängen versucht und M$ will die wenigen OpenGL Fans zu DirextX zwingen. Vor allem die Firmen. Und das ist doch schon ganz schön [].
für die professionellen machts überhaupt keinen unterschied! die installieren die richtigen ogl treiber und schalten die oberfläche ab. Mehr nicht!
-
otze schrieb:
für die professionellen machts überhaupt keinen unterschied! die installieren die richtigen ogl treiber und schalten die oberfläche ab. Mehr nicht!
Ja, erst mal schon. Aber ich schätze das das ganze dazu führen wird, dass die jetzt gute OpenGL - Treiberqualität sinken wird. Es werden Optimierungen für wichtige Programme eingebaut, aber die durchschnittliche kleinere Softwarefirma ist gezwungen DX zu benutzen. Und mit der Qualität der Windowstreiber geht auch die Qualität der Linuxtreiber den Bach runter.
Ich unterstelle MS gar nicht in böswilliger Absicht zu handeln (die allgemeinen Weltherrschaftspläne sind schon "böse" genug
). Aber es scheint doch an dem Bewusstsein um die Verantwortung gegenüber der "Computerwelt" zu mangeln, die man als Marktführer nun mal hat.
Aber die Tatsache das Sony auf OpenGL setzt, erhellt das allgemein düstere Bild doch erheblich.
-
Ja, erst mal schon. Aber ich schätze das das ganze dazu führen wird, dass die jetzt gute OpenGL - Treiberqualität sinken wird. Es werden Optimierungen für wichtige Programme eingebaut, aber die durchschnittliche kleinere Softwarefirma ist gezwungen DX zu benutzen. Und mit der Qualität der Windowstreiber geht auch die Qualität der Linuxtreiber den Bach runter.
wieso sollte sie? weil plötzlich die hand voll spiele die pro jahr mit OpenGl programmiert werden würden, nun mit DX laufen? Wenn OpenGl von den spielen abhängen würde, dann gäbe es schon seit jahren keine neue version mehr, geschweige denn Treibersupport. Rendering programme werfen halt ein vielfaches von den paar spielen hab. Und wenn jetzt zb Nvidia sagen würde: OpenGl ist mit uns nichts mehr, dann sagen die Firmen mit den vielen 100 pcs: es gibt ja noch ati, die wollen sicher gerne unser Geld
