EN
🎥 Demo Video: Download / Watch (Short gameplay demonstration)
A UML class diagram for the project is available in docs/UML class.pdf.
This project was created as part of a school programming assignment at Grafenbergschule Schorndorf – TG Informationstechnik.
It is a classic Ping Pong game built with JavaFX, featuring:
- FXML layout for the UI structure (designed with Scene Builder)
- CSS for styling
- Sound effects for game events
The project demonstrates basic game mechanics, object-oriented design,
and integration of multimedia resources in JavaFX.
Note: Collision detection between the ball and paddles was a challenging part of the project,
and there are still some edge cases where it does not work perfectly (Watch Video).
- Move Paddle Up/Down → Keyboard (W/S for Player 1, Up/Down arrows for Player 2)
- Score Point → Hit the ball past the opponent's paddle
- Game Over → Triggered when a player reaches the winning score
- Java 8 (1.8)
- JavaFX
- Scene Builder (for FXML UI design)
- CSS (styling)
- Audio (MP3/WAV)
- Make sure you have Java 8 installed.
- Open the project in your IDE (NetBeans).
- Use Scene Builder.
- Use Java 1.8
- Run
PingPong.javato start the game.
MIT License – free to use for educational and private purposes.
DE
🎥 Demo-Video: Download / Ansehen
(Kurze Gameplay-Demonstration)
Ein UML-Klassendiagramm für das Projekt befindet sich in docs/UML class.pdf.
Dieses Projekt wurde im Rahmen eines schulischen Programmierauftrags an der Grafenbergschule Schorndorf – TG Informationstechnik erstellt.
Es handelt sich um ein klassisches Ping Pong Spiel, entwickelt mit JavaFX, mit folgenden Merkmalen:
- FXML-Layout für die Benutzeroberfläche (erstellt mit Scene Builder)
- CSS für das Styling
- Soundeffekte für Spielereignisse
Das Projekt demonstriert grundlegende Spielmechaniken, objektorientiertes Design
und die Einbindung von Multimedia-Ressourcen in JavaFX.
Hinweis: Die Kollisionsabfrage zwischen Ball und Schlägern war ein schwieriger Teil des Projekts,
und es gibt immer noch einige Randfälle, in denen sie nicht perfekt funktioniert (siehe Video).
- Schläger hoch/runter bewegen → Tastatur (W/S für Spieler 1, Pfeiltasten hoch/runter für Spieler 2)
- Punkt erzielen → Ball am Schläger des Gegners vorbeispielen
- Spielende → Wenn ein Spieler die Gewinnpunktzahl erreicht
- Java 8 (1.8)
- JavaFX
- Scene Builder (für FXML-Oberflächendesign)
- CSS (Design)
- Audio (MP3/WAV)
- Stelle sicher, dass Java 8 installiert ist.
- Öffne das Projekt in deiner IDE (NetBeans).
- Verwende Scene Builder.
- Nutze Java 1.8.
- Führe
PingPong.javaaus, um das Spiel zu starten.
MIT License – frei nutzbar für Bildungs- und private Zwecke.