Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

VirtualPatt 2000 Interaktives 3D-Schachspiel unter Verwendung von C++ und OpenGL Präsentation von C. Steller, F. Caspar und C. Brähler.

Ähnliche Präsentationen


Präsentation zum Thema: "VirtualPatt 2000 Interaktives 3D-Schachspiel unter Verwendung von C++ und OpenGL Präsentation von C. Steller, F. Caspar und C. Brähler."—  Präsentation transkript:

1 VirtualPatt 2000 Interaktives 3D-Schachspiel unter Verwendung von C++ und OpenGL Präsentation von C. Steller, F. Caspar und C. Brähler

2 02.04.2015 2virtualpatt2000.de VirtualPatt 2000 Vorstellung des Projektes Vorstellung des Projektes OpenGL in der Anwendung OpenGL in der Anwendung besondere Herausforderungen besondere Herausforderungen Software-Engineering Software-Engineering Demonstration Demonstration

3 02.04.2015 3virtualpatt2000.de Internetauftritt

4 02.04.2015 4virtualpatt2000.de funktionale Projektziele 3D-Schachspiel mit GUI 3D-Schachspiel mit GUI Unterstützung einer KI-Logik Unterstützung einer KI-Logik zahlreiche Animationen zahlreiche Animationen Ausleuchtung / Lichteffekte Ausleuchtung / Lichteffekte Soundeffekte Soundeffekte

5 02.04.2015 5virtualpatt2000.de technische Projektziele Entwicklung in C++ Entwicklung in C++ saubere Abbildung im OO Paradigma saubere Abbildung im OO Paradigma Graph. Darstellung mit QT / OpenGL Graph. Darstellung mit QT / OpenGL Plattformunabhängigkeit Plattformunabhängigkeit Einbindung einer externen Schach-Engine Einbindung einer externen Schach-Engine

6 02.04.2015 6virtualpatt2000.de VirtualPatt 2000

7 02.04.2015 7virtualpatt2000.de Graphical User Interface Graphical User Interface C++ GUI library Plattformübergreifend Viel genutzt GPL (unter anderem) OpenGL-Unterstützung Gute Dokumentation

8 02.04.2015 8virtualpatt2000.de VirtualPatt 2000 GUI Menü OpenGL „Widget“ Textlabel Textfeld

9 02.04.2015 9virtualpatt2000.de Modelling

10 02.04.2015 10virtualpatt2000.de Modelling

11 02.04.2015 11virtualpatt2000.de Modelling

12 02.04.2015 12virtualpatt2000.de Modelling

13 02.04.2015 13virtualpatt2000.de Modelling

14 02.04.2015 14virtualpatt2000.de Schachlogik Schachfeld in 12x10 Darstellung Schachfeld in 12x10 Darstellung 0 21 98 119

15 02.04.2015 15virtualpatt2000.de Schachlogik Zugvalidierung Zugvalidierung 0 21 98 119

16 02.04.2015 16virtualpatt2000.de Schachlogik Zugvalidierung Zugvalidierung 0 21 98 119

17 02.04.2015 17virtualpatt2000.de Schachlogik Zugvalidierung Zugvalidierung 0 21 98 119

18 02.04.2015 18virtualpatt2000.de Schachlogik „Sonderfälle“ „Sonderfälle“ kurze Rochade kurze Rochade lange Rochade lange Rochade Bauernzug zu Beginn Bauernzug zu Beginn

19 02.04.2015 19virtualpatt2000.de Schachlogik Universal Chess Interface (UCI) Universal Chess Interface (UCI) offenes Protokoll offenes Protokoll regelt Kommunikation zwischen Engine GUI regelt Kommunikation zwischen Engine GUI z.B. in ChessBase, Fritz, Shredder, … z.B. in ChessBase, Fritz, Shredder, … Interprozeßkommunikation (IPC) Interprozeßkommunikation (IPC) kommunizieren mit fremden Threads kommunizieren mit fremden Threads möglich durch LibExecStream möglich durch LibExecStream

20 02.04.2015 20virtualpatt2000.de Schachlogik ShredderChess ShredderChess UCI-Unterstützung UCI-Unterstützung sehr starke Engine sehr starke Engine für Mac OS, Linux und Windows verfügbar für Mac OS, Linux und Windows verfügbar

21 02.04.2015 21virtualpatt2000.de Animationen/Effekte Animationen Animationen Falltür Falltür Rakete Rakete wegbröckelnder Boden wegbröckelnder Boden Amboß Amboß Fahrstuhl Fahrstuhl

22 02.04.2015 22virtualpatt2000.de Animationen/Effekte Effekte Effekte Teleportieren Teleportieren Spalten- / Felderausleuchten Spalten- / Felderausleuchten

23 02.04.2015 23virtualpatt2000.de Kamerafahrten Die Idee: Die Idee: aktives Kameraverhalten aktives Kameraverhalten dynamische Kamerafahrten dynamische Kamerafahrten Zusatzfahrten am Anfang und im Stand-By Zusatzfahrten am Anfang und im Stand-By

24 02.04.2015 24virtualpatt2000.de Kamerafahrten Die Umsetzung: Die Umsetzung: Implementierung der Kamera-Klasse Implementierung der Kamera-Klasse „idleCall“ setzt aktuelle Sicht „idleCall“ setzt aktuelle Sicht Klassen-Methoden starten neue Sicht-Mutation Klassen-Methoden starten neue Sicht-Mutation vollständige Kapselung vollständige Kapselung

25 02.04.2015 25virtualpatt2000.de Sound Plattformunabhängig LGPL C Viel genutzt Anlehnung an OpenGL

26 02.04.2015 26virtualpatt2000.de Framework Allgemeiner Überblick Allgemeiner Überblick komplett objektorientierter Aufbau komplett objektorientierter Aufbau 33 Klassen 33 Klassen 4 Pakete 4 Pakete 6000 Zeilen Code (mit Kommentaren) 6000 Zeilen Code (mit Kommentaren)

27 02.04.2015 27virtualpatt2000.de Framework Objektorientierter Aufbau Objektorientierter Aufbau Pakete GUI, Engine, Exceptions und Interfaces Pakete GUI, Engine, Exceptions und Interfaces Modularität Modularität Verwendung von Design Patterns Verwendung von Design Patterns Ablaufsteuerung der Komponenten Ablaufsteuerung der Komponenten Timer Timer Synchronisationsklasse Synchronisationsklasse

28 02.04.2015 28virtualpatt2000.de Framework Szenegraf Szenegraf Chess Control BackgroundBoard Field 1Field 120 Animation Figure...

29 02.04.2015 29virtualpatt2000.de VirtualPatt 2000 Demonstration

30 02.04.2015 30virtualpatt2000.de VirtualPatt 2000 Danke fürs Zuhören !


Herunterladen ppt "VirtualPatt 2000 Interaktives 3D-Schachspiel unter Verwendung von C++ und OpenGL Präsentation von C. Steller, F. Caspar und C. Brähler."

Ähnliche Präsentationen


Google-Anzeigen