Präsentation herunterladen
Veröffentlicht von:Hiltrud Drath Geändert vor über 11 Jahren
1
Visualisierung eines Sultan Han auf Basis einer Gameengine
Softwarepraktikum für Anfänger Universität Heidelberg WS 07/08 Praktikumsleiter: Dr. Michael J. Winckler Datum: Katarina Boland
2
Aufgabenstellung Darstellung von 3D Tempelmodellen mit Game Engine
Auswahl einer Engine Test und Evaluation: Darstellen einer Szene mit Tempel, natürlicher Umgebung & Musik Tutorial Webseite
3
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Ausblick Bewertung
4
Vergleich von Game Engines
Vorauswahl auf Grundlage der DevMaster.net 3D Engines Datenbank, Wikipedia und anderem Weitere Informationen durch Beispielprogramme, Webseite o.Ä. Vergleich der Favoriten hinsichtlich ihrer Features 284 Engines in Datenbank
5
Vergleich von Game Engines
Webseite 284 Engines in Datenbank
6
Vergleich von Game Engines - Kriterien
Engine mit umfassender Funktionalität im Grafikbereich laufende Entwicklung / support Portabilität gute Dokumentation möglichst freie Lizenz Bedienbarkeit Wahl fiel daher auf die Irrlicht Engine 284 Engines in Datenbank
7
Inhalt Game Engines im Vergleich Irrlicht Engine Projektumsetzung
Einleitung Merkmale Tool set Projektumsetzung Ausblick Bewertung
8
Irrlicht - Einleitung Gründung: 2002 von Nikolaus Gebhardt
bis ca alleiniger Entwickler mittlerweile Team aus 9 Personen ...und viele Freiwillige Open-source „Freizeitprojekt“
9
Inhalt Game Engines im Vergleich Irrlicht Engine Projektumsetzung
Einleitung Merkmale Tool set Projektumsetzung Ausblick Bewertung
10
Irrlicht - Merkmale SDK Szenengraph
root Auto Räder Licht ... SDK Szenengraph unterstützt OpenGL, Direct3D 8, Direct3D 9, Irrlicht Engine Software Renderer, Burning‘s Software Renderer reine Grafikengine, (fast) keine Physik Objektorientiert, C++
11
Irrlicht - Merkmale Aufbau: 6 Namespaces irr: alles
irr::core: Grundlegende Klassen, z.B. Vektoren irr::gui: Klassen für die GUI-Erstellung irr::io: input-output Interfaces irr::scene: Szenenverwaltung, z.B. Laden von Meshes ir::video: Zugriff auf Videotreiber, rendering
12
Inhalt Game Engines im Vergleich Irrlicht Engine Projektumsetzung
Einleitung Merkmale Tool set Projektumsetzung Ausblick Bewertung
13
Irrlicht – Tool set IrrKlang IrrEdit IrrXML 2D & 3D Soundengine
3D world editor und radiosity lightmap Generator IrrXML XML Parser für C++
14
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Demo Terrain Himmel Tempel Licht Kamera Kollisionsdetektion Musik Gras Bäume Webseite Ausblick Bewertung
15
Projektumsetzung Demo
16
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Demo Terrain Himmel Tempel Licht Kamera Kollisionsdetektion Musik Gras Bäume Webseite Ausblick Bewertung
17
Projektumsetzung: Terrain
Heightmap based terrain GeoMipMap LOD
18
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Demo Terrain Himmel Tempel Licht Kamera Kollisionsdetektion Musik Gras Bäume Webseite Ausblick Bewertung
19
Projektumsetzung: Himmel
im Projekt: Skybox Skydome möglich
20
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Demo Terrain Himmel Tempel Licht Kamera Kollisionsdetektion Musik Gras Bäume Webseite Ausblick Bewertung
21
Projektumsetzung: Tempel
Format: .obj nicht alle Formate gleich gut unterstützt collada unbenutzbar b3d und ms3d beste Unterstützung octree verfügbar
22
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Demo Terrain Himmel Tempel Licht Kamera Kollisionsdetektion Musik Gras Bäume Webseite Ausblick Bewertung
23
Projektumsetzung: Licht
Lichtquellen in Irrlicht: ambient directional spot Standard: spot light
24
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Demo Terrain Himmel Tempel Licht Kamera Kollisionsdetektion Musik Gras Bäume Webseite Ausblick Bewertung
25
Projektumsetzung: Kamera
Kameratypen in Irrlicht: FPS Maya Keymap zur Tastenbelegung
26
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Demo Terrain Himmel Tempel Licht Kamera Kollisionsdetektion Musik Gras Bäume Webseite Ausblick Bewertung
27
Projektumsetzung: Kollision
triangle selector (auch für octree) collision response animator Treppensteigen funktioniert automatisch Kollisionsdetektion ist rudimentär – Steckenbleiben im Terrain
28
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Demo Terrain Himmel Tempel Licht Kamera Kollisionsdetektion Musik Gras Bäume Webseite Ausblick Bewertung
29
Projektumsetzung: Musik
IrrKlang
30
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Demo Terrain Himmel Tempel Licht Kamera Kollisionsdetektion Musik Gras Bäume Webseite Ausblick Bewertung
31
Projektumsetzung: Gras
nicht im Irrlicht SDK enthalten Grass Node v0.3.2 von G. Davidson 02/06 Dokumentation Prototyp: Fläche auf feste Größe begrenzt Grasgenerierung ineffizient, tile manager muss noch implementiert werden
32
Projektumsetzung: Gras
billboard Grasbüschel als Partikel Höhe des Grases: Grassmap Farbe des Grases: Colormap Grasbüschel sind Teil von Flicken ein Knoten pro Flicken Gras wird von Wind beeinflusst
33
Projektumsetzung: Gras
Vergleich der FPS – mit / ohne Gras
34
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Demo Terrain Himmel Tempel Licht Kamera Kollisionsdetektion Musik Gras Bäume Webseite Ausblick Bewertung
35
Projektumsetzung: Bäume
auch nicht im SDK enthalten Tree Scene Node von Asger Feldthaus keine Dokumentation
36
Projektumsetzung: Bäume
Baumdesigns werden in XML-Dateien gespeichert pseudo-zufällige Abänderung der Bäume Blätter sind Gruppen von Billboards 4 Designs mit Texturen bereitgestellt Shader enthalten Bäume haben 3 LODs sehr effizient LODs: billboard, reduzierte Astanzahl, Originalbaum
37
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Demo Terrain Himmel Tempel Licht Kamera Kollisionsdetektion Musik Gras Bäume Webseite Ausblick Bewertung
38
Projektumsetzung: Webseite
LODs: billboard, reduzierte Astanzahl, Originalbaum
39
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Ausblick Bewertung
40
Ausblick viele Möglichkeiten zur Verbesserung des Prototyps Gras:
Anpassen an Größe des Terrains tile-manager Positionierung: Gras scheint durch Objekte -> prozedural, prüfen ob Objekt vorhanden Grassmap automatisch ändern „hidden grass removal“ – verdecktes Gras nicht rendern unterschiedliche Grasbüschel
41
Ausblick viele Möglichkeiten zur Verbesserung des Prototyps Bäume:
Shader vermutlich fehlerhaft Verwendung von L-Systemen Wind Generierung von Wäldern schwierig wegen Positionierung – Waldgenerator für Flächen (oder auch vegetation map) Vereinfachung wünschenswert shader: auf manchen systemen werden die blätter nicht richtig dargestellt (haben falsche texturen)
42
Ausblick viele Möglichkeiten zur Verbesserung des Prototyps Terrain:
Verwendung von prozeduralen Texturen Anpassen von Textur und Gras (Boden braun, in der Ferne ohne Gras grün...) Simulation endlosen Terrains
43
Ausblick viele Möglichkeiten zur Verbesserung des Prototyps
Generierung von Landschaften: fraktaler Landschaftsgenerator Integration von Geo-Info-Daten Zusätzliche Effekte: Wolken (plugin vorhanden) Lensflare (plugin vorhanden) ...
44
Inhalt Vergleich von Game Engines Irrlicht Engine Projektumsetzung
Ausblick Bewertung
45
Bewertung - Irrlicht sehr strukturiert, dadurch gut zu bedienen
Grundfunktionen einfach außerhalb grundlegender Funktionen muss vieles selbst implementiert werden Plugins oft schlecht dokumentiert und prototypisch Entwicklung eigener Knotentypen u.Ä. recht einfach
46
Bewertung – Irrlicht: Fazit
gut geeignet wenn man... die Funktionsweise von Game Engines und den benutzten Plugins verstehen will eigene Implementationen integrieren möchte weniger gut geeignet.... wenn man fertige Lösungen und umfassende Funktionalität möchte
47
Danke für eure Aufmerksamkeit
Ähnliche Präsentationen
© 2025 SlidePlayer.org Inc.
All rights reserved.