string(175) "LC_CTYPE=C.UTF-8;LC_NUMERIC=en_US.utf8;LC_TIME=C;LC_COLLATE=C;LC_MONETARY=C;LC_MESSAGES=C;LC_PAPER=C;LC_NAME=C;LC_ADDRESS=C;LC_TELEPHONE=C;LC_MEASUREMENT=C;LC_IDENTIFICATION=C" string(27) "ProjectUVMapsEdgeChamfering" Arvutigraafika projekt - Kursused - Arvutiteaduse instituut
Arvutiteaduse instituut
  1. Kursused
  2. 2017/18 kevad
  3. Arvutigraafika projekt (MTAT.03.328)
EN
Logi sisse

Arvutigraafika projekt 2017/18 kevad

  • Main
  • Projects
  • Topics
  • Results and Schedule
  • Links

Creating new UV Maps after Edge Chamfering

Diana Algma

My master's thesis is 3D Edge Chamfering. After chamfering (also known as beveling) hard edges of a model, new faces are created. The model's UV map has to change and include also the new faces. If the model has a texture, it would have to look nice also on the new UV map and somehow be present on the new faces. This project will be creating new UV maps after the edge chamfering is done on the model.


Cube before and after chamfering

To do this, new and changed vertices would have to get new UV coordinates which will be done in Unity C# scripts. When new faces are created next to a UV seam, they should be added to the UV map in the right place so the textures could also fit nicely. That might mean, that the faces should all be added next to one other segment, but not randomly next to both. I tried to create a case in Blender where it did it randomly, but I couldn't. I have seen it though but don't know in what circumstances it happens. Below is part of a UV map showing the added bevel that is only on one part of the map, not on the other, which is what I want for my project.


UV map after creating new faces with bevel in Blender

To see the changes and the resulting UV map, I will create a way to view it inside Unity. This will be created as a sort of debug tool.

In the end, the UV map of the model that is chamfered should look nice and the texture it had before should be fitted well onto it.

Technologies

  • Unity
  • Blender

Foreseen difficulties

  • Textures - no idea how to handle it yet.
  • Making the map look nice in every case.
  • Everything will be done in a Unity C# script.
  • Using Blender for reference and model making to test everything.

Milestone 1 (02.03)

  • Research how UV maps are created/changed using Unity scripting
  • Try to modify an existing UV map in a Unity script

Progress

Created two cubes in Blender with the same texture, one without seams and one with seams.

Texture was the default Color Grid in Blender:

Resulting cubes:

Cubes after tweaking the UV coordinates in Unity (moving the coordinates 0.1 to 0.2 to left or right:

I also looked around and found a cool Unity asset UVee from the Asset Store, that should suit my needs and be better than I could ever create during this course myself. I will try it out instead of trying to create my own.

Milestone 2 (16.03)

  • Get UVee (or an alternative) working
  • Use it to visualize (and understand) what the current implementation of my chamferer does with the UV map
  • Arvutiteaduse instituut
  • Loodus- ja täppisteaduste valdkond
  • Tartu Ülikool
Tehniliste probleemide või küsimuste korral kirjuta:

Kursuse sisu ja korralduslike küsimustega pöörduge kursuse korraldajate poole.
Õppematerjalide varalised autoriõigused kuuluvad Tartu Ülikoolile. Õppematerjalide kasutamine on lubatud autoriõiguse seaduses ettenähtud teose vaba kasutamise eesmärkidel ja tingimustel. Õppematerjalide kasutamisel on kasutaja kohustatud viitama õppematerjalide autorile.
Õppematerjalide kasutamine muudel eesmärkidel on lubatud ainult Tartu Ülikooli eelneval kirjalikul nõusolekul.
Courses’i keskkonna kasutustingimused