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 virtualpatt2000.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 virtualpatt2000.de Internetauftritt

4 virtualpatt2000.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 virtualpatt2000.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 virtualpatt2000.de VirtualPatt 2000

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

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

9 virtualpatt2000.de Modelling

10 virtualpatt2000.de Modelling

11 virtualpatt2000.de Modelling

12 virtualpatt2000.de Modelling

13 virtualpatt2000.de Modelling

14 virtualpatt2000.de Schachlogik Schachfeld in 12x10 Darstellung Schachfeld in 12x10 Darstellung

15 virtualpatt2000.de Schachlogik Zugvalidierung Zugvalidierung

16 virtualpatt2000.de Schachlogik Zugvalidierung Zugvalidierung

17 virtualpatt2000.de Schachlogik Zugvalidierung Zugvalidierung

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

19 virtualpatt2000.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 virtualpatt2000.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 virtualpatt2000.de Animationen/Effekte Animationen Animationen Falltür Falltür Rakete Rakete wegbröckelnder Boden wegbröckelnder Boden Amboß Amboß Fahrstuhl Fahrstuhl

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

23 virtualpatt2000.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 virtualpatt2000.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 virtualpatt2000.de Sound Plattformunabhängig LGPL C Viel genutzt Anlehnung an OpenGL

26 virtualpatt2000.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 virtualpatt2000.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 virtualpatt2000.de Framework Szenegraf Szenegraf Chess Control BackgroundBoard Field 1Field 120 Animation Figure...

29 virtualpatt2000.de VirtualPatt 2000 Demonstration

30 virtualpatt2000.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