Terrains Rendering by Marching Cubes Algorithm
Autor: | Bajlo, Danijel |
---|---|
Přispěvatelé: | Mihajlović, Željka |
Jazyk: | chorvatština |
Rok vydání: | 2020 |
Předmět: | |
Popis: | Ovaj završni rad opisuje postupak proceduralnog generiranja terena u programskom alatu Unity. Kao osnovni primjer korišten je teren određen visinskom mapom. Za dodavanje detalja terenu korišten je veći broj oktava šuma. Opisan je način dobivanja trodimenzionalnog šuma od dvodimenzionalnog, u svrhu generiranja terena s konkavnim strukturama. Takav teren prikazan je na dva načina: volumnim elementima i algoritmom pokretne kocke. Izgled terena je poboljšan korištenjem glatkog sjenčanja i izradom triplanarnog sjenčara. Dodavanje i uklanjanje dijelova terena omogućeno je izradom jednostavnog uređivača terena. Algoritam pokretne kocke implementiran je na grafičkoj kartici koristeći sjenčare računanja. Provedena su mjerenja trajanja postupka generiranja visinske mape paralelnom i slijednom implementacijom. Nad dobivenim vremenima provedena je usporedba. This thesis describes the process of procedural terrain generation in the game engine Unity. A terrain defined by a heightmap was used as a base example. Greater number of octaves were used for adding details to the terrain. A method of creating 3D noise from 2D noise was shown for the purpose of generating terrain with concave structures. Such a terrain was rendered in two way: using voxels and using the marching cubes algorithm. The appearance of the terrain was improved using smooth shading and a triplanar shader. Removing and adding parts of terrain was achieved by writing a simple terrain editor. The marching cubes algorithm was implemented on the graphics card using a compute shader. Measurements of heightmap generation times were carried out on both parallel and sequential implementations. A comparison was made on the resulting times. |
Databáze: | OpenAIRE |
Externí odkaz: |