Gutes C Buch für Spieleprogrammierung gescuht

Einstiegsfragen, Mathematik, Physik, künstliche Intelligenz, Engine Design
Antworten
Hallo123
Beiträge: 3
Registriert: 12.11.2010, 21:04

Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von Hallo123 »

Hallo ich bin der Hallo123 bin 14 Jahre alt und programmiere in C. Zum erlernen der Programmiersprache C verwende ich das Buch: C Programmieren von Anfang an von Helmut Erkloeter(oder wie der heißt). Nun wollte ich Fragen was ich alles für die Spiele Programmierung können muss. Ich kann programmiertechnisch:

-Zahlen arbeiten
-Ausdrücke
-Anweisungen
-Verknüpfungen
-Schleifen(for,while, do usw.)
-Funktionen schreiben
-Arrays(Felder)
-mit Zeichenketten arbeiten(chars strcmp usw. wobei ich das mit den Zeichen arbeiten am schwierigsten von allem finde)
-Variablen
-Konstanten
-Präprozessor
-Zeiger(Pointer)
-mit Dateien arbeiten(Datein löschen, neu anlegen, umbennen usw.)

Nun noch eine Frage und zwar suche ich ein gutes Buch zum Erlernen der Spiele Programmierung was rein auf C basieren soll. Es sollte Einsteiger freundlcih sein. Sehr Einsteigerfreundlich(am besten noch ma kurz nen bisschen was von dem erlenten Wiederholen(der Grund liegt darin das man dann weiß das sie wirklich noch mal alles einzeln erklären)), auf 2d Spieleprogrammierung bezogen sein(sowas in der Art wie Supermario).

Nun sagt ihr bestimmt: Google ist dein Freund :D Ich hab, aber wirklich alles nachgeguckt aber hab halt kein Buch für Spiele Programmierugn nur in C gefunden wenn dann C/C++.


Könnte mir jetzt jemand bitte ein Buch nennen wäre sehr dankbar udn noch meine Frage beantworten ob das reicht was ich kann.(schlechtes Deutsch ich weiß :D).
Benutzeravatar
Jonathan
Establishment
Beiträge: 2371
Registriert: 04.08.2004, 20:06
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von Jonathan »

Hm, wieso will man denn freiwillig mit C arbeiten?
Im Prinzip reicht es, wenn du dir irgendwas suchst, womit die Grafik ausgeben kannst und damit versuchst, ein Spiel zu machen. Vieles lernt man durch ausprobieren und beim nächsten mal besser machen.

Von einem Buch, dass nur C behandelt, hab ich noch nichts gehört. Man muss natürlich erstmal das Konzept hinter Objekt Orientierter Software verstanden haben, aber danach kann man damit eigentlich ziemlich gut arbeiten.

Achja: Für schlechtes Deutsch kann man nicht immer was, aber offensichtliche Rechtschreibfehler ("udn") kann wirklich jeder vermeiden, indem man einfach ein Wörterbuch installiert. Dafür gibt es keine Entschuldigung^^
Lieber dumm fragen, als dumm bleiben!
https://jonathank.de/games/
Jiba
Beiträge: 31
Registriert: 16.01.2010, 17:42

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von Jiba »

Hallo,

