Details

Uporaba 3D računalniške grafike v spletni aplikaciji
ID Černilogar, Gal (Author), ID Gabrijelčič Tomc, Helena (Mentor) More about this mentor... This link opens in a new window, ID Weingerl, Primož (Comentor)

.pdfPDF - Presentation file, Download (8,56 MB)
MD5: 62553627847DBC0764035E0F00AA2FDA

Abstract
S tem diplomskim delom je bilo raziskovano vprašanje, kako uporabiti tridimenzionalno (angl. three-dimensional; krajše 3D) računalniško grafiko za izdelavo spletne aplikacije. Cilja sta bila izdelati 3D spletno aplikacijo z uporabo standardnih spletnih tehnologij in 3D orodij ter preizkusiti učinkovitost delovanja njenih različic. Za temo vsebine je bilo, po izbiri avtorja in zaradi enostavnosti modeliranja, izbrano naše Osončje. Predvidevano je bilo, da je uporaba orodij za izdelavo 3D modelov in njihova implementacija v spletno aplikacijo lažja v primerjavi z njihovim neposrednim programiranjem, da pa slednje nudi boljšo učinkovitost delovanja. Med definiranjem ciljev in vsebine ter načrtovanjem informacijske arhitekture, postavitve strani in 3D vsebine se je uporabil tablični računalnik iPad Pro z digitalnim pisalom Apple Pencil in aplikacijo za zapiske Apple Notes. Razvoj 3D aplikacije se je začel na prenosnem računalniku Lenovo Yoga 530 in nadaljeval na MacBook Pro, s sprotno uporabo iPad Pro in pametnega telefona Huawei P20 za ogledovanje aplikacije. Za razvoj se je uporabil Git sistem za nadzor različic in GitHub platforma za gostovanje Git repozitorija in spletnega mesta. Razvijalo se je v okolju Visual Studio Code, z razvijalskimi orodji Node.js in njegovim upravljalnikom paketov, ESLint in Vite. Preizkušalo pa se je v spletnih brskalnikih Chrome, Firefox in Safari. Spletna stran je bila izdelana s standardnimi spletnimi tehnologijami, 3D del aplikacije pa v veliki meri s pomočjo JavaScript knjižnice three.js. Izdelani so bili modeli Sonca, zvezdnatega ozadja, planetov in Lune ter animacije glede na čas, drsenje, položaj kazalca in orientacijo naprave. Model Sonca je bil izdelan z uporabo senčilnikov, ostali pa z vgrajenimi three.js materiali in uporabo tekstur. Za namen preizkušanja učinkovitosti delovanja so bili v programu Blender izdelani tudi modeli planetov ter Lune in z njimi dve dodatni različici aplikacije, ki uporabljata fizični upodabljalni delokrog. Za preizkušanje učinkovitosti delovanja izdelane aplikacije in njenih različic so se preizkušali: čas upodabljanja sličic, količina dodeljenega pomnilnika in velikosti končnih datotek. Preizkušanje je potekalo na prenosnem računalniku MacBook Pro in pametnem telefonu Huawei P20, v brskalniku Chrome s pomočjo Chrome orodij za razvijalce in nekaj po meri napisanih skript za lažjo ekstrakcijo in manipulacijo pridobljenih podatkov. Tako je bila, v treh različicah, izdelana statična spletna aplikacija z delom, ki implementira 3D računalniško grafiko na temo našega Osončja. Izkazalo se je, da je izdelava 3D modelov enostavnejša v programu Blender in da njihovo neposredno programiranje nudi več možnosti in svobode. Rezultati preizkušanja učinkovitosti delovanja pa so pokazali, da je, pri primerjavi različic aplikacije s fizičnim upodabljalnim delokrogom, neposredno programiranje učinkovitejše v času upodabljanja sličic in velikosti končnih datotek, toda manj učinkovito glede na količino dodeljenega pomnilnika od različice z Blender modeli. Nezanemarljiva ugotovitev je tudi, da je sama možnost drugačnih pristopov osnovne različice aplikacije, ki jih ponuja neposredno programiranje, lahko zelo pomembna za učinkovitost delovanja.

Language:Slovenian
Keywords:3D računalniška grafika, spletna aplikacija, three.js, 3D modeliranje, 3D animacija, senčilniki
Work type:Bachelor thesis/paper
Organization:NTF - Faculty of Natural Sciences and Engineering
Year:2025
PID:20.500.12556/RUL-172795 This link opens in a new window
Publication date in RUL:11.09.2025
Views:153
Downloads:30
Metadata:XML DC-XML DC-RDF
:
Copy citation
Share:Bookmark and Share

Secondary language

Language:English
Title:Use of 3D computer graphics in a web application
Abstract:
With this diploma thesis, the question of how to use three-dimensional (3D) computer graphics for the creation of a web application was explored. The goals were creating a 3D web application with the use of standard web technologies and 3D tools, and to test the performance of its versions. The topic of the content was chosen by the author with the intent of ease of modelling and was chosen to be our Solar System. It was assumed that the use of tools for creating 3D models and their implementation into the web application is easier than their direct programming, but the latter offers better performance. During the definition of goals and content, and the design of information architecture, page layout and 3D content, an iPad Pro tablet computer with an Apple Pencil digital pen and the Apple Notes note-taking application were used. The development of the 3D application began on a Lenovo Yoga 530 laptop computer and continued on a MacBook Pro with the simultaneous use of the iPad Pro and a Huawei P20 smartphone for viewing the application. For development, the Git revision control system was used alongside the GitHub platform for hosting the Git repository and the website. Development was done in the Visual Studio Code environment, together with Node.js and its package manager, ESLint and Vite development tools, while the testing was done in the Chrome, Firefox and Safari web browsers. The webpage was created with standard web technologies, while the 3D part of the application largely with the help of the three.js JavaScript library. Models of the Sun, starry background, the planets and the Moon were created, as well as time, scroll, cursor position and device orientation-based animations. The Sun model was created using shaders, while the rest were created using the built-in three.js materials and the use of textures. For the purpose of testing the performance, models of the planets and the Moon were also created using Blender, together with two additional versions of the application that utilize physically based rendering. For the testing of the application and its versions, the frame rendering time, the amount of allocated memory and the final files' sizes were tested. Testing was done in the Chrome browser on the MacBook Pro laptop and the Huawei P20 smartphone with the help of the Chrome developer tools and a few custom scripts for easier data extraction and manipulation. Thus, a static web application was created in three versions, with a part that implements 3D computer graphics, on the topic of our Solar System. It turned out that the creation of 3D models is easier in Blender, and that their direct programming offers more possibilities and freedom. The results of the performance testing show that, comparing the physically based rendering versions of the application, the directly programmed one was more efficient in frame rendering time and by final files' sizes, but less efficient by amount of allocated memory than the Blender models version. It is also worth noting that the very possibility of different approaches in the main version of the application, offered by direct programming, can be of great significance for performance.

Keywords:3D computer graphics, web application, three.js, 3D modelling, 3D animation, shaders

Similar documents

Similar works from RUL:
Similar works from other Slovenian collections:

Back