This report studies impostor rendering for use with the virtual reality head mounted display Oculus Rift. The technique is replacing 3D models with 2D versions to speed up rendering, in a 3D engine. It documents the process of developing a prototype in C++ and DirectX11 and the required research needed to complete the assignment. Included in this report are also the steps involved in getting Oculus Rift support to work in a custom 3D engine and measuring the impact of impostor rendering when rendering to two screens of the head mounted display. The goal was to find the maximum models the engine could draw, while keeping the frame rate locked at 60 frames per second. 2 testers at Nordicstation came to the conclusion that 40-50 meters was the optimal distance for impostor rendering. Any closer and the flatness was noticeable. The results showed a clear improvement in frame rate when rendering a graphically intensive scene. The end result showed that the goal could be achieved at a maximum of 3000 trees with 1000 leaves. Impostor rendering was deemed effective when drawing beyond 500 trees at a time. Less than that and the technique was not needed to achieve 60 frames per second. / Denna rapport undersöker renderingstekniken impostors när den används i en simpel 3D motor tillsammans med virtuella verklighetshjälmen Oculus Rift. Impostors betyder på engelska bedragare och tekniken går ut på att den byter ut avancerade 3D modeller mot simpla 2D versioner när de är ett visst avstånd ifrån användarens virtuella kamera. Om den är korrekt implementerad ska användaren inte märka att vissa modeller är platta och tekniken sparar på resurser då grafikmotorn inte behöver rita ut alla modeller. Rapporten går igenom vad som undersöktes i förundersökningen för att kunna utveckla en prototyp med utvecklingspråket C++ och DirectX 11. I rapporten står även hur prototypen utvecklades och hur stöd för Oculus Rift lades till. De slutliga resultaten visade att impostors hade en stor påverkan på uppdateringshastigheten när antalet 3D modeller som skulle ritas var många, annars hade tekniken ingen påverkan för att nå 60 bilder per sekund. 2 testare från Nordicstation kom fram till att ett avstånd på 40-50 meter från spelarens kamera till utritning av impostors var lämplig, för att dölja att de endast är platta versioner av 3d modeller. Testet visade att motorn kunde rita ut 3000 träd, med 1000 löv på varje, och hålla 60 bilder per sekund, vilket var målet. Detta på ett avstånd av 40m på impostors. Impostorrendering var effektiv när man ritade ut fler än 500 träd åt gången. Mindre antal gav ingen märkbar effekt på testdatorn som användes för testet.
Identifer | oai:union.ndltd.org:UPSALLA1/oai:DiVA.org:kth-156881 |
Date | January 2014 |
Creators | Niemelä, Jimmy |
Publisher | KTH, Data- och elektroteknik |
Source Sets | DiVA Archive at Upsalla University |
Language | English |
Detected Language | Swedish |
Type | Student thesis, info:eu-repo/semantics/bachelorThesis, text |
Format | application/pdf |
Rights | info:eu-repo/semantics/openAccess |
Relation | TRITA-STH ; 2014:114 |
Page generated in 0.0018 seconds