3D modellering og pathfinding i Java: 3D Modeling and Pathfinding in Java

Kasper Søfren, Martin Knudsholt, Lasse Ronnenberg & Steffen Thorlund

Studenteropgave: Semesterprojekt

Abstrakt

English: This project explores the performance of Java3D through a large 3D‐model and the possibility of running this model with a pathfinding algorithm from an Internet browser. To do this a 3D‐model was created in Google SketchUp, exported to an OBJ file format, and loaded into Java3D. In addition, a pathfinding algorithm based on Dijkstra’s Algorithm was implemented in Java and joined with the 3D‐model to generate a virtual guided tour through the model. The campus area of Roskilde University was chosen for the 3D‐model, with certain limitations such as flora and the interior of the buildings. The models are based on original blueprints and textures made from photos to create realistic looking building models. The pathfinding algorithm used in the application was based solely on Dijkstra’s Algorithm. A different pathfinding algorithm, based on a variety of standard algorithms, was also implemented for educational reasons and thus included in this report. A running application including both the 3D‐model and the path finding algorithm was implemented, although certain limitations had to be accepted due to the options available in Java, Java3D and Google SketchUp. The system requirements of the final version of the application proved higher than anticipated, but within acceptable limits. Dansk: I dette projekt undersøges det hvordan Java3D håndterer en stor 3D‐model, samt muligheden for at køre denne model i samspil med en pathfinding‐algoritme gennem en Internet browser. En 3D‐model blev derfor udfærdiget i Google SketchUp, eksporteret til OBJ‐filformatet, og hentet ind i Java3D. Endvidere blev en pathfinding‐algoritme, baseret på Dijkstra’s algoritme, implementeret i Java og sammensat med 3D‐modellen, for at generere en virtuel guidet tur gennem denne. Campusområdet på Roskilde Universitet (RUC) blev valgt som model, dog med visse begrænsninger, så som flora og bygningsinteriør. Bygningsmodellerne er baseret på originale byggeplaner, og textures er lavet ud fra fotografier, for at skabe realistisk udseende bygningsmodeller. Pathfinding‐algoritmen, der anvendes i applikationen, er udelukkende baseret på Dijkstra’s algoritme. Desuden blev en anden pathfinding‐algoritme, baseret på forskellige andre standardalgoritmer, udarbejdet og implementeret for studiets skyld, hvorfor den er inkluderet i denne rapport. En fungerende applikation indeholdende 3D‐modellen og pathfinding‐algoritmen blev implementeret. Dog måtte visse begrænsninger i Java, Java3D og Google SketchUp accepteres. Den endelige version af applikationen havde højere systemkrav en forventet, dog indenfor acceptable rammer.

UddannelserBasis - Naturvidenskabelig Bacheloruddannelse, (Bachelor uddannelse) Basis
SprogDansk
Udgivelsesdato18 jun. 2009
VejledereTorben Braüner

Emneord

  • Algoritme
  • Vertex
  • modeling
  • 3D-modellering
  • Texture tile
  • 3D-modeling
  • Polygoner
  • Knude
  • Guided tour
  • Pathfinding
  • Edges
  • Grundplan
  • Textures
  • Dijkstra
  • Vertices
  • Pathfinder
  • 2D
  • Bygninger
  • OBJ
  • Google SketchUp
  • First person view
  • Face
  • Java3D performance
  • SketchUp
  • Java
  • RUC
  • Kort
  • Virtuel
  • Blueprint
  • Scene Graph
  • Java3D
  • Virtual
  • CD-ROM
  • Scene
  • Algorithm
  • Kanter
  • Wavefront
  • 3D
  • Roskilde universitet
  • RotPosPathInterpolator
  • Roskilde University
  • 3D environment
  • Bygningsplan
  • Viewpoint
  • Seamless
  • Map
  • 3D miljø