TiNA - Transfer Normals Add-on

TiNA logo

After finding out how to transfer normals to another object I created my first Blender add-on which makes this an easy feat. The add-on provides the ability to Transfer Normals between objects in Object Mode using Alt+N and Shift+Alt+N. Optionally vertex colours can be transferred as well.

Screenshot_2018-10-02_01-23-50

All you need

TiNA.py
TiNA.py (Blender 2.80)

GitLab repository

Clarification

The add-on allows you to (more easily) make separate objects connect seamlessly without joining them, which can be useful when creating elements for your game worlds.

Hotkey Operation
Alt+N Transfer normals from selection to active object
Shift+Alt+N Transfer normals from active object to all other selected objects
Ctrl+Shift+Alt+N Clear custom normals data for entire selection
Alt+W Wrap normals

Test scene

To try out the add-on without the need to create a suitable set of meshes you can download this blend file:
TestScene.blend

6 Likes

I created a repository on GitLab for this add-on so I can more easily update it while implementing the points on the to-do list as well as to allow for forks and pull requests.

Hey, nice to see you here.

Ok, now you nailed it. Gonna try it.
You should add some funky video to show what it does. Blenderheads like that. :cow:

Hey @kabu! I’d noticed your avatar in a cloth modelling thread yesterday. :slight_smile:
Hope you like the add-on. I’m now working on the option to apply normals from the active object to all other selected objects. (edit: done)

And before creating a video I’d like to implement the current points on the to-do list and create some pretty models that really suffer from those seams. :wink:
EDIT: For now an image of the test blocks will do.

Yes, you’re right. Some ironing to do.:grinning:

1 Like

Default hotkeys are now set when loading the add-on: Alt+N and Shift+Alt+N for transferring normals to and from the active object respectively.

Vertex colours can now optionally be transferred along with the normals.

Gonna check this.
Thank you.

BTW
Your GitLab link is broken.
So here it is, for all those who wish to join the venture:

1 Like

That’s odd. I moved the link to the first post as a onebox.

Nothing happens with Alt-N in my case (it’s probably bound to something else…?)
Panel please. T - something or N - something.
:robot:

You can search by Key-Binding under input in the user preferences to find out.
Make sure you are in object mode. Also, is your setup similar to this example?
BasicNormalsTransfer.blend (472.4 KB)

I added a button to the Tools panel. The shortcut isn’t showing up there either. Could this be related? Or is something else required for this?

Bump the blend example in the first post of the thread, so people can find it more easily.

I do:

(you can always find an operator by space and typing its name, even if no UI appears).

then Blender shows the modal:

and then:

this happens irrespective if I do select the first, apply it, select the second, apply it, select both, apply it.

Still operativity is unclear. Video, video.

HTH

You probably have non-model objects selected (which is no longer a problem), like the camera and light. It currently creates modifiers for these as well, but cannot set the source object. This makes it fail during a later step and leaves a messy modifier stack.
I plan to add a check for this, but until then I will not know how. :slight_smile:
Pull requests are welcome.

I added an improved test scene to the original post. Without lights or cameras.

The add-on now skips non-model objects and shows an error message when not enough model objects have been selected.

BasicNormalsTransfer_edited.blend (1010.1 KB)

Oh sorry. Didn’t noticed the to_active flag in the beginning.
Now it’s clearer. I’ve set up things to be easier and added a note quick go.
:tiger2:

The add-on now includes an extra operation to clear the custom normals data for the entire selection. By default the hotkey for this is set to Ctrl+Shift+Alt+N.

This looks great, thanks. Any plans on expanding it to work also for selected vertices?

I have considered relaying the modifiers’ vertex group parameter. But so far the Max Distance parameter works well enough for me. Could you mention example situations where this precision is necessary?

@kabu What do you think of the latest test scene, btw?

In my setup (Mac Os) using Alt- doesn’t work.

In a most general way, in Blender, relying on a key combo setup for the main function is not a good thing imho, because everyone has a different keybindings and keys “real estate”, given the many functions, is scarce.

Normally, I use the Outliner to “select active”. I tried selecting with B but I don’t know how to “select active” that way. If I click on an item, just one part of it gets selected.

You can have a single object with Ctrl-J join all of them in a single one.

The scene is nice. Using trees as a classic test case for normals is a good idea.