Wie soll ich das am besten anfangen?
Ich wollte schon immer mal mein eigenes Spiel programmieren, doch ich weiß nicht wo und wie ich anfangen soll. Also wie/wo lerne ich am besten zu programmieren. Sollte man sich ein Video ansehen? Oder einen Kurs machen?
Danke im Voraus :)
3 Antworten
Zuerst könntest du mit Scratch anfangen. Es ist eine sehr einfache Programmiersprache entwickelt vom MIT. Hier ist alles grafisch aufgebaut und die Sprache bietet einen sehr einfachen Einstieg in die Spieleprogrammierung.
Eine passende Tutorial-Serie zu Scratch findest du zum Beispiel hier:
Scratch-Game-Tutorial-Playlist
Falls du noch nicht so gut in Englisch bist, kannst du YouTube Videos einfach automatisch auf Deutsch übersetzen. Dazu wähle das Zahnradsymbol im Video unten rechts im Player, welches das Tab "Einstellungen" öffnet.
Einstellungen > Untertitel > Automatisch übersetzen (runter scrollen) > Deutsch
Tipp: Neben dem Programmieren kann ich dir stark empfehlen deine Englisch-Kenntnisse zu verbessern. Es hilft enorm auf deinem Weg zum Entwickler, weil du so Zugriff auf einen großen Support-Pool erhältst.
---------------------------------------
Nachdem du mit Scratch Erfahrung gesammelt hast, solltest du den Übergang zu einer Hochsprache angehen.
Ein typische Empfehlung ist hier die Programmiersprache C, weil du damit eigentlich so gut wie alles umsetzen kannst.
Einen sehr gelungenen Übergang von Scratch zu C und die Einführung in die Programmierung liefern zum Beispiel die ersten 5 Videos von dem CS50 Kurs "Einführung in die Informatik" der Harvard Universität.
- Computational Thinking & Scratch
- C Programming Language
- Arrays and Sorting Algorithms
- Memory
- Data Structures
---------------------------------------
Sobald du die Grundlagen der Programmierung verstanden hast solltest du dich für eine Engine entscheiden.
Hier ein gutes Video dazu:
https://www.youtube.com/watch?v=j48LtUkZRjU
Eine gute Wahl könnte zum Beispiel Unity sein, weil sie auch eine 2D Engine unterstützt und viele Hobby-Entwickler damit arbeiten. Dadurch ist die Wahrscheinlichkeit hoch auf viele deiner Fragen, die du definitiv auf deinem Weg haben wirst, auch Antworten zu erhalten.
Eine kostenlose Möglichkeit um die Grundlagen von Unity zu lernen ist die offizielle Lernplattform Unity Learn. Hier hast du Zugriff auf eine Vielzahl von kostenlosen Kursen für Anfänger und Fortgeschrittene. Der Kurs "Unity Basics" ist ein großartiger Einstieg in die Unity-Entwicklung
---------------------------------------
Wenn du die Basics in allen vorher genannten Bereichen erlernt hast kann ich dir zum Abschluss noch die Einführung in Game-Development der Harvard-Universität empfehlen:
Einführung in die Spiele-Entwicklung
Dort lernst du zum Beispiel noch die Skriptsprache Lua und weitere typische Merkmale der Spiele-Entwicklung kennen
---------------------------------------
Viel Spaß und viel Erfolg auf deinem Weg!
Du solltest dir auch eine Support-Struktur aufbauen.
Falls du Fragen hast und nicht weiterkommst nutze zum Beispiel ChatGPT als virtuellen Assistenten und Lehrer.
Außerdem kann ich dir empfehlen Support-Seiten zu nutzen:
Auch mit Gruppen auf Reddit und Discord habe ich gute Erfahrungen gemacht.
Material-Liste:
Scratch-Editor im Browser: Scratch
Erstelle dir einen Entwickler-Account bei github
Danach registriere dich mit deinem Github-Account bei der CS50 Sandbox, um einen übersichtlichen C-Editor inklusive Compiler direkt im Browser zu erhalten und auf alle Features des CS50 Kurses zugreifen zu können (alles so lassen und unten auf den blauen "Create" Button drücken)
Für alle weiteren Entwicklungen empfehle ich dir den Editor Visual Studio Code weil hier sehr viele Plugins vorhanden sind.
@Kjeliwo
Ich sehe gerade, dass leider die Verlinkung der Scratch-Tutorial-Liste fehlgeschlagen ist. Hier der richtige Link:
Am häufigsten kommen diese Elemente zum Tragen:
Input->Verarbeitung->Output
Input: Wo kommen die Daten her ?
Eingabe per GUI; Maus; Keyboard; Spiele Controller
BUS Systeme (u.a. Auch WEB)
Server Datenbank
Files (lokale Festplatte)
..etc..
..all diese Eingaben erfordern Kenntnisse über sicheren und
vertrauenswürdigen Zugriff und Prüfung
Verarbeitung:
Die Daten liegen in unterschiedlichen Formaten vor.
Diese müssen erst vereinheitlicht werden, damit auch zusammen 'verarbeitet'
werden können.
Hierbei kommen von einfachem Casting auch, Decryption, EntPacken,
De-serialisieren, etc hinzu.
Du hast dir nun Dinge angeeignet einen Algorithmus zur Ausgabeberechnung
angeeignet, diese kämen in diesem Kontext zur Anwendung
Ausgabe:
Präsentation auf dem Bildschirm, einmalig, wiederholend, in welcher Sprache,
Format-generell "Darstellung" Farben, Gestaltung, Anordnung.
Versenden der Ergebnisse, Speichern, etc
Zum üben also diese Aspekte mal in einem Spaßprojekt üben. Die berühmte StoppUhr mit variablem CountDown, als Zusatzfunktion, immer wieder beliebt.
Gleich mit der Spielprogrammierung anfangen ist quatsch. Habe ich mir damals auch gedacht, aber erstmal würde ich empfehlen die Grundlagen irgendeiner Programmiersprache, die sich zur Spielentwicklung eignet, zu lernen. Auf Udemy gibt es außerdem gute Kurse für die Spielprogrammierung mit z.B. Unity.