New help with a texture issue

Please see video link below with a quick description of my problem.

https://www.youtube.com/watch?v=Y_psLnzzcRw

Thanks

Mack

Do those other objects have UV maps?

Not sure. It was an FBX imported from 3DCoat. How can I check? I am still new to Blender.

Thanks for your time.

In the Properties editor, Object Data Properties tab (the green triangle), there’s a UV Maps panel:
image

If those other objects have no UVs, this list will be empty for them. If that’s the case, you will need to UV unwrap the objects, or try using procedurally-generated texture coordinates in shader editor.

The UV list is empty. Is there a tutorial on how to unwrap the objects?

The female model has no UVs but the texture works on it.

It would be hard to diagnose without without a closer look on how those materials are set up. Perhaps you could paste one of those materials onto the sphere object, delete the other objects, do a File -> External Data -> Pack all into .blend, save a copy of the file and upload it? As a new user you won’t be able to upload here yet, but you can use an external resource such as pasteall.org/blend/ and post a link here.

In the Save As dialog you can click the cog icon at the top right and tick “Compress” there to reduce the file size.

Does this work?

Thanks for your help.

Almost :slight_smile: You haven’t packed the file so the image textures aren’t available in it. But that doesn’t matter now, I see the problem. It is indeed the UVs: the material is set up to work with those. Both objects have a UV map, however the lady is actually unwrapped while the sphere isn’t (so all of its UV coordinates are just zero).

Simple method to get around that would be, with the sphere object selected, in the shader editor unplug the UV from Mapping, and instead use either Generated or Object.

More involved method would be to actually UV map the sphere object. Unwrapping it by hand would be an adventure due to how it’s built. Luckily, since it’s spherical, you can cheat and steal texture coordinates from a primitive:

  • Add a Mesh -> UV Sphere, you can leave the options default or double the segments/rings
  • Select the new sphere, shift+click select your own sphere, Object -> Snap -> Selection to Active
  • Select just the new sphere and scale it up so it overlaps your object (don’t go too far, leave it just slightly overlapping), and hide it
  • Select your original object and add a Data Transfer modifier on it
  • In the modifier settings, set the Source to be the new sphere, tick ‘Face Corner Data’ and expand it, enable UVs, and set Mapping to ‘Projected Face Interpolated’

If you’re in material preview you should immediately see something interesting happen :slight_smile: It of course won’t be perfect (there might be some overlapping in UVs), and the material may be expecting a specific UV layout, not necessarily the one that’d be generated like this. But at least there would be some sensible UVs.

Afterwards you can apply the modifier so that those stolen UVs get permanently transferred onto your object’s UV map, and delete the donor object.

You can apply a similar technique to other objects as well using suitable primitives (e.g. if it looks like a box you can steal from a Cube), or unwrap them manually if their geometry is simple enough.

I did click on Pack all into .blend. Hmm.

I never knew this featured existed. I am assuming that it packs all textures, etc into the blend file. Meaning I can move the .blend file into different folders without loosing all the texture work? Because that would be awesome.

How do i do the following:

“in the shader editor unplug the UV from Mapping, and instead use either Generated or Object.”

Thanks

In that file you already have the shader editor open at the bottom. Zoom in on the box that says “Mapping”, there are two nodes in it. You’ll see a connection between the UV output of the Texture Coordinate node going into a Vector input of the Mapping node. Just press down left mouse on e.g. the Generated output socket, drag a noodle into that Vector input socket of the Mapping node, and let go.

And yes, the packing feature should put all external files into the .blend file. Maybe it failed for some reason (it can do that if there’s a reference to a non-existing file).

HA! I suspected it was gonna be some something simple like that. Thank you very much Stan. Greatly appreciated.

Have an awesome day.

1 Like