2010-10-22 13 views
5

Eine andere Frage. Ich habe alles erforscht, was diese wundervolle Gemeinde mir in Bezug auf meine Reise zur Entwicklung von Spielen geboten hat.Anfänger Weg zur Spielentwicklung für OS X und iPhone

Ich bin zu dem Schluss gekommen, dass ich lieber auf meiner eigenen Maschine, OS X entwickeln würde - schließlich zum iPhone führen.

Ich besitze bereits sowohl Big Nerd Ranch Führer, Iphone Programmierung - die Big Nerd Ranch Guide und lernen, auf Mac OS X zu programmieren - die große Nerd Ranch Guide.

Mein Ziel, für das ich versuche zu schießen, ist ein Spiel ähnlich Blizzards Diablo II.

Als ich durch diese Bücher ging, schien mir alles ein bisschen über den Kopf zu gehen, weil es an Objective-C-Erfahrung mangelte (so vermute ich).

Was ist die beste anfängerfreundliche Möglichkeit für mich, meine Ziele zu erreichen? Ich habe mir Objective-C-Bücher für Anfänger von Apress und dergleichen oder gerade C-Bücher angesehen.

Wie würden erfahrene Entwickler wie Sie einen Neuling auf diesem Weg führen?

Grüße

  • bearbeiten -

zu beantworten, warum ich den Apfel Route ausgewählt haben, es sieht einfach die bequemste sein (Umgebung der Maschine stammt). Ich kann jedoch sehr falsch liegen. Ich schaute auf Unity, es unterstützt C#, JavaScript und Boo. Andere wie Panda3D verwenden Python. Ich bin mir einfach nicht sicher, es scheint, dass der Entscheidungsprozess ziemlich schwierig geworden ist.

+0

@ PMG, ja ich habe. Wenn ich weiter komme, werden die Dinge für mich etwas zu intensiv. Die Sprache scheint einfach überzulaufen, sie sieht nicht wie etwas aus, was ich vorher gesehen habe. –

+0

Hoppla! Ich habe den Kommentar ca. 10 Sekunden nach dem Posten gelöscht. Ich dachte, es wäre offensichtlich, dass du bereits die "Hallo Welt" -Ding gemacht hast, als ich deine Frage erneut gelesen habe – pmg

+0

Oh, Gotcha. Ich dachte, du wärst sarkastisch, heh. –

Antwort

0

Wenn ich Sie wäre, würde ich mit C beginnen, lernen Sie die Grundlagen der Programmierung, Algorithmen und Speicherzuweisung (unglaublich wichtiges Konzept in C). Dann können Sie zum Lesen einiger Bücher über Objective-C und eine Idee für objektorientierte Programmierung und übergeordnete Konzepte wie dynamische Typisierung, Garbage Collection usw.

Wie für Software, wenn Sie auf OS X soll XCode sein, eine integrierte Entwicklungsumgebung, die von Apple entwickelt wurde, um für iOS und OS X zu entwickeln. Offenbar ist es ein kostenloser Download (obwohl das genau das ist, was Apple auf ihrer Website sagt, weiß ich nicht Mac).

Wie für Bücher, etc. Ich würde nur ein paar gerade C-Bücher und schauen Sie sich einige Tutorials. Lesen Sie sie von Anfang bis Ende und achten Sie besonders auf die wichtigen (und frustrierenden) Konzepte der Speicherzuweisung und -verwaltung sowie Zeiger.

+0

Ich werde mit Learn C auf dem Mac beginnen, es sei denn, es gibt andere besser zu lesen. - EDIT - Accidently Hit Return, was sind einige gute Übungen beim Erlernen einer neuen Sprache. Ich finde, dass ich die Konzepte in meinem Kopf gut verstehe, habe nur Schwierigkeiten, sie auszuführen, um zu wenig Übungen zu machen. –

2

Ich würde Ihnen empfehlen

a) die Grundlagen der C lernen (insbesondere Speicherverwaltung)

b) lernen die Grundlagen der Objective-C

c) lernen, das iPhone SDK aus einem Buch (Ich mochte "Beginning iPhone Development" und seine 2. Band)

d) wählen Sie ein Projekt, das Sie interessant finden und das ist nicht zu anspruchsvoll und nur Code.Sie werden feststellen, dass, wenn Sie fertig sind, Sie wahrscheinlich denken, die Dinge, die Sie zuerst getan haben, sind schrecklich, aber Sie werden eine Menge lernen in diesem Prozess

e) besuchen Sie Stackoverflow.com so oft wie möglich, es hat die meisten die Antworten auf die Fragen, die Sie haben werden :)

3

Es hängt von der Art des Spiels ab, das Sie machen - aber viele der Top-Spiele auf dem iPhone wurden mit einem Open-Source-Framework namens cocos2d erstellt. Es ist fabelhaft, vereinfacht alles, hat tolle Tutorials und ist speziell für das iPhone verfügbar.

Check it out an:

http://www.cocos2d-iphone.org/

+0

Wow. Also habe ich Cocos2d vorher noch nie probiert - also in den letzten 24 Minuten seit der Veröffentlichung - habe ich ein paar Beispiele und Tutorials gelesen - das Kit (welches auch die Box2d Physik Engine enthält) heruntergeladen - das Kit installiert und gebaut - und Jetzt haben Sie eine Menge Beispielspiele auf dem Simulator! Ziemlich mächtiges Zeug !! – Brad

+0

Großer Kommentar. Ich habe das selbe gemacht und bin ziemlich erstaunt, wie schnell ich lernen kann, indem ich einfach den Code für diese Spiele überprüfe. – krx

+0

Sehr interessant, können Sie ein Spiel mit Diablo ähnlichen Bildern und einer Vogelperspektive erstellen? Oder wären alle RPGs wie Final Fantasy Klassiker? –

0

Ich finde, dass ein guter Weg, um eine neue Sprache zu lernen, ist mit replizierenden gemeinsamen Kommandozeilen-Tool wie WC zu starten, grep, ls usw. Dies wird lernen Sie die Grundlagen von I/O (sowohl Datei und Stdin/Stdout) und einige grundlegende String-Parsing, sowie andere Leckereien hier und da. Außerdem haben Sie eine deterministische Methode, um zu bestimmen, ob Ihr Programm es richtig macht oder nicht, da Sie leicht mit der Ausgabe oder dem Verhalten des Standardbefehls vergleichen können.

K&R, sowie Programming in Objective-C 2.0, sind gute Orte, um die Grundlagen von C und Objective-C zu lernen.

Sobald Sie die Grundlagen der Sprache haben, beginnen Sie mit grundlegenden GUI-Programmen (die in Hillegass Buch sind ein guter Anfang). Sobald Sie eine Basis-GUI an die Front einer zugrunde liegenden Logik anschließen können, ist es Zeit, ernsthaft über Ihr Spiel nachzudenken. Hillegass 'Buch enthält eine grundlegende Einführung in die Verwendung von NSOpenGLView, mit der Sie 2D und 3D manuell zeichnen können. Es ist wichtig zu beachten, dass Sie, wenn Sie die Beispiele in einem Buch durchgehen, genau verstehen wollen, was sie tun und wie sie es tun, genug, damit Sie selbst einige Änderungen vornehmen können, um das Verhalten zu verbessern das Beispielprogramm, mit dem Sie arbeiten.

Sobald Sie die Grundlagen dafür verstanden haben, wie sich Ihre zugrunde liegende Spiellogik mit etwas verbinden kann, das der Benutzer sehen kann, ist es an der Zeit, eine Spiel-/Zeichnungsbibliothek zu finden, die Sie dorthin bringt, wohin Sie gehen. Sie wollen definitiv nicht alle Grafikroutinen selbst für ein Spiel ähnlich wie Diablo schreiben.

1

Wenn Sie an einem Mac arbeiten, wird es interessant.

Die größten Spiele Märkte um mehrere Größenordnungen sind Konsolen und Windows. Wenn Sie nur auf das iPhone und OSX abzielen, ist der Mac ideal für die Entwicklung. Dies ist jedoch ein begrenzter (Mac OS), konkurrenzfähiger (iPhone) Markt. Wenn Sie etwas machen wollen, das ein echtes Produkt mit echten Verkäufen werden wird, ist es wahrscheinlich ein Fehler, sich vom Anfang an auf OSX zu beschränken.

Wenn Sie gerade erst anfangen und erfahren möchten, was diesen ganzen Spielmist ausmacht, bleiben Sie bei der Sprache und dem Betriebssystem, mit denen Sie sich am wohlsten fühlen. Die Einführung zu vieler Variablen in eine Lernexpedition ist ein wesentlicher Bestandteil des Scheiterns. Eines der schönen Dinge an dieser Art von App ist, dass die Algorithmen und Techniken, die Sie verwenden, plattformübergreifend sind. Matrizen sind Matrizen, egal, ob Sie an einem TI-89 oder einem Alienware-Desktop arbeiten.

Wenn dies der Fall ist, sollten Sie jedoch wissen, welche plattformspezifischen Widgets Sie in Ihrem Code verwenden. Plane diesen weg. Schreibe eine Menge Test-Apps.Und wenn Sie sicher sind, dass Sie bereit sind, etwas Echtes zu bauen, werden Sie bereit sein, eine VM oder einen neuen Desktop mit Windows (I LOVE XNA), C++ mit DirectX oder OpenGL oder dem zu erstellen Variablen, das neue Material, das Sie lernen müssen, wird nicht über Grafiken oder Mathematik oder Gameplay, sondern über die Plattform selbst sein.

Schreiben "Hallo, Welt!" ist viel einfacher, wenn Sie nicht herausfinden, was Sie sagen wollen, sondern nur wie Sie es sagen.

Auch, anstatt auf einen Blizzard-Klon zu zielen, beginnen Sie mit etwas Schmutz einfach, wie Pong. Dann mach 3D Pong. Dann füge die Schwerkraft hinzu. Dann Kollisionserkennung. Und so weiter.

Überprüfen Sie auch gamedev.stackexchange.com, wenn Sie Game Dev-spezifische Fragen haben. Es ist viel weniger Verkehr als SO, und viele der Teilnehmer sind Teenager-Fanboys, aber es gibt gute Kenntnisse, die bereit sind, angezapft zu werden.

1

Sie können ein kleines Spiel für das iPhone ziemlich schnell entwickeln, sobald Sie Objective C und die iOS-APIs gemeistert haben. Ich brauchte ungefähr 4 Wochen, um ein kleines iPhone-Only-Spiel mit begrenzter Spiellogik zu entwickeln. Hier ist eine Zuschreibung meiner Erfahrungen:

http://corrino-software.com/how_long_does_it_take_to_make_an_iphone_game

jedoch so etwas wie ein Diablo-Stil Spiel ein gewaltiges Projekt sein würde. Wie David sagt, beginnen Sie besser mit etwas kleinerem und besser managbarem, dann können Sie zu größeren Projekten wechseln, wenn Sie mit dem Entwicklungsprozess vertraut sind und sich mit den Tools und Bibliotheken auskennen, die Sie benötigen.