Meines wissens nach giebt es kein Buch in deutscher Sprache für Spieleprogrammierer, das nur C verwendet.
(Außer dieses alte Exemplar für GBC: http://www.amazon.de/Einf%C3%BChrung-di ... 334&sr=8-2)

Bücher die ich für Einsteiger empfehlen kann sind: Der C++ anteil in den Büchern ist sehr einfach gehalten. Deshalb ersetzen Sie auch kein gutes C++ Buch.
Hallo123
Beiträge: 3
Registriert: 12.11.2010, 21:04

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von Hallo123 »

Gut dann werde ich wohl das Buch für die Spieleprogrammierung am Gameboy Color nehmen. Eine Frage bleibt dann, aber noch offen und zwar wie leicht oder schwer ist es von der Gameboyprogrammierung auf die Spiele Programmierung für den PC umzusteigen?? Ist Gameboyprogrammierung leichter als auf dem PC oder ist es auf dem PC schwieriger?????


EDIT: Ich würde gerne bei C bleiben, weil ich schon sichma die Sprache gewechselt hab und ich mit C am weitesten gekommen bin. Ist halt für mich die beste Sprache(da hat halt jeder seien eigenen "Vorzüge"), weil ich konnte mich nie so ganz mit OOP anfreunden. Bitte sagt jetzt nicht dann kannste kein Spiel programmieren bla bla bla. Ich meine es wird mehr in C als in C++ programmiert laut einer Aktuellen Umfrage(ich glaube die war von PC Games). Also bitte kommt mir nicht damit.

Würde es mir bei der Spiele programmierugn helfen, wenn ich mir dieses Buch kaufen würde
http://www.amazon.de/Bibliotheksfunktio ... =8-1-spell
Damit ich halt mich besser in den Bibliotheken auskenne??? Ok ich meine der Gameboy Color hat ja nochmal seine eigene Bibliothek(bzw. Bibliotheken).
mfg Hallo123
Helmut
Establishment
Beiträge: 237
Registriert: 11.07.2002, 15:49
Wohnort: Bonn
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von Helmut »

Ähm, du kannst dir auch ein modernes Buch über Grafikprogrammierung kaufen und trotzdem in C programmieren. DirectX lässt sich auch mir C benutzen. Ich empfehle das Buch von David Scherfgen. Er benutzt in seinem Buch auch praktisch keine C++ Features (außer Methoden).

Aber selbst wenn mehr Leute C statt C++ verwenden (was ich bezweifle), so wird dennoch niemand um OOP herumkommen. Und mit C++ ist das einfacher.

Ciao
Helmut
klickverbot
Establishment
Beiträge: 191
Registriert: 01.03.2009, 19:22
Echter Name: David N.

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von klickverbot »

Hallo123 hat geschrieben:Ich meine es wird mehr in C als in C++ programmiert laut einer Aktuellen Umfrage(ich glaube die war von PC Games).
Hast du dazu irgendwelche Links, o.ä.? Rein von einem Blick auf AAA-Titel (OTOH: Source, CryEngine, Uncharted, Unreal, …) hätte ich nämlich genau das Gegenteil vermutet.

Abgesehen davon halte ich es immer noch für den besten Weg, sich zuerst mit einer Sprache anzufreunden und sich dann ganz generell mit Game-Engine-Design zu beschäftigen…
pUnkOuter
Establishment
Beiträge: 303
Registriert: 15.04.2002, 15:59

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von pUnkOuter »

Bist du sicher die Umfrage hat nicht C++ mit C# verglichen? Ohne Objektorientierung ein Spiel programmieren stelle ich mir doch ziemlich mühsam vor.

Ein Buch, das über die Entwicklung vom Gameboy Color spricht, benutzen, um PC-Spiele zu entwickeln, ist vermutlich viel der schwierigere Weg, als einfach C++ for Dummies zu kaufen, und dann eines der vielen Bücher über Spieleprogrammierung mit C++ zu verwenden. OOP ist wirklich nicht so schwierig, und wenn es mal Klick gemacht hat, willste gar nicht mehr ohne. Du scheinst ja in C schon ziemlich bewandert zu sein, dir sollte der "Aufstieg" zu C++ leicht fallen.
Ein Zeiger ins Blaue ist wie ein Wegweiser nach <SEGFAULT>. Wenn du denkst, mein Name hat was mit abgefuckter Kleidung und bunten Haaren zu tun, dann kehr besser um.
Benutzeravatar
Aramis
Moderator
Beiträge: 1458
Registriert: 25.02.2009, 19:50
Echter Name: Alexander Gessler
Wohnort: 2016
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von Aramis »

EDIT: Ich würde gerne bei C bleiben, weil ich schon sichma die Sprache gewechselt hab und ich mit C am weitesten gekommen bin. Ist halt für mich die beste Sprache(da hat halt jeder seien eigenen "Vorzüge"), weil ich konnte mich nie so ganz mit OOP anfreunden. Bitte sagt jetzt nicht dann kannste kein Spiel programmieren bla bla bla. Ich meine es wird mehr in C als in C++ programmiert laut einer Aktuellen Umfrage(ich glaube die war von PC Games). Also bitte kommt mir nicht damit.
Die Programmiersprache ist egal. Alle imperativen Programmiersprachen sind mehr oder weniger identisch und unterscheiden sich nur in ihren Standardbibliotheken und ein paar Idiomen, die man halt lernen muss. Es geht eher drum, dass du sauber programmieren kannst. Und da gehoert Kenntnis von OOP etc. einfach dazu. Zu sagen „Mit OOP kann ich mich nicht anfreunden” ist m.E. der falsche Ansatz. Wieso nicht einfach „Mit OOP konnte ich mich bislang noch nicht anfreunden, aber ich arbeite dran”? ;-)

