Showing posts with label vertex weights. Show all posts
Showing posts with label vertex weights. Show all posts

Weightlifter add-on for Blender is now free

Weightlifter


In a previous article I mentioned that I stopped publishing add-ons on blender market because basically I was done with it it: I didn't earn enough to warrant the amount of effort that goes into maintaining and supporting add-ons.

However, there is still quite some interest in some of the add-ons, and so I decided to open source some of the add-ons and make them available for free. The first one was Snap! but now it is Weightlifters turn, my very first add-on published on BlenderMarket (now Superhive), back in 2014 (!)

Weightlifter is the Swiss army knife of recording mesh attributes to vertex weights or -colors. Anything from whether a vertex is visible from the camera to its slope or curvature can be converted to weight maps or vertex colors, and much more.

Technically Weightlifter already was open source, at least the source code was, but now I'm also open sourcing the manual, and that means that you can download both the source and the manual from this GitHub repository.


This repository is still a work in progress and the manual hasn't been updated for Blender 4.x yet, but the code is and will run on 4.4. For now, simple download weightlifter.py and use the install from filesystem in the add-ons section. Then read the manual!


To give you some idea of its capabilities, there is a video playlist on YouTube (but they show old versions of Blender).


WeightLifter updated for Blender 2.93

Old but still going strong!

WeightLifter has been been updated for 2.9x compatibility. It has been tested on Blender 2.92 and 2.93 beta and only minor modifications were needed to make it compatible. If you still encounter a bug , please let know so that I can have a look at it.

WeightLifter is available on BlenderMarket. This update is free for customers who bought previous versions of WeightLifter.

WeightLifter is an add-on that can calculate all sorts of information and store this into vertex groups or vertex color layers. It can for example determine the visibility of vertices for a certain camera or the distance to some light source and much more, information that can for example be used as a density map in particle systems. 

The future

The code in the add-on is very old (7 years, which in Internet terms is ancient) and it does show its age in the way it is structured and also, as I experience myself, it is not very fast, especially on large meshes.

I am tempted to modernize it and improve its speed if possible, but this might also be an opportunity to add features. So if you have an idea or suggestion, please drop me a note in the contact box at the top right of the page and I'll be happy to consider it.

WeightLifter updated for Blender 2.83 LTS


I just finalized testing of the venerable WeightLifter add-on and it's now ready for Blender 2.83 LTS.
There are no functional changes but I did catch some bugs while testing. However, if you don't encounter problems in your workflow, there is no pressing need to upgrade.

The new version is available on BlenderMarket.

New release of IDMapper

A new release of IDMapper is currently available on BlenderMarket
This new version is a bugfix release that besides minor fixes also fixes an error that might occur when trying to assign colors based on material ids. Furthermore the manual has been updated to reflect Blender 2.8x layouts and the add-on has been tested against Blender 2.81-beta.

New version of WeightLifter for Blender 2.80



A new version of WeightLifter (20190728) has been released on BlenderMarket.

I has some bug-fixes to keep it compatible to the latest release candidate but more importantly it sports an updated manual and a new feature to combine baked weight maps into one. This feature is useful if you use the maps as density maps in a particle instance and want to prevent frame-to-frame jittering for example. It is illustrated in this video


WeightLifter ported to Blender 2.80


WeightLifter has now been ported to Blender 2.80 and is available from BlenderMarket.
Porting this add-on was a bit more work than porting NodeSet Pro, so be aware that Blender 2.80 is still in beta and you might still encounter some difficulties!

Weightlifter Watershed Demo

I just uploaded a new version of my WeightLifter add-on to BlenderMarket.

The video gives a short impression of the new watershed mode. You could use this watershed mode for example to calculate a realistic distribution of vegetation in large scale landscapes.

WeightLifter add-on: new features

A new version of the WeightLifter add-on (available on BlenderMarket) adds some functionality based on user feedback. Besides some bug fixes you can now:
  • use an arbitrary reference axis in Height en Slope modes,
  • restrict the range of calculated values interactively, and
  • control the size of the patches when assigning random values to faces.

A tutorial showing this new functionality is available on YouTube:

WeightLifter add-on: new feature

