anegostudios / vsmodelcreator

Vintage Story Model Creator
Other
69 stars 16 forks source link

UV rounding #45

Closed tenabraex closed 5 years ago

tenabraex commented 5 years ago

Please implement UV rounding. Often importing models (particularly voxel models) ends up with UVs on the .25 or .75 line (sometimes really odd things like .88 as well, dont even know how that happens) ESPECIALLY if the element itself is offset.

I assume the modeller is deriving the auto UVs from the elements x/y/z (or position in world space) rather than treating the UVs strictly as they relate to the element. This is both good and bad, nice that they're roughly in the right world space, but awful in that can lead to this issue of arbitrary seeming UVs.

I would suggest the best of both world would be to put in a universal toggle for 'restrict UVs to 0.5 increments' or a button on the face UV interface to 'reset to 0,0' or similar preferably with a shift-click option to do the whole element at once.

I would estimate putting in a universal reset to 0,0 or restrict to 0.5 would save me time in hours per model on complex models where I am otherwise manually typing 0, 0, 0, 0, over and over on each face to reset them.

tyronx commented 5 years ago

Can you upload one of those problematic models here plix

tenabraex commented 5 years ago

https://youtu.be/LNUbjefF9f8

I didn't mention Snap UV, but snap seems to snap it to what it currently is, not to .5/1 so with these if you move them they'll stay at .24 / .74

I also didn't really demo auto UV in the video but there are a few that don't have auto UV, if you select them and click in the UV you'll see it just expands from where it is, it doesn't actually make a new UV based on the elements position which may be the ultimate issue.

sample.zip

tyronx commented 5 years ago

Thanks for the video, so do I understand it correctly that these were exported from Cubik Studio already with strange non 0.25-interval UVs, right?

tenabraex commented 5 years ago

So when you bring something in through whatever conversion from voxel to JSON that you use, things are normally mapped per colour in the voxel app, IE they're just mapped to a 0.5x0.5 block somewhere that would correspond to a colour in the palette.

When you click on the relevant face in VS modeller it will then 'auto-UV' the actual face you've clicked on so it's the right size. I don't think it moves them at all, it just expands them to the right size in place.

I think in the sample file I sent you some of the faces in the pyramid on the right should demonstrate this (the stuff I clicked in the video I obviously already triggered auto-UV on).

tl;dr yeah I think they're coming in with bad intervals (ideally we want 0.5 intervals) and the current SnapUV keeps them snapped to their bad interval, it doesn't snap them to .05s relative to the UV grid.

On Fri, Mar 8, 2019 at 9:52 PM Tyron Madlener notifications@github.com wrote:

Thanks for the video, so do I understand it correctly that these were exported from Cubik Studio already with strange non 0.25-interval UVs, right?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/anegostudios/vsmodelcreator/issues/45#issuecomment-470888230, or mute the thread https://github.com/notifications/unsubscribe-auth/AtNc9FFI3qFkPhfNZgGG-Sp3Qv1QgHC4ks5vUkEHgaJpZM4bbdnW .

tenabraex commented 5 years ago

Has been added