Texture Problems. How can I export UVs OR use multiple texture tiles?

textures

(Tyson Gersh) #1

Basically I’m trying to put a brick layer that has no visible repetitions on this model: 252 Smith - 3D model by TysonGersh (@TysonGersh) - Sketchfab

I can’t for the life of me get the UVs to work properly in anything but SketchFab. I designed the brick material in Substance designer, which will generate a bunch of different tiles that are to be used to avoid repetitions. Is there a way to do this in SketchFab?

I followed this tutorial: https://tutorials.allegorithmic.com/courses/Creating-endless-textures-with-Substance-Designer-and-3DsMax/youtube-FuPQNIx3dh8

Ideally I’d like to just apply the texture in substance painter, but I can’t get the UVs on the model in SketchFab to appear in anything other than SketchFab. I’ve tried downloading the file from SketchFab as Dae and GLTF (and converting the GLTF into Dae via blender add on), but no matter what I do the exporting process seems to lose the UV data.



Any suggestions? I’ve already tried manually adding UVs and using Blenders auto add UV feature, but neither are working out. I’ve been working on this problem on and off for months and I’d really like to get past it.

Basically it just sizes the UV maps of each texture as if all the faces were on the same map(atlas)? and the sizing is super distorted.


(Tomatoheadstudio) #2

Can you tell us a little bit more about the workflow to make this? What software you use to model it? What steps you take to apply the material in Painter? It might help to solve this.
Checking “preserve brush strokes” and forgetting to bake the materials messes up some things in Substance. Besides that, what can happen is Painter might be choking on the account of multiples materials at high resolution (especially with multiples layers). How much RAM does your GPU have?
I also recommed always using the most updated Painter. Is solves a lot of problems.


(Tyson Gersh) #3

The model itself was made in SketchUp (SU).

The texture was made in Substance Designer (SD).

I ultimately want the model (w texture applied) to exist in SketchFab (SF).

I need to apply the texture to a portion of the model. Far as I can tell, I can do this in one of two ways:

Strategy 1: Apply the texture in Substance Painter (SP)

  • Background: SU does not naturally use UVs. There is no easy way to go from SU to SP.
    Steps Taken:
    S1.A: SU Export as .dae into Blender (Bl). Apply Smart UV Project. Export as .dae to SP.
    S1.B: SU Upload to SF. Download .dae. Open in SP
    S1.C SU Upload to SF. Download .gltf from SF. Open in SP
    S1.D SU Upload to SF. Download .gltf from SF. Open in BL (using the Krohnos add on). Export as .dae. Open in SP.
    Why it doesn’t work:
    S1.A: BL sizes the UV maps as if all maps must fit on the same atlas, so when you try to apply the texture, it’s 100x too large. There’s no way to shrink it without making the file infinitely too complicated and crashing the system. Even if you could get this to work, it’s an inefficient band-aid solution that would produce a workable model.

    S1.B: The .Dae model wont open up in SP. The following error codes are produced upon attempting:
    ----[Paint editor] Invalid scene, mesh ‘ID54’ has no UV coordinates
    ----[Viewer settings] Viewer settings have been updated from version 12 to version 13.
    ----[Scene 3D] Failed to compute tangents; need UV data in channel0
    ----[Scene 3D] Skipping one or more lines with the same contents
    ----[Paint Document] The project has been updated from version 45 to version 46.
    ----[Paint editor] Invalid scene, mesh ‘ID54’ has no UV coordinates
    S1.C: The .gltf file wont open in SP. The following error codes are received.
    ----[Paint editor] Invalid scene, mesh ‘Material3’ has no UV coordinates
    ----[Scene 3D] Failed to compute tangents; need UV data in channel0
    ----[Scene 3D] Skipping one or more lines with the same contents
    ----[Paint Document] The project has been updated from version 45 to version 46.
    ----[Paint editor] Invalid scene, mesh ‘Material3’ has no UV coordinates
    S1.D: Based on the visible UVs on the file in Bl (see photo), this route seems to work, but when trying to open the file in SP the following error codes are received
    ----[Paint editor] Invalid scene, mesh ‘Material3’ has no UV coordinates
    ----[Scene 3D] Failed to compute tangents; need UV data in channel0
    ----[Scene 3D] Skipping one or more lines with the same contents
    ----[Paint Document] The project has been updated from version 45 to version 46.
    ----[Paint editor] Invalid scene, mesh ‘Material3’ has no UV coordinates

Strategy 2: Apply the texture in SketchFab

  • Background: since you have to use a texture tile, you have to have multiple tiles (w slight variations of the pattern) to avoid repetitions
    In a nut shell, instead of having just this texture tile:

    you have multiple versions of it (that have edges that line up)
    Steps Taken:
    -------Model SU model upload to SF.
    -------Texture: SP to Substance Player (SPL) -> export bitmaps w multiple scenes as .tga -> apply .tga to material layer in SF
    Why it Doesn’t Work:
    S2.A: Can’t upload more than 1 texture tile. Repetitions are very obvious as seen in this screenshot:

Hopefully all of that makes sense. I just spent the last hour writing this response, so any follow up would be very much appreciated.


(Tomatoheadstudio) #4

Some things that maybe be happening:
Did you UV unwrap all the model at once? You should unwrap by material making an overlapping UV map.
Did you change the uv unwrap margins parameter when unwrapping? They seem super large in your screenshot.
Smart UV is great but it is not perfect. Plenty of times it is better to manually unwrap your model (but much more tiresome).

Sketchfab viewer is not very good at using some tricks other software have to avoid repetition using few textures (it is not meant to do that). You can try vertex painting to add another layer of information to your model and hopefully make it a little less repetitive. The only other way it is to use more materials, as far as I know.