Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Version 12 (modified by simon, 18 years ago) (diff)

Semesterarbeit: Wissenschaftlicher Kontext

Diese Seite ist eine Zusammenstellung des "Wissenschaftlichen Kontextes" einer Orxonox PPS Semesterarbeit.

Open Source Arbeitsumgebung

  • Programmierung einer Projektwebseite fuer Orxonox in HTML/PHP
  • Einfuehrung und Benutzung eines Wiki fuer alle Entwickler
  • Verwendung des Projektmanagement Tools: SVN/Subversion (ein Versionsserver)
  • Konsequente Dokumentation des Source Codes mittels Doxygen

Programmiertechnische Umgebung

  • Erlernen der zugrundeliegenden Libraries: SDL, OpenGL, OpenGL Extensions, Graphics Shader Language, STL, OpenAL, FFmpeg
  • Objektorientiertes Programmieren mit Modellierung durch UML class/sequence graphs
  • Advanced C++ Programmierung (inkl. Templates und Makros)

Projektmanagement

  • Leitung eines Open Source Projektes ueber 2 Jahre
  • Organisation von Informationsevents zu Orxonox (Conventions)
  • Motivation von Mitprogrammierern
  • Projektplanug und Codedesign

PPS Kursleitung

  • Erstellung eines Orxonox Kurses fuer Studenten des D-ITET
  • Erstellung von Kursunterlagen
  • Fuehrung und Unterstuetzung der Studenten
  • Vorbereitung der Arbeiten und Hilfe bei Problemen

Programmiertechnisch adressierte Probleme

  • Object-Object Collision Detection Algorithm: OBB (Object aligned Bounding Boxes)
  • Spatial Terrain Separation Algorithm: Quadtree von beliebigen Vertex Soups
  • Loading Framework: Objekte koennen mittels XML files erstellt/geladen werden; gebraucht zum Laden von Spielwelten
  • Dynamisches Laden: Objekte mittels shared library und Factory erzeugen und verwenden
  • Dynamische Resource Allocation von Models, Texturen, Sounds und anderen Resourcen ueber einen Resource Manager
  • Grafisches: Laden von verschiedenen Modelarten (MD2, OBJ), Partikel System mit Billboarding, Fog Effects
  • Sound: Implementierung einer 3D-SoundEngine zur Verwaltung von Channels, Buffers und Sourcen

Moegliche Arbeiten fuer Semesterarbeit

  • Artificial Intelligence von NPCs
  • Object-ConcaveBody Collision Detection
  • Design und Implementierung einer Qt und OpenGL Graphical User Interface Library fuer Orxonox (GUI)
  • Erweiterung des Network Moduls von Orxonox: HTTP/Telnet status Interface