I extended the WeightLifter add-on with an extra operator in the Paint menu of the vertex paint mode: VertexColorCombine. It lets you combine color channels from different vertex color layers into a combined vertex color layer.

Combining this kind of information into a single vertex color layer might save considerable space when using large meshes. A small tutorial on a possible workflow to combine different attributes calculated with WeightLifter into a single vertex color layer is available on YouTube:

WeightLifter add-on: new feature

Version 201509040905 adds a new option to the view from camera mode: a height offset. It add allows you to add weight to vertices even if they are in a valley on not directly visible from the camera. A tree for example might have a top that is visible if it is longer than the valley is deep at that point. Using this feature when populating an area with tree particles still reduces the number of particles needed but adds an extra bit of realism, especially on ridges seen side-on. This is illustrated in the image below:

In the bottom image you can see that the tiips of some trees peak above the ridge. The generated weight maps used are shown below, with the default on the left and the one with a slight height offset to the right:

The new version is of course available free of charge to people who have already purchased the add-on. Check the BlenderMarket page for more details.

WeightLifter add-on: new feature release

Version 20150501170240 adds two new modes: one that assigns values based on the average area of the faces sharing a vertex and another mode that assigns values based on the variance of the lengths of edges that share a vertex. The first one I find useful in creating materials on organic shapes that vary in a subtle but correlated manner while the latter offers a complement to the curvature mode, highlighting certain vertices in a different way. Of course you might find a completely different use for it, that's why I include it in the add-on :-)

The new version is of course available free of charge to people who have already purchased the add-on. Check the BlenderMarket page for more details.

Transfer vertex weights to vertex colors and vice versa

In a previous article I mentioned that my WeightLifter addon was updated and could now (besides many other things) transfer vertex weights to vertex colors and vice versa. Because this might be of use to many people I decided to split off this specific functionality into a separate addon and provide it for free.

After installing the addon in the usual manner you get two new menu options: one in the Weights menu in Weight Paint mode called VertexColorsToWeights and a corresponding one in the Paint menu in Vertex Paint mode.


Weight paint mode

In weight paint mode clicking on Weights -> VertexColorToWeight will transfer a color from the active vertex color layer to the active vertex group. If there is no vertex color layer present a will cretae a new one. You have an option to choose which color channel to use as weight or to combine all colors.

Vertex paint mode

In vertex paint mode clicking on Paint -> WeightToVertexColor will transfer the weights from the active vertex group to the active vertex color layer. if there is no veretx group present it will create a new one. You have again an option to transfer the weights to a single color channel or to all color channels.

Code Availability

The code can be downloaded from my GitHub repository.

WeightLifter add-on: user feedback release

Version 20150222 incorporates a lot of features based on user feedback, including an invert option, a new mode (that measures distances to selected vertices), auto update of particles systems that use a a vertex group and extra operators/menu options to transfer values between vertex groups and vertex color layers. The new version is available free of charge to people who have already purchased the add-on. Check the BlenderMarket page for more details.

Distance to selected verts

The new mode Distance to selected verts lets you for example create vertex groups that might be used to control the distribution of particle systems based on the distance to a wall:

Auto update of particle systems

If a vertex group is updated by WeightLifter it now takes care to trigger an update on any associated particle system that uses the vertex group. This way you can get immediat efeedback on the effects of your WeightLifter actions.

Transfer weights to vertex colors (and vice versa)

Sometimes it might be useful to transfer the weights of vertex group to a vertex color layer or the other way around. This might be useful in other contexts beside WeightLifter too, so this functionality is implemented as two separate operators that are available from the Weights menu in vertex weight mode and from the Paint menu in vertex color mode. There are installed automatically with WeightLifter/

WeightLifter in the press

Got a very positive review of my WeightLifter addon on BlenderNation. Needless to say I'm very pleased. The suggestions about a warning when there are modifiers that affect the mesh resolution and the wish to transfer weights to vertex colors and vice versa is noted too, I'll see if I can include that functionality in the future.

The addon itself is of coyrse available on BlenderMarket.

WeightLifter add-on: minor bugfix release

A new version of my commercial WeightLifter add-on is now available. Version 20150214 fixes a small bug where you would get an error in slope mode with the 3D cursor as a reference if the 3D cursor was at the center of the world.

Using vertex colors to color hair in Cycles