Der Blick ueber den Tellerrand in eine zweite Sprache (und C++ ist ja de-fakto ein Superset von C, also wird der Einstieg nicht schwer) kann dir nur nuetzen.
Benutzeravatar
dowhilefor
Moderator
Beiträge: 173
Registriert: 27.02.2009, 15:44
Alter Benutzername: 6SidedDice
Echter Name: Nico Probst
Wohnort: Bochum
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von dowhilefor »

Mal ganz im Ernst, ist es nicht ziemlich egal ob er jetzt C oder C++ nimmt? Wenn er C kann, soll er es machen da spricht doch überhaupt nichts gegen.
Die Programmiersprache ist nur ein Werkzeug also lasst ihn doch C nehmen wenn er damit umgehen kann. Gibt auch genug leute die in Basic, Pascal, oder Assembler programmieren.
Das rumgehacke auf OOP bringt hier keinem was. Die Quake Engines sind doch ein gutes Beispiel das es auch ohne geht.

@Hallo123
Ich würde dir empfehlen deine ersten Schritt mit OpenGL zu machen, ist nicht sonderlich einfach, aber mit ein bischen Arbeit bekommt man sicher was hin.
Schau dir am besten mal das an und damit du dir nicht die Mühe machen musst selber die Fenstererstellung zu übernehmen könnte das noch helfen. Damit biste erstmal ein bischen beschäftigt, allerdings auch noch weit von Spieleentwicklung entfernt. Möchtest du lieber direkter ein Spiel programmieren könnte dir das hier eher zusagen. Alles lässt sich wunderbar mit C benutzen und ist afaik auch selber in reinem C gehalten.
Mein Gehirn besteht nur noch aus einem hash-index, ich weiss was ich kenn aber kenn nicht was ich weiss
Benutzeravatar
Aramis
Moderator
Beiträge: 1458
Registriert: 25.02.2009, 19:50
Echter Name: Alexander Gessler
Wohnort: 2016
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von Aramis »

Ja, aber offenbar ist der Status Quo dass es fuer „Spieleprogrammierung mit C” deutlich weniger Material gibt als fuer C++. Also waere es ggf. sinnvoller sich dem anzupassen anstelle auf C zu beharren.

(dass man in reinem C problemlos Spiele schreiben kann steht ausser Frage – wie ich ja sagte, schlussendlich sind sie alle gleich).
Hallo123
Beiträge: 3
Registriert: 12.11.2010, 21:04

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von Hallo123 »

Den Link zu der Umfrage mit der am meißten verbreitesten Programmiersprache habe ich leider vergessen. So ich habe mich jetzt mal für das Buch mit das sich mit der Spieleprogrammierung vom Gameboy Color beschäftigt gewählt, weil ich da KEINE Engine brauche und es am leichtesten ist(hab mir die Sourcecodes in Googlebücher angeguckt). Naja auf jeden Fall denk ich ist das ein guter Einstieg, weil ich finde das man da mal das Grundprinzip der Kolisionsabfrage lernt usw. So DANKE DANKE für die Links mit OpenGL die werde ich mir mal gleich auch angucken.


