next week or so i will be reading the third edition of the Blender Cycles materials and textures cookbook. I'll post a full review on this blog when I'm done. The previous edition was pretty good so I am curious to see how this edition will turn out.

Floor boards revisted

or why a bit of competition is a good thing

A 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 availability

The new version (20150320) is available from GitHub.

New features

patterns
currently just regular flooring, herringbone parquetry and square, alternating tiles
materials
assigned to the flooring are now retained even if you change the flooring later (thank you Lell for the suggestion)
size
The length and width of the flooring are now exact (any excess is trimmed of with the bisect_plane modifier)
uv-maps
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
Any comments are welcome of course and this BlenderArtists thread might be the best place for discussion.