GameDevWeek/Fachseminar (Themen): Unterschied zwischen den Versionen
[gesichtete Version] | [gesichtete Version] |
(Die Seite wurde neu angelegt: „== Details zu den Themen: == Genaue Beschreibungen zu den Themen sind im Bereich Programmierung zu finden, hier geht es lediglich um die Anwendbarkeit im Fach…“) |
|||
(10 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
− | + | Genaue Beschreibungen zu den Themen sind im [[GameDevWeek/Programmieren|Bereich Programmierung]] zu finden, hier geht es lediglich um die Anwendbarkeit im Fachseminar. | |
− | + | == Allgemeines == | |
+ | In jedem Themengebiet haben wir hilfreiche Vorlesungen aufgelistet. Wenn diese nicht belegt (oder verstanden) wurden, muss das notwendige Wissen zusätzlich zum eigentlichen Thema erarbeitet werden. Je nach Themengebiet ist das eine Menge Arbeit, es wird also empfohlen die Themen nur dann zu wählen, wenn das Wissen der jeweiligen Vorlesungen schon großteils vorhanden ist. | ||
− | + | Generell ist jedes Modul hilfreich, das praktische Aufgaben zu dem Thema erfordert, wie z.B. Projekte, [http://www.hochschule-trier.de/index.php?id=6896 GBO], [http://www.hochschule-trier.de/index.php?id=10032 Tool & Plugin], etc.. | |
− | + | <br style="clear: both;"> | |
− | + | == User-Interface == | |
− | |||
− | Generell ist jedes Modul hilfreich, das praktische Aufgaben zu dem Thema erfordert, wie z.B. Projekte, GBO, Tool & Plugin, etc.. | ||
− | |||
− | |||
Besonders Anfängern zu empfehlen, da man sich auch ohne Vorkenntnisse einarbeiten kann und langsamer Fortschritt andere Teams nicht zu sehr aus bremst. Das Thema beinhaltet Menü und HUD Entwicklung mittels libGDX Scene2D.UI. | Besonders Anfängern zu empfehlen, da man sich auch ohne Vorkenntnisse einarbeiten kann und langsamer Fortschritt andere Teams nicht zu sehr aus bremst. Das Thema beinhaltet Menü und HUD Entwicklung mittels libGDX Scene2D.UI. | ||
− | + | === Hilfreiche Vorlesungen: === | |
* [http://www.hochschule-trier.de/index.php?id=6896 Grafische Benutzeroberflächen] | * [http://www.hochschule-trier.de/index.php?id=6896 Grafische Benutzeroberflächen] | ||
* [http://www.hochschule-trier.de/index.php?id=13806 Entwicklung mobiler Anwendungen] | * [http://www.hochschule-trier.de/index.php?id=13806 Entwicklung mobiler Anwendungen] | ||
− | + | === Allgemeine Recherche: === | |
* Umgehen mit verschiedenen Auflösungen (Responsive Design) | * Umgehen mit verschiedenen Auflösungen (Responsive Design) | ||
* Benutzung von LibGDX Scene2D. | * Benutzung von LibGDX Scene2D. | ||
− | + | === Vorschläge für Spezialgebiete: === | |
* Eingabeverfahren (Maus, Keyboard, Gamepad, Touchscreen) für Navigation Texteingabe. | * Eingabeverfahren (Maus, Keyboard, Gamepad, Touchscreen) für Navigation Texteingabe. | ||
Zeile 29: | Zeile 26: | ||
* Schriftarten zeichnen (Kerning, Outlining, Schatten) und Spezielle Zeichenmethoden (z.B. Signed Distance Field oder Alpha Tested Magnification.. beides von Valve). | * Schriftarten zeichnen (Kerning, Outlining, Schatten) und Spezielle Zeichenmethoden (z.B. Signed Distance Field oder Alpha Tested Magnification.. beides von Valve). | ||
− | + | == Gamelogik == | |
Für dieses Thema ist etwas Erfahrung besonders für Aufbau und Herangehensweise hilfreich. | Für dieses Thema ist etwas Erfahrung besonders für Aufbau und Herangehensweise hilfreich. | ||
− | + | === Hilfreiche Vorlesungen: === | |
* [http://www.hochschule-trier.de/index.php?id=6896 Grafische Benutzeroberflächen] (Klassen, Listener Pattern, MVC) | * [http://www.hochschule-trier.de/index.php?id=6896 Grafische Benutzeroberflächen] (Klassen, Listener Pattern, MVC) | ||
* [http://www.hochschule-trier.de/index.php?id=6908 Lineare Algebra] (Vektoren) | * [http://www.hochschule-trier.de/index.php?id=6908 Lineare Algebra] (Vektoren) | ||
− | + | === Allgemeine Recherche: === | |
* Game Engine Grundgerüst + Main Loop. | * Game Engine Grundgerüst + Main Loop. | ||
− | + | === Vorschläge für Spezialgebiete: === | |
− | * Entity Component System vs | + | * Entity Component System vs Vererbung |
** + Lifecycle Management: Speicher vs CPU | ** + Lifecycle Management: Speicher vs CPU | ||
* Scripted Events (In Game Movies, Kamerafahrten, etc.) | * Scripted Events (In Game Movies, Kamerafahrten, etc.) | ||
Zeile 51: | Zeile 48: | ||
* In Place loading Verfahren (ohne Ladescreen weitere Levelteile laden) und Asset Preprocessing. | * In Place loading Verfahren (ohne Ladescreen weitere Levelteile laden) und Asset Preprocessing. | ||
− | + | == Physik == | |
Sicherer Umgang mit der Programmiersprache erforderlich. Da dies oft ein essentieller Part des Spiels ist und früh benötigt wird, sollte man zügig Programmieren können. | Sicherer Umgang mit der Programmiersprache erforderlich. Da dies oft ein essentieller Part des Spiels ist und früh benötigt wird, sollte man zügig Programmieren können. | ||
− | + | === Hilfreiche Vorlesungen: === | |
* [http://www.hochschule-trier.de/index.php?id=6908 Lineare Algebra] (Vektoren) | * [http://www.hochschule-trier.de/index.php?id=6908 Lineare Algebra] (Vektoren) | ||
* [http://www.hochschule-trier.de/index.php?id=10031 Spieleprogrammierung] | * [http://www.hochschule-trier.de/index.php?id=10031 Spieleprogrammierung] | ||
− | + | === Allgemeine Recherche: === | |
* 2D Physik mit Box2D | * 2D Physik mit Box2D | ||
− | + | === Vorschläge für Spezialgebiete: === | |
* Probleme in der Hochgeschwindigkeitsphysik | * Probleme in der Hochgeschwindigkeitsphysik | ||
Zeile 71: | Zeile 68: | ||
* Joints & Constraints | * Joints & Constraints | ||
− | + | == Rendering == | |
Dieses Thema erfordert etwas Erfahrung im Bereich Computergrafik. Es beinhaltet das Rendern der Welt, Items, Partikeleffekte, Animationen, etc. | Dieses Thema erfordert etwas Erfahrung im Bereich Computergrafik. Es beinhaltet das Rendern der Welt, Items, Partikeleffekte, Animationen, etc. | ||
− | + | === Hilfreiche Vorlesungen: === | |
* [http://www.hochschule-trier.de/index.php?id=6871 Einführung in die Computergrafik] | * [http://www.hochschule-trier.de/index.php?id=6871 Einführung in die Computergrafik] | ||
Zeile 81: | Zeile 78: | ||
* [http://www.hochschule-trier.de/index.php?id=13720 Realtime-Rendering] | * [http://www.hochschule-trier.de/index.php?id=13720 Realtime-Rendering] | ||
− | + | === Allgemeine Recherche: === | |
− | * Keine, da die | + | * Keine, da die Spezialgebiete umfangreich genug sind. |
− | + | === Vorschläge für Spezialgebiete: === | |
* Qualität: | * Qualität: | ||
Zeile 100: | Zeile 97: | ||
** etc. | ** etc. | ||
− | + | == Netzwerk == | |
Das wohl schwierigste Thema und es steht nur dann zur Auswahl, wenn auch ein Netzwerkspiel entwickelt wird. Hierfür ist Vorwissen im Bereich Thread-Safety und Netzwerkkommunikation wichtig und sicherer Umgang mit der Programmiersprache ist unumgänglich. | Das wohl schwierigste Thema und es steht nur dann zur Auswahl, wenn auch ein Netzwerkspiel entwickelt wird. Hierfür ist Vorwissen im Bereich Thread-Safety und Netzwerkkommunikation wichtig und sicherer Umgang mit der Programmiersprache ist unumgänglich. | ||
− | + | === Hilfreiche Vorlesungen: === | |
* [http://www.hochschule-trier.de/index.php?id=6890 Entwicklung verteilter Anwendungen] | * [http://www.hochschule-trier.de/index.php?id=6890 Entwicklung verteilter Anwendungen] | ||
* [http://www.hochschule-trier.de/index.php?id=6921 Parallele Programmierung] | * [http://www.hochschule-trier.de/index.php?id=6921 Parallele Programmierung] | ||
− | + | === Allgemeine Recherche: === | |
* Synchronisation von Daten in Spielen | * Synchronisation von Daten in Spielen | ||
− | + | === Vorschläge für Spezialgebiete: === | |
* UDP NAT Punch Through (Hole Punching) | * UDP NAT Punch Through (Hole Punching) | ||
Zeile 127: | Zeile 124: | ||
** etc. | ** etc. | ||
− | + | == Künstliche Intelligenz == | |
Dies Thema ist zur Zeit noch nicht in der Auswahl, wird aber eventuell bei Interesse (und Erfahrung) auch angeboten. | Dies Thema ist zur Zeit noch nicht in der Auswahl, wird aber eventuell bei Interesse (und Erfahrung) auch angeboten. | ||
− | + | === Hilfreiche Vorlesungen: === | |
* [http://www.hochschule-trier.de/index.php?id=14216 Künstliche Intelligenz für Spiele] | * [http://www.hochschule-trier.de/index.php?id=14216 Künstliche Intelligenz für Spiele] | ||
* [http://www.hochschule-trier.de/index.php?id=6879 Datenstrukturen und Algorithmen] | * [http://www.hochschule-trier.de/index.php?id=6879 Datenstrukturen und Algorithmen] | ||
+ | |||
+ | [[Kategorie:GameDevWeek]] |
Aktuelle Version vom 8. März 2015, 23:14 Uhr
Genaue Beschreibungen zu den Themen sind im Bereich Programmierung zu finden, hier geht es lediglich um die Anwendbarkeit im Fachseminar.
Inhaltsverzeichnis
Allgemeines
In jedem Themengebiet haben wir hilfreiche Vorlesungen aufgelistet. Wenn diese nicht belegt (oder verstanden) wurden, muss das notwendige Wissen zusätzlich zum eigentlichen Thema erarbeitet werden. Je nach Themengebiet ist das eine Menge Arbeit, es wird also empfohlen die Themen nur dann zu wählen, wenn das Wissen der jeweiligen Vorlesungen schon großteils vorhanden ist.
Generell ist jedes Modul hilfreich, das praktische Aufgaben zu dem Thema erfordert, wie z.B. Projekte, GBO, Tool & Plugin, etc..
User-Interface
Besonders Anfängern zu empfehlen, da man sich auch ohne Vorkenntnisse einarbeiten kann und langsamer Fortschritt andere Teams nicht zu sehr aus bremst. Das Thema beinhaltet Menü und HUD Entwicklung mittels libGDX Scene2D.UI.
Hilfreiche Vorlesungen:
Allgemeine Recherche:
- Umgehen mit verschiedenen Auflösungen (Responsive Design)
- Benutzung von LibGDX Scene2D.
Vorschläge für Spezialgebiete:
- Eingabeverfahren (Maus, Keyboard, Gamepad, Touchscreen) für Navigation Texteingabe.
- Sehr Komplexe UI’s (z.B. bei RPGs) / Mögliche Lösungswege
- Schriftarten zeichnen (Kerning, Outlining, Schatten) und Spezielle Zeichenmethoden (z.B. Signed Distance Field oder Alpha Tested Magnification.. beides von Valve).
Gamelogik
Für dieses Thema ist etwas Erfahrung besonders für Aufbau und Herangehensweise hilfreich.
Hilfreiche Vorlesungen:
- Grafische Benutzeroberflächen (Klassen, Listener Pattern, MVC)
- Lineare Algebra (Vektoren)
Allgemeine Recherche:
- Game Engine Grundgerüst + Main Loop.
Vorschläge für Spezialgebiete:
- Entity Component System vs Vererbung
- + Lifecycle Management: Speicher vs CPU
- Scripted Events (In Game Movies, Kamerafahrten, etc.)
- Input: QuickTime Events, Buttoncombos, Navigation, etc intuitiv gestalten.
- Abhängigkeitsmodelle (z.B. Point & Click, Trigger, Puzzle, etc.)
- In Place loading Verfahren (ohne Ladescreen weitere Levelteile laden) und Asset Preprocessing.
Physik
Sicherer Umgang mit der Programmiersprache erforderlich. Da dies oft ein essentieller Part des Spiels ist und früh benötigt wird, sollte man zügig Programmieren können.
Hilfreiche Vorlesungen:
- Lineare Algebra (Vektoren)
- Spieleprogrammierung
Allgemeine Recherche:
- 2D Physik mit Box2D
Vorschläge für Spezialgebiete:
- Probleme in der Hochgeschwindigkeitsphysik
- Fluid Simulation
- Swept Collision Detection
- Joints & Constraints
Rendering
Dieses Thema erfordert etwas Erfahrung im Bereich Computergrafik. Es beinhaltet das Rendern der Welt, Items, Partikeleffekte, Animationen, etc.
Hilfreiche Vorlesungen:
Allgemeine Recherche:
- Keine, da die Spezialgebiete umfangreich genug sind.
Vorschläge für Spezialgebiete:
- Qualität:
- Partikelsysteme
- Spezialeffekte (Blur, etc.)
- Fog of War
- Cell Shading
- etc.
- Quantität:
- Effizientes Rendern
- Tiled Map Rendering
- Texture Packing
- Rendering Reihenfolge
- etc.
Netzwerk
Das wohl schwierigste Thema und es steht nur dann zur Auswahl, wenn auch ein Netzwerkspiel entwickelt wird. Hierfür ist Vorwissen im Bereich Thread-Safety und Netzwerkkommunikation wichtig und sicherer Umgang mit der Programmiersprache ist unumgänglich.
Hilfreiche Vorlesungen:
Allgemeine Recherche:
- Synchronisation von Daten in Spielen
Vorschläge für Spezialgebiete:
- UDP NAT Punch Through (Hole Punching)
- Datenvolumen:
- Große Datenmengen managen
- Datenvolumen begrenzen
- Deltakompression
- etc.
- Zeitverzögerung:
- Level of Detail im Netzwerk
- Lag Compensation
- Prediction
- etc.
Künstliche Intelligenz
Dies Thema ist zur Zeit noch nicht in der Auswahl, wird aber eventuell bei Interesse (und Erfahrung) auch angeboten.