18
$\begingroup$

I've built my first 3D model using 2.71. It consists of several meshes including cylinders a cube and a plane and I've animated one of the parts. I'm ready to use the UV/Image Editor to export a texture map.

I've expanded the 2nd view panel, switched to UV/Image Editor mode. Returned to the 3d view panel and tried to select all of the parts using the A key, then typed U and chose Smart UV Project.

Only one part is unwrapping and I'm stuck. How do I get all of my parts to unwrap?

$\endgroup$
7
  • 1
    $\begingroup$ Are you in object mode or edit mode when you press U? $\endgroup$
    – gandalf3
    Sep 9, 2014 at 1:58
  • 1
    $\begingroup$ @gandalf3 He wouldn't see the option Smart UV Wrap if he was in object mode. $\endgroup$ Sep 9, 2014 at 2:00
  • 1
    $\begingroup$ @GiantCowFilms Good point.. If they are separate objects, you can still unwrap them all at once by selecting them in object mode, then pressing Space > Smart UV project. $\endgroup$
    – gandalf3
    Sep 9, 2014 at 2:03
  • 3
    $\begingroup$ @gandalf3 Are you kidding me!!!!!!!! I have hunted and hunted for a way to perform batch Smart UV projects, and it was sitting in the space bar menu all this time. facepalm. $\endgroup$ Sep 9, 2014 at 2:14
  • 1
    $\begingroup$ If you want all objects unwrapped onto the one image there is the texture atlas addon. $\endgroup$
    – sambler
    Sep 9, 2014 at 6:46

5 Answers 5

20
$\begingroup$

As of Blender 2.8x there is a new feature called Multi-Object Editing, means that entering edit mode now takes all selected objects into account making operations such as UV unwrapping or recalculating normals possible without manually entering edit mode on each or writing scripts.

  • Select all mesh objects to unwrap.
  • Switch into edit mode (Tab) and then unwrap (U).

Release Notes: https://wiki.blender.org/wiki/Reference/Release_Notes/2.80/Modeling


In Blender 2.7x only the active object can be edited in edit mode. If you have multiple objects you want to unwrap you can either:

  • Join them into one object, then unwrap. Select them in object mode and press ⎈ CtrlJ, then unwrap in edit mode (U).

  • Batch unwrap them as separate objects. In object mode, select the objects you want to project onto the same UV map, then press Space and search for one of the scripted projections (Smart UV project, Lightmap pack).

    Note that you wont see the UV maps which are created without going into edit mode, and even then you will only see the UV map for the active object.

$\endgroup$
2
  • 1
    $\begingroup$ As @MJP said, it is possible to see the UV map for all objects: "In your UV panel click View > Draw Other Objects to see UVs from multiple objects." $\endgroup$
    – piegames
    Sep 14, 2016 at 15:52
  • 1
    $\begingroup$ In case anyone is looking at this now, with Blender 2.8 the spacebar is no longer used for the operator search. Now you need to use <kbd>F3</kbd>. See this link for reference. $\endgroup$
    – Anna K
    Sep 15, 2020 at 1:51
15
$\begingroup$

I just had to do this. Unwrapping multiple objects to a single texture does NOT require joining them into a single mesh and unwrapping. Simply select all the objects, hit space, find Smart UV Project.. make sure Stretch to UV Bounds is UNSELECTED.

This will unwrap multiple objects to a single texture without overlapping UVs. This is a lifesaver.

$\endgroup$
0
2
$\begingroup$

From this thread there seems to be an addon Multiple-Objects-Editing

Or the texture Atlas bundled with blender...

$\endgroup$
1
  • $\begingroup$ you have to add more then links to make your answer useful $\endgroup$
    – Chebhou
    Jul 28, 2015 at 10:32
1
$\begingroup$

For v2.92+ Smart UV project is no longer in the search results when in object mode.

However, you can now just select multiple objects in object mode and then switch to edit mode, all objects will be in edit mode then. You can now just unwrap them.

$\endgroup$
1
  • $\begingroup$ Enable Developer Extras and you can call it using F3 in Object Mode. $\endgroup$
    – brockmann
    Mar 7, 2021 at 20:46
0
$\begingroup$

If you want to unwrap each object individually use this script

import bpy

# Get the selected objects
selected_objects = bpy.context.selected_objects
objs = [o for o in selected_objects]
bpy.ops.object.select_all(action='DESELECT')

# Loop over the selected objects
for obj in objs:
    # Select the object and enter edit mode
    bpy.context.view_layer.objects.active = obj
    bpy.ops.object.mode_set(mode='EDIT')

    # Select all faces
    bpy.ops.mesh.select_all(action='SELECT')

    # Unwrap the object
    bpy.ops.uv.unwrap(method='ANGLE_BASED', margin=0.001)

    # Exit edit mode
    bpy.ops.object.mode_set(mode='OBJECT')
$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .