Ein Lernprojekt zur Spieleentwicklung mit C++, SFML und Qt. Ziel ist es, schrittweise die Grundlagen der Spieleentwicklung zu erlernen, kleine Retro-Spiele zu entwickeln und schließlich ein BlackJack-Spiel mit einer benutzerdefinierten GUI zu erstellen.
Das Projekt verfolgt folgende Lern- und Entwicklungsziele:
- Kurzfristig: Erstellung einfacher Retro-Spiele wie Pacman, Pong und Snake.
- Langfristig: Entwicklung eines funktionsfähigen BlackJack-Spiels mit moderner Benutzeroberfläche.
Das Projekt basiert auf der Arbeit mit einem Lehrbuch und umfasst folgende Themen:
- Einführung in die Grundlagen von SFML.
- Erstellung grafischer Benutzeroberflächen mit Qt.
- Kombination von SFML und Qt zur Entwicklung komplexer Spiele.
Das schrittweise Vorgehen sorgt dafür, dass praktische Erfahrungen gesammelt werden, während die theoretischen Konzepte direkt angewendet werden.
- Programmiersprache: C++
- Game-Engine: SFML (Simple and Fast Multimedia Library)
- GUI-Framework: Qt
- Compiler: GCC oder Clang, kompatibel mit SFML und Qt.
- Installiere SFML und Qt auf deinem System.
- Stelle sicher, dass ein C++-Compiler (z. B. g++) korrekt eingerichtet ist.
-
Repository klonen:
git clone git@github.com:GizehFire/Spieleentwicklung.git cd Spieleentwicklung
-
SFML-Projekt kompilieren:
- Für ein einfaches SFML-Spiel wie Pong:
g++ pong.cpp -o pong -lsfml-graphics -lsfml-window -lsfml-system ./pong
- Für ein einfaches SFML-Spiel wie Pong:
-
Qt-Projekt erstellen:
- Öffne das Projekt in Qt Creator oder kompiliere es manuell:
qmake make ./spiel
- Öffne das Projekt in Qt Creator oder kompiliere es manuell:
-
Kombiniertes Projekt (SFML und Qt):
- Detaillierte Anweisungen folgen, sobald das Projekt diese Phase erreicht.
- Stufe 1: Einführung in SFML.
- Spiele: Pong, Snake, Pacman.
- Stufe 2: GUI-Erstellung mit Qt.
- Beispiel: Spielmenüs, Einstellungen.
- Stufe 3: Kombination von SFML und Qt.
- Ziel: Vollständig funktionsfähiges BlackJack-Spiel.
- Pong: Ein klassisches Ball- und Schlägerspiel.
- Snake: Eine einfache Umsetzung des klassischen Snake-Spiels.
- Pacman: Ein Labyrinth-Spiel mit einfachen Mechaniken.
- BlackJack: Ein Kartenspiel mit interaktiver GUI und Animationen.
Dies ist ein persönliches Lernprojekt. Beiträge und Vorschläge sind jedoch immer willkommen:
- Forke das Repository.
- Erstelle einen neuen Branch:
git checkout -b feature/neue-funktion
- Sende einen Pull Request, wenn die Änderungen abgeschlossen sind.
Dieses Projekt steht unter der GNU General Public License v3.0. Dies bedeutet:
- Du darfst den Code nutzen, verändern und weitergeben, solange du die gleiche Lizenz beibehältst.
- Weitere Details findest du in der Datei LICENSE im Repository.
Viel Spaß beim Lernen und Entwickeln!