Blender Addon: Archi-UV (python)

Don’t let the name fool you, it started out as a UV mapping tool. but it soon after evolved into a few directions which I will elaborate on further down.

Download .zip

Features:

  1. Generates “World based UV coordinates”, suitable for any tiling material.
  2. Generates a Vertical Gradient Vertex Ambient Occlusion.
  3. Has some selection tools, including selecting items of a similar type. ( Mesh, Spline, Camera, Light )
World Based UV Coordinates:

These UV’s are linked to world coordinates by using the UV space of the model as if it were world space.
Treating the UV square as a 1m by 1m reference, all face uv’s are stretched to world size and oriented upward.
( In other words, a 6×6 face of a cube, would also be 6×6 in the UV editor, whereas normally the UV would be contained within the UV box )
Because I intend this feature for tiling textures, this feature should work flawless for any rigid or structural surface. It will not work properly on organic forms.

Pressing the red texture button in the middle , unwraps the currently selected mesh(es) using my custom algorithm. The arrows to the side allow you to rotate the UV’s of the model 45 or 90 degrees in either direction.
Origin 3D cursor:
Use the 3D cursor as a base point for the world UV’s , this mostly helps with the alignment of textures that do not use the default world origin.

Vertex Based Ambient Occlusion:

This is quite a simple feature. It takes your mesh, and generates a grayscale gradient from top to bottom in a “VAO” channel. You can plug this vertex color channel into your material using the node editor to create a simple fake ambient occlusion. With the recent updates to blender this might’ve become quite obscelete, the viewport has its own AO rendering algorithm so I have no more need for this function.
Exclude Horizontal- Use this one objects with horizontal surfaces that need to be fully lit, it makes sure to always make horizontal surfaces fullbright ( it looks better that way ).
local- Default button to generate the AO
Bot Ignore the bottom vertex of the mesh, and instead use the 3D cursor’s position as a relative bottom. This allows you to tweak the AO’s height.
Top Ignore the top vertex of the mesh and instead use the 3D cursor’s position.

Quality of Life tools:

Select Similar:  Type , Linked Mesh Data, Vertex Count, Shared Material, Hierarchy, Object Name
Apply transform to all shared meshdata objects:
Applies Position, Rotation, Scale to all object sharing the same mesh data so they all look the same as the selected version.

Installation Steps:Archi-UV

– Download object_view3d_architools.zip
– Open up Blender 2.76
– File > User Preferences > Add-ons ( ctrl+alt+u )
– Install from File.. ( locate the .zip file )
– Find Object: Archi-UV in the add-on list, and tick the checkbox to activate it.
– Done , you should now find it in your 3D view Toolbox ( Misc )

Why I made it:

Throughout my work creating visualisations in Blender, I’ve constantly been in need of a way to quickly unwrap any mesh given. Ofcourse blender provides an excellent amount of unwrapping options. But for my line of work, I needed the UV’s to have certain properties, and most importantly, I had to do it FAST! Sometimes my employer was sitting directly next to me, and he does NOT have the patience for me to tweak UV’s but he does want to see proper results.
As a result of this, the results of the UV tool had to be predictable and accountable, so that I could plan them into my workflow.

Final Thoughts:

Thinking about it, this tool has saved me hours of repetitive boring UV work. that would’ve been a waste of my time. Investing the time to write this has made my life a lot easier.
Though I would like to clean up the code a bit, and heavily tweak the UI, this little baby is quite dear to me. I do really need to improve my naming schemes, “Apply transform to all shared meshdata objects” is a bad button label no matter what.