or why a bit of competition is a good thingA while ago Cedric Brandin (clarkx at BlenderArtists) was working on an addon that could produce parquetry patterns and because he knew my floor boards addon he asked me some small code specific questions. I was happy enough to help him out of course and he went on to create a very useful addon.
But the idea of patterning a wooden floor sounded to me like a great addition to my addon, and I kept thinking about it. I even looked at his code and in the end decided to incorporate the idea of parquetry patterns. I didn't actually use any of the code because it proved to be difficult to merge the different styles of coding but I owe him a big thank you for the idea.
I did not yet implement all the different patterns but each pattern gets the same benefits as the regular flooring, including randomization options, modifiers and the option to use a floor plan.
At the same time I cleaned up the code, made the interface a bit more use friendly, made it possible to assign materials and keep them through changes and provided more efficiently packed uv maps.
In the near future I might add some additional parquetry patterns. The code itself is quite modular so this should be easy enough to do.
Code availabilityThe new version (20150320) is available from GitHub.
- currently just regular flooring, herringbone parquetry and square, alternating tiles
- assigned to the flooring are now retained even if you change the flooring later (thank you Lell for the suggestion)
- The length and width of the flooring are now exact (any excess is trimmed of with the bisect_plane modifier)
- randomized uv-maps are now packed more efficiently (in 'Shuffle' mode)
Known bugs and misfeatures
- matching a floor to a floorplan is buggy: Blender's booleans don't seem good enough to deliver quality results, showing odd behaviour when the gaps between planks are small. Also if the floorplan is not 2D, the addon crashes.
- The randomized uv-maps are still not packed in an optimal way
- The default values for the bevel modifier are awful
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 modeIn weight paint mode clicking on
Weights -> VertexColorToWeightwill 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 modeIn vertex paint mode clicking on
Paint -> WeightToVertexColorwill 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 AvailabilityThe code can be downloaded from my GitHub repository.
Distance to selected vertsThe 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 systemsIf 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/
The addon itself is of coyrse available on BlenderMarket.