Yet Another Vertex Normal Editor (Y.A.V.N.E.)

Assign the same material to both the floating decals and underlying surface. However if the decals use an alpha map, you need to use two separate materials. A logical one material solution would involve multiplying the decals alpha map onto that of the main surface, but Blender struggles to calculate transparency under these conditions unless the objects are joined. Either way, use Decals UV layout with detail maps and Base UV layout with object-specific textures.


The use of modifiers allows for dynamic, non-destructive workflows. Being able to duplicate and transform decals with real-time feedback makes it easier to experiment and tweak results. Although not a necessary step, itā€™s worth mentioning that adding a Shrinkwrap modifier on top of the Data Transfer modifiers can further assist in dynamically positioning decals.

http://i.imgur.com/d8eF77n.gif

To finalize the asset, apply Data Transfer modifiers on the floating decals, and join the two objects.

Here is a blend file that demonstrates the technique (updated 4 March 2016):
https://www.dropbox.com/s/p9vj4y0jn7wkzf8/decals_technique.blend?dl=1

nice stuff. Can you share blend file?

Iā€™ve updated the guide to include an example blend file.

Also, big thanks to p2o for helping refine the procedure!

Here is some of my results when testing decals technique on weighted normals cube, had first a bit different approach by using 2 different materials for both surface and decal objects.






Thanks for providing .blend file, have to check it out to see how to get similiar results just using one material.

And more bigger thanks to Umdee for helping out and making this great guide to getting started with this decal technique in Blender!

THIS, IS THE BEST VERTEX NORMAL EDITOR FOR BLENDER EVER.

The get/set function is perfect, works way easier than any of the existing vertex normal editor. And it works on multiple faces as well. Blend4Webā€™s normal editor only works on single faces.

SPREAD THIS!

Hello !

I must be doing something wrong, but I cannot edit the vertice normal of a single faceā€¦

  1. I select a face, and press the GET button to obtain the face normal vector in buffer.
  2. With the 4 selected vertice of the same face, I press SET.

But ALL the vertice of the mesh are edited, not only the 4 vertice I wanted to editā€¦

Does this mean that you cannot edit one single face ? All the mesh has to be updated ?

Thank you!

Iā€™m assuming you are editing a flat shaded object, like the default cube. Upon updating vertex normals, Y.A.V.N.E. applies smooth shading to the object. Sharp edges are necessary for creating shading discontinuities. This behavior would explain why the shading of the entire mesh changes.

Would it be desirable to preserve flat shaded faces without having to mark sharp edges?

Hello, Umdee.
First of all, let me thank you for that script ! It is so great to be able to edit vertex normals, your GitHub page illustrates it very well.

In my case, the problem is surely that I donā€™t know exactly how to achieve what I need.
I am a bit lost: when do I need autosmooth ? When do I need to use an edgesplit modifier ?

Another problem is that I use a Subsurf modifier on my Mesh, and thus my vertex normals are affected and ā€œsmoothedā€ even more.

Would it be desirable to preserve flat shaded faces without having to mark sharp edges?

I think that this is more or less what I expected.
In the meantime I have stumbled accross Blend4Web, and they have a tool to edit vertex normalsā€¦

I have to play a bit more with all that and clarify my mond before I can ask you what I should do: at the moment, itā€™s just too much of a mess in my mindā€¦

Thank you! Iā€™m glad to hear that the GitHub guide is helpful. Maybe someday Iā€™ll prepare a practical tutorial that shows how these tools can be used.

I agree. The ā€œAuto Smoothā€ option found within the ā€œObject Dataā€ tab of the ā€œPropertiesā€ panel has some peculiar rules:
1.) Auto Smooth must be enabled to display custom normals.
2.) Auto Smooth must be enabled to display sharp edges on a smooth shaded object without using the Edge Split modifier.

Y.A.V.N.E. ensures that both Auto Smooth is enabled and the object is smooth shaded before updating vertex normals. It is designed this way to be consistent with the two rules stated above, but only the first rule is critical for displaying custom vertex normals in Blender.

The Edge Split modifier used to be the only way to display sharp edges in Blenderā€™s viewport. Blender 2.70ā€“if memory servesā€“made it possible to achieve the same result with Auto Smooth. Simply enable the option and crank the angle slider up to 180 degrees. Since this feature, I no longer have a need for the Edge Split modifier.

The Subsurf modifier performs its own calculation of vertex normals. No matter how you manually edit vertex normals, the Subsurf output will always be the same.

I repeat my self, this addon is clever!

Hey, this tool looks great. Finally I have somewhere to point people that yell at me about my old edit normals prototype. (: Hmm, visualizing a pretty modal operator for manual tweakingā€¦ might take a shot at that.

Thank you! It pleases me to know that other Blender users appreciate this addon.

That would be a great tool to have in Blender and not overwhelmingly difficult to implement with modal operators and OpenGL bindings. Itā€™s also one of the many ways Iā€™d like to improve this addon, but I simply have other priorities at the moment. If you feel motivated to create such a tool, please go for it! An easy to use and visually appealing toolset for manually editing vertex normals would make for a killer addon.

Is possible that anyone that know how to use it record a video showing the features and how to use it?
I think itā€™s a really great addon but Iā€™m finding it hard to understand and masterā€¦

Thanks!

Hi, thx for the addon.
Could you add feature of locking global axis(x,y,z) when set custom normal by value?

Man these is awesome! Just to say thanks. And one question is there a way to edit normals by hand (directly, visually)?

Youā€™re welcome. Iā€™m glad you like it.

Sorry, this addon does not provide a way to manually edit vertex normals in the viewport.

awesome addon, just what i needed to ā€œstitchā€ a head to the rest of the body.
many thanks :slight_smile:

Perfect! Subā€™d.

May want to add a little snippet in docs about making edges sharp to split.


I canā€™t tell you how much time I wasted trying to get a simple siding corner post shaded properly for a game engine project (Lumberyard). Such a seemingly simple process. I tried baking high poly normals with varying levels of smoothness and detail. Nope! Hours wasted. Lesson learned.

For simple beveled edges, this is THE way to go. Couldnā€™t be happier with the results in-engine.


Thanks a lot for this!

I canā€™t seem to get the plugin to load in Blender 2.78. Has anyone had luck getting it to appear?

Canā€™t see it in edit mode, and I canā€™t locate it in the addons menu. Iā€™ve tried directing blender to the files in many ways including copying them to the addons folder inside my blender install. No luck.