Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

Version 7 (modified by patrick, 18 years ago) (diff)

Semesterarbeit: Wissenschaftlicher Kontext

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

Open Source Arbeitesumgebung

  • Programmierung einer Projektwebseite fuer Orxonox in HTML/PHP
  • Einfuehrung eines WIKIs mit Dokumentation fuer alle Programmierer
  • Verwendung des Projektmanagement tools: SVN
  • Konsequente Dokumentation des source codes mittels Doxygen

Programmiertechnische Umgebung

  • Erlernen der zugrundeliegenden Libraries: SDL, OpenGL, OpenGL Extensions, 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

Programmatisch 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 werden: laden von Spiel welten
  • 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), Particle Systems mit Billboarding, Fog Effects, Billboards
  • Sound: Implementierung einer SoundEngine zur Verwaltung von Channels, Buffers und Sourcen

Moegliche Arbeiten fuer Semesterarbeit

  • Artificial Intelligence von NPCs
  • Object-ConcaveBody Collision Detection
  • Design und Implementierung einer OpenGL Graphical User Interface Library fuer Orxonox (GUI)
  • Design und Implementierung eines Scripting Interfaces (evt. Suche nach einem identischen Open Source Projekt)
  • Erweiterung des Network Moduls von Orxonox: HTTP/Telnet status Interface,