Liukuväriteksturointityötavan eteenpäinvienti Unity-pelimoottorissa
Kinnunen, Eero (2022)
Kinnunen, Eero
2022
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2022121429633
https://urn.fi/URN:NBN:fi:amk-2022121429633
Tiivistelmä
Opinnäytetyön tavoitteena oli kehittää työkalu teksturointiin pelimoottorin sisällä. Kehittämisessä huomioitiin työtapaan liittyviä haasteita ja ongelmia. Liukuväriteksturointi on ollut pinnalla sosiaalisessa mediassa kuten Twitterissä ja 3D-taiteen näyttösivulla Sketchfabissä.
Tässä opinnäytetyössä arvioitiin liukuväriteksturointitekniikan taustaa ja siihen liittyviä huomioita. Lisäksi käytiin läpi, miten kyseistä työtapaa lähdetään toteuttamaan, mitä siihen kuuluu, miten sitä voidaan hyödyntää ja miten sitä voidaan viedä eteenpäin. Tässä opinnäytetyössä sivuttiin myös työkalun luontia Unity-pelimoottorin sisällä ja gradienttityötapaan liittyvän työkalun tekemisen vaiheita.
Opinnäytetyön tuloksena on työkalu käytettäväksi gradienttiteksturointityötavan kanssa, joka jo tässä vaiheessa nopeuttaa työskentelyä huomattavasti. Johtopäätöksenä voidaan todeta, että työtavan kanssa työskentelyä voidaan todella ehostaa Unityn sisäisen työkalun avulla. The goal of this thesis was to develop a tool based on a specific texturing pipeline and extend the Unity game engine by implementing a plugin. The plugin was originally created with a school project in mind, but it extended afterwards into a free time and thesis project. The purpose of the plugin was to support the game’s texture pipeline inside Unity game engine.
The research part of this thesis is focused primarily on getting familiar with the Unity game engine’s features and tools, Unity’s C#, extending Unity Editor and developing a Unity plugin. Finishing a simple albedo version of the tool was followed by designing the various components for the plugin and agreeing on specific requirements of the plugin. The aim of the plugin was to have simple color arrays and to render them inside the game engine. These requirements were also set as an evaluable part to determine the success of the project. After the research, the project part was started by designing the various components of the plugin. After the design phase, the work moved into the implementation phase, where the plugin was implemented in the Unity game engine. The plugin was implemented with C# programming. As a result of this work, a plugin is designed to be the main plugin for the pipeline in the Unity game engine.
Tässä opinnäytetyössä arvioitiin liukuväriteksturointitekniikan taustaa ja siihen liittyviä huomioita. Lisäksi käytiin läpi, miten kyseistä työtapaa lähdetään toteuttamaan, mitä siihen kuuluu, miten sitä voidaan hyödyntää ja miten sitä voidaan viedä eteenpäin. Tässä opinnäytetyössä sivuttiin myös työkalun luontia Unity-pelimoottorin sisällä ja gradienttityötapaan liittyvän työkalun tekemisen vaiheita.
Opinnäytetyön tuloksena on työkalu käytettäväksi gradienttiteksturointityötavan kanssa, joka jo tässä vaiheessa nopeuttaa työskentelyä huomattavasti. Johtopäätöksenä voidaan todeta, että työtavan kanssa työskentelyä voidaan todella ehostaa Unityn sisäisen työkalun avulla.
The research part of this thesis is focused primarily on getting familiar with the Unity game engine’s features and tools, Unity’s C#, extending Unity Editor and developing a Unity plugin. Finishing a simple albedo version of the tool was followed by designing the various components for the plugin and agreeing on specific requirements of the plugin. The aim of the plugin was to have simple color arrays and to render them inside the game engine. These requirements were also set as an evaluable part to determine the success of the project. After the research, the project part was started by designing the various components of the plugin. After the design phase, the work moved into the implementation phase, where the plugin was implemented in the Unity game engine. The plugin was implemented with C# programming. As a result of this work, a plugin is designed to be the main plugin for the pipeline in the Unity game engine.