EDIT: Ich werde mir auch noch das Buch: Spieleprogrammierung(bhv) Taschenbuch zulegen da dies für Leute ist, welche das Programmieren noch gar nicht beherschen und so auch C++ (die Grundlagen in C++ die für dieses Buch verwendet werden) erklären udn ich mir nich extra ein C++ Buch zulegen muss. Nach diesem Buch werde ich, aber meine Spiele ausschließlcih in C programmieren. Haltet ihr das für eine Sinnvolle Idee???

mfg hallo123
Benutzeravatar
Aramis
Moderator
Beiträge: 1458
Registriert: 25.02.2009, 19:50
Echter Name: Alexander Gessler
Wohnort: 2016
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von Aramis »

Nach diesem Buch werde ich, aber meine Spiele ausschließlcih in C programmieren. Haltet ihr das für eine Sinnvolle Idee???
Wenn du nach dem Studium dieses Buches immer noch dieser Meinung bist – ja.
Benutzeravatar
dowhilefor
Moderator
Beiträge: 173
Registriert: 27.02.2009, 15:44
Alter Benutzername: 6SidedDice
Echter Name: Nico Probst
Wohnort: Bochum
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von dowhilefor »

Erst schreibst du ...
Ich würde gerne bei C bleiben
dann fragst du uns nach einer Meinung
aber meine Spiele ausschließlcih in C programmieren. Haltet ihr das für eine Sinnvolle Idee???
Sinnvoll in welchem Bezug? Welche Prioritäten hast du? Reine Sprach präferenz? Dann kann dir eh keiner eine anständige Antwort geben.
Programmier in was immer du willst, jeder würde dir eh was anderes raten.
Allerdings hast du dir von fast allem erdenklichen das schwerste rausgesucht und nicht zwangsläufig das beste( nicht das es so etwas gibt, aber man hat bei dir ein bischen den Eindruck. Stichwort Umfrage ).

Mach dir klar was deine Ziele sind und mach das nicht an einer Programmiersprache fest, die ist auswechselbar. Du kaufst dir doch auch nicht einen Hammer und fragst welches Haus du damit bauen willst.
Wenns C sein soll, ok ... spricht auch überhaupt nichts gegen, aber wie gesagt einfach wird das nicht ... und das Gameboy Buch halte ich glaube ich noch für die denkbar schlechteste Idee. Wirklich was daraus lernen wirst du für zukünftige Spiele sicher nicht, dafür ist so eine Hardware viel zu speziell.
Aber gut, Warnungen und Ratschläge wurden ausgesprochen was du damit machst ist nun deine Sache. :)
Mein Gehirn besteht nur noch aus einem hash-index, ich weiss was ich kenn aber kenn nicht was ich weiss
Benutzeravatar
The_Real_Black
Establishment
Beiträge: 110
Registriert: 19.01.2008, 19:57
Benutzertext: Happy Coding
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von The_Real_Black »

Ich gebe auch mal meinen Senf dazu.
dowhilefor hat geschrieben:und das Gameboy Buch halte ich glaube ich noch für die denkbar schlechteste Idee. Wirklich was daraus lernen wirst du für zukünftige Spiele sicher nicht, dafür ist so eine Hardware viel zu speziell.
Da stimme ich mal zu Programmieren zu lernen und dazu ein Speziellesgerät vorauszusetzen helft dir nicht im allgemeinen programmieren zu lernen.
Hallo123 hat geschrieben:aber meine Spiele ausschließlcih in C programmieren. Haltet ihr das für eine Sinnvolle Idee??? ... weil ich konnte mich nie so ganz mit OOP anfreunden. Bitte sagt jetzt nicht dann kannste kein Spiel programmieren bla bla bla. Ich meine es wird mehr in C als in C++ programmiert laut einer Aktuellen Umfrage(ich glaube die war von PC Games).
Früher oder später wirst du Strukturen brauchen um die Daten eines Spiel zu managen bzw du wirst darauf kommen, dass man eine Sammlung von Variablen öfter benötigt. Beispiele sind zB Spielernickname, Figurname, Lebenspunkte, Textur usw... dazu braucht du dann noch Funktionen welche als ersten Parameter immer einer dieser Strukturen benötigt und dann kann man die Strukturen Klassen nennen, die Funktionen Methoden und man kann den ersten Parameter weglassen... Es geht meiner Meinung nach mit (reinen) C Spiele gerne auch höhere zu programmieren (ich vermeide das Wort Entwickeln), aber es wird (Hausnummer) 100 mal so lange dauern und von der Übersichtlichkeit welche man verliert mal ganz zu schweigen.