I got a question related to my WeightLifter Addon asking whether is was possible to use the addon to control hair particles. The addon itself does of course not control any particles but the vertex groups and vertex colors it creates can be used by any particle system to control the distribution and coloring of the the particles or hairs strands as shown in this example:

For this image WeightLifter was used to create a vertex group with more weight on horizontal surface:

Then this vertex group was used to control the distribution of the hairs by selecting the gruop in the particle system settings:

In the same manner WeightLifter was used to create vertex colors that change colors from left to right:

A Cycles material was then created to use these vertex colors (via the Attribute node) to color the hairs

WeightLifter - Vertex Group Tool, bugfix release

Recently I published my first commercial addon on BlenderMarket and I am very pleased with the reactions I got so far. A big thank you to all those people who purchased the addon!

Of course, no serious piece of software is completely without bugs so I updated the addon a few hours ago. Version 20141018 contains a few small bugfixes and removes a limitation that could lead to crashes when assigning random weights to groups of connected vertices on large meshes (Thank you Wybren for reporting this).

WeightLifter - My first BlenderMarket addon

I am quite proud to announce my first addon that's available on BlenderMarket!

The addon combines a lot functionality in a single comprehensive addon. There's a tutorial online as well, demoing the most eyecatching features and I hope it will be useful to not just ArchViz people!

Update: there is now an update available that fixes a crash that could happen when assiging random weights to groups of connected vertices in large meshes.

Blender addon: visible vertices part III: bug fixes

A couple of weeks ago I presented a small addon that created a vertex group with weights that depend on the visibility of the vertex from the camera. This can be quite useful if you want to restrict particles to areas where they are actually visible, which will reduce render time and memory consumption and in a folow-up article I showed some new features. The addon was wel received but did contain a annoying bug which is fixed in this new version: vertices that were far enough behind the camera received weight as well; this is now fixed. I also disabled numerous print statements accidentally left in for debugging purposes.

Availability and usage

All functionality of this add-on plus a lot more is now available as a convenient all-in-one add-on on BlenderMarket. It comes with an extensive PDF manual and your purchase will encourage me to develop new Blender add-ons.

Version 0.0.3 of the simple add-on shown in this article is available from GitHub (right click the link to download the script somewhere then install it from Blender with File -> User Preferences -> Addons -> Install from file. Don't forget to enable the check box and don;t forget to remove any previous version from you addon directory).

Once installed it's available in weight paint mode from the Weights menu.

The addon might also be discussed in this BlenderArtists thread.

Blender Addon: Weight paint vertices visible from the active camera, part II: distance weights and more

A couple of weeks ago I presented a small addon that created a vertex group with weights that depend on the visibility of the vertex from the camera. This can be quite useful if you want to restrict particles to areas where they are actually visible, which will reduce render time and memory consumption.

The addon did take into other objects in the scene that could block the view but there was room for improvement. The first new feature in this version is that the weight of the visible vertices diminishes with the distance from the camera. For a field of grass particles you often can do with less particles at a greater distance without destroying the apparent density so this helps in cutting down the number of particles even further.

The second addition is the option to add a margin around the camera frame. Some extra particles just outside the camera view might be needed to prevent a sparse edge and to allow shadows from outside the view.

The final extra is the addition of a vertex weight edit modifier. Probably one of the lesser known modifiers, this nifty tool allows us to tweak vertex weights after the are calculated. The addon itself for example decreases the weight linearly with distance but if you want it to fall off in a different way this can be done quite easily by tweaking the curve in the modifier.

All these new options are on by default and the addon even makes sure the vertex weight modifier is visible in the properties panel just to draw some attention to it.

Example

The image below shows the generated weights falling of with the distance to the camera and with some extra margin selected:

Availability and usage

All functionality of this add-on plus a lot more is now available as a convenient all-in-one add-on on BlenderMarket. It comes with an extensive PDF manual and your purchase will encourage me to develop new Blender add-ons.

Version 0.0.2 of the simple add-on shown in this article is available from GitHub (right click the link to download the script somewhere then install it from Blender with File -> User Preferences -> Addons -> Install from file. Don't forget to enable the check box).

Once installed it's available in weight paint mode from the Weights menu.

The addon might also be discussed in this BlenderArtists thread.