In C wird viel programmiert vor allem Microcontroller (hier gibt es aber einen C-Compiler-Mangel, deswegen wird auch hier über kurz oder lang C++ verwendet werden), aber bei kommerziellen Spielen wird man nie mit (reinen) C mehr beginnen. Wenn man mal moderne SW Entwurfstools betrachtet wird man erkennen, dass UML sprich ein OOP-Ansatz das übersichtlichste (ich sage das natürlichste) ist bei der SW Entwicklung.

Versuch mal wie weit du kommt mit reinen C dann sehen wir mal weiter...

C++ für Kids: http://www.amazon.de/C-f%C3%BCr-Kids-Ha ... =pd_cp_b_1
Ich hatte mit einer älteren Auflage dieses Buches den Umstieg von C auf C++ vor einigen Jahren Erfolg, da es doch sehr einfach geschrieben ist.
Übungsbuch C/C++: http://www.amazon.de/%C3%9Cbungsbuch-pr ... 775&sr=1-3
Damit kann man seine C\C++ Kenntisse testen und erweitern.

Spieleprogrammierung: http://www.amazon.de/Spieleprogrammieru ... 941&sr=1-9
Mit einer netten Lib (Allegro) wird einen hier einiges beigebracht um 2D Spiele zu entwickeln, aber in C++. Es ist auch sehr einfach geschrieben und man geht auch auf das Klassenkonzept vorher erst ein.
Happy Coding.
Benutzeravatar
Lynxeye
Establishment
Beiträge: 145
Registriert: 27.02.2009, 16:50
Echter Name: Lucas
Wohnort: Hildesheim
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von Lynxeye »

Hallo123 hat geschrieben: Nach diesem Buch werde ich, aber meine Spiele ausschließlcih in C programmieren. Haltet ihr das für eine Sinnvolle Idee???
Nein. Bei großen Projekten ist eine objektorientierte Programmiersprache viel besser geeignet. Es lässt sich zwar auch vieles davon in reinem C abbilden, das ist aber ein richtiger Krampf im Arsch und um da nicht nur einen riesigen Haufen Bugs zu produzieren, muss man schon ein sehr fortgeschrittener Programmierer sein. C erlaubt einfach viel zu viel Mist, den dir jeder C++ Compiler schon zur Compilezeit um die Ohren haut, bei C krachts erst zur Laufzeit und dann beginnen die lustigen Debugsessions, die einem Anfänger richtig schön die Laune verderben können.
glassbear
Establishment
Beiträge: 324
Registriert: 08.04.2003, 18:09
Alter Benutzername: Enrico_
Echter Name: Enrico
Wohnort: San Diego
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von glassbear »

Auch wenn ich normalerweise "Entscheide dich für eine Sache und bleib dabei" sehr sinnvoll finde, so werf ich doch mal Alternativen zu C in den Raum (und das als großer Anhänger von C :mrgreen: ) :
- Python hat bei der Entwicklungsdauer massive Vorteile, auch bei Syntax und Lesbarkeit. Für Spiele gibt es ausreichende Bindings/Bibliotheken. Für Anfänger bietet die Sprache noch etwas mehr: Reduzierte Komplexität.

- C#: Siehe Python, nur andere Syntax und eher an Windows gebunden, dafür gibts XNA ;)

Gerade für Anfänger empfehl ich eher Python oder C#, ich seh einfach die Vorteile für Programmieranfänger in meinen Vorlesungen, die sich mit Python wesentlich leichter tun und somit mehr Erfolge haben.. Was mehr Motivation bringt ;)
Ein Hoch auf uns Männer... Auf die Frau, die uns HAT ( oder hat, und nicht weiß, dass sie uns hat ) ...auf die Idiotinnen ... besser gesagt VOLLPFOSTINNEN ... die uns hatten und uns verloren haben ... und auf die GLÜCKLICHEN, die das Vergnügen & Glück haben werden uns kennenzulernen!
Benutzeravatar
The_Real_Black
Establishment
Beiträge: 110
Registriert: 19.01.2008, 19:57
Benutzertext: Happy Coding
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von The_Real_Black »

Enrico_ hat geschrieben:Auch wenn ich normalerweise "Entscheide dich für eine Sache und bleib dabei" sehr sinnvoll finde, so werf ich doch mal Alternativen zu C in den Raum (und das als großer Anhänger von C :mrgreen: ) :
- Python hat bei der Entwicklungsdauer massive Vorteile, auch bei Syntax und Lesbarkeit. Für Spiele gibt es ausreichende Bindings/Bibliotheken. Für Anfänger bietet die Sprache noch etwas mehr: Reduzierte Komplexität.
- C#: Siehe Python, nur andere Syntax und eher an Windows gebunden, dafür gibts XNA ;)
Gerade für Anfänger empfehl ich eher Python oder C#, ich seh einfach die Vorteile für Programmieranfänger in meinen Vorlesungen, die sich mit Python wesentlich leichter tun und somit mehr Erfolge haben.. Was mehr Motivation bringt ;)
Er sagte ja
weil ich konnte mich nie so ganz mit OOP anfreunden
deswegen habe ich nicht XNA und C# in den Raum geworfen, obwohl ich davon ein Fan bin, denn wenn er mit OOP keine Erfahrung hat bzw das System der OOP noch nicht verinerlicht hat wir er sich sicher schwer mit einem rein OO Ansatz zurechtfinden wie es C# vorgibt. Man könnte noch ein paar Vorteile von C#, XNA usw in den Raum werfen sie werden noch weiterentwickelt ("sie leben") die Communities sind Aktiv und es gibt immer neue Tutorials sowie Support. Wenn man bei einem "C-Tutorial" auf Probleme stößt wird man vermutlich niemanden mehr finden der sich damit auseinander setzen möchte. Persönlich keine ich niemanden der sich noch mit C abgibt viele sind auf C# umgestiegen, da der Compieler einen viel mehr Unterstützt und man nicht mehr solange nach Fehlern suchen muss.

Vorteil einer höheren Programmiersprache (C ist doch was mittleres *hust*): try und catch uU auch noch finally.
Bei einen größeren Projekt sollte man immer bedenken, dass man in C ohne eine Fehlerbehandlung auskommen muss.
Happy Coding.
glassbear
Establishment
Beiträge: 324
Registriert: 08.04.2003, 18:09
Alter Benutzername: Enrico_
Echter Name: Enrico
Wohnort: San Diego
Kontaktdaten:

Re: Gutes C Buch für Spieleprogrammierung gescuht

Beitrag von glassbear »

weil ich konnte mich nie so ganz mit OOP anfreunden
Dann hast du das falsche Buch oder Lehrmeister dazu. Das ist weder schwer komplex noch kompliziert. Und was in vielen Anfängerbüchern als "OOP" verkauft wird, ist nur ein paar Zusammenfassungen von Attributen und Methoden. Das geht genauso mit C (wenn auch umständlicher). Also keine Angst davor und ran an den Speck =)


Und das sag ich als Freund der funktionalen Programmierung...
Ein Hoch auf uns Männer... Auf die Frau, die uns HAT ( oder hat, und nicht weiß, dass sie uns hat ) ...auf die Idiotinnen ... besser gesagt VOLLPFOSTINNEN ... die uns hatten und uns verloren haben ... und auf die GLÜCKLICHEN, die das Vergnügen & Glück haben werden uns kennenzulernen!
Antworten