Tissue by Alessandro Zomparelli

Adding a new filling mode that creates a frame and fills something in between between the frame bounds sounds like a good idea.

Presets for some of the most common type of tesselations also sounds like a good idea.

I’ve just spend quite a few minutes looking at the UI for Tissue and definitely agree that there are quite a lot of options, with the list probably growing. Here are a few thoughts:

  • instead of having basic and advanced options, could there be multiple collapsible/expandable sections?
  • These sections could help break down the UI into different bits, for example
    • preset
    • input base options, including the actual base
    • input component options, including the actual component
    • morphing
    • limited tesselation

I quite like the UI for the Grove, as even though it has numerous options, the most important buttons and settings are clearly visible and furthers up on top. Whoever wants to modify more advanced settings could expand some of the other dropdown menus


Thanks Dimitar for your feedback. I’ve considered to split the parameters in more panels, but then I decided to do in one panel for some reasons. I can definitely reconsider them, but my thoughts were the following:

  1. tool panels in the viewport are usually for “actions”, while object’s parameters/settings are usually in the properties panel. I chose “object data” because they are related with mesh data, shapekeys, vertex groups etc…
  2. in order to make it more easy to spot and less intrusive in the UI I decided to create one specific panel called “Tissue - Tessellate”. This in order to make clear the add-on and the operator.
  3. using more panels for the same generator strategy is something that in Blender is used only for physics or particles, and the reason is that the whole panel is just about that, so is clear the operator/tool and the sub-panels are used only for organising the settings. I was worried that adding too many panels in “object data” could sounds invasive… And a bit dispersive…

Thinking about your suggestion, I could try to move everything in the right panel in the viewport. For sure it should be more easy to spot, but it would be mixed with other Tissue Operators… What do you think?

Hi Dimitar, I added a Fill mode: Frame:

So far it is a customizable “Wireframe Modifier”. It apply the component with an uniform thickness along the edges (variable with shapekeys). For the faces it basically perform an inset face, while for the boundaries it was a bit more complicated.

So far I haven’t done anything for the inner part, but, if the component is not close, you can try to use Cap Holes… Not really flexible, but better than nothing :stuck_out_tongue:


Amazing!! Looking forward to try this out!! This is going to get really fun with everything nodes…

What you said and your thought process definitely makes sense.

To me it makes sense to have all the operator buttons available in the N menu so it becomes possible to adjust settings without necessarily having to commit (not even sure if that’s possible). It makes the settings a bit more visible so the can be studied better.

What’s happened often to me is that I select a component and a base mesh, hit tesselate, adjust some settings and then remember that I’ve forgotten to do something additional to the component. So, I press esc, go back to adjust. Once the geometry is ready, pressing tesselate, all the adjustments need to be made again since i did not commit to using the operator.

1 Like

I just uploaded a new version: https://github.com/alessandro-zomparelli/tissue/tree/b280-dev

You can generate the inner fill and the boundary, and for both of them you can use a Material Index Offset in order to pass that information to Multi-Components. Those, are visibile only if Multi-Components or Material ID are on (in order to keep things simple for beginners). An alternative can be to move that in the “Selective” section, but maybe is too far from the toggle settings…

I also tried to introduce sub-panels (I didn’t realized it was possible before). I created some categories (too many?). What do you think?
The whole panel is becoming bigger, but I like that you can see what are the other sections, without open all controls.

Unfortunately, I’m worried that it will not possible to do the same thing for the Operator panel (when you press “Tessellate”). Now they are really different… :frowning:


It’ is possible to generate lattice structure with this Addon like this one for footwear sole design



Would be nice to generate different lattice structure on a mesh


Solved my problem. Note to self - pay attention and read/listen/watch the whole way through. :wink:

Thanks for this great tool!

Hi Alessandro, I’m playing around with tissue once again, but for architecture this time. It seems that the morphing doesn’t work well with multicomponents (version 3.38):

I wanted to make a building with several components, and each of them has a shape key (all of them have the same name) that set the opening or closing of the panel. Everything works fine with one component, but the way the components are set is different with multicomponents:
The second components (and the other following ones) are placed on triangular faces instead of the dual mesh faces. I don’t know if I’m doing something wrong ?

I started a thread about this in the support forum, but I guess I could try my luck here as well.

What would be the best way to go about creating a microphone grill - particularly a grill for the SM57 - with tissue? I have made some tries, with ok results. But I feel I lack the proper know how to be able to create something that is not just ok, but good enough for close up renders etc.

Any tips?

I would try this approach. Not using tissue though.

Hi @viralata, sorry for the late Reply. I tested this specific situation with the last development version. There were some issues before, but now it seems working:

1 Like

hi @kakachiex2, yes it’s possible, but I would say that the control is not optimal for the moment. If you want to create the volume of the sole, you should use a component that contains the whole thickness of your sole.
In order to follow two different surfaces top/bottom, you should use a specific setting “Direction Custom”:

How dooes it work?
Your base mesh will represent one side of the sole. In order to specify the other side you should use a shape key (different shape, but same indexing of the vertices). Set the shape key vaule to 1. Using the Custom direction, the tessellation will be create between the two surfaces. (Use Constant Thickness for a correct result).

I would like to add an option for using two different meshes without using the Shape Keys, but doing so the user should make sure that the two meshes have the same topology and same indexing.

I just noticed that for the moment it works only with Patch tessellation, I’ll try to fix that soon.

[EDIT] Actually I added an option that makes it much more easy, just using a second object with the same amount of vertices:


You can use Tissue or other techniques as well. If you want to use Tissue, share some of your result, so I can help you improving it.

Tissue is so powerful!
Tissue Reaction Diffusion 2.blend (3.1 MB)

1 Like

Hi Alessandro! I am gonna try my luck here, I have a personal project right now where I am trying to model a chair that has some woven material on it and I am having trouble with connecting the diagonal pieces of my pattern.

My base mesh:

Result: On first glance it seems okay but when you try to zoom in…

The diagonal pieces are not connecting, is there a way to connect these?

Hi. Just making sure: you do have the diagonal parts of the base mesh at the same height?

I looks like a small error in you base mesh. Made an illustration of the changes that should solve it.

How to use the vertex group option. I try to click but did not get the result. Got this crazy result.

feather bird face.blend (764.9 KB)

1 Like

Hi Atek, what do you expect from the vertex group? Did you check your object in weight paint in order to see if it remapped the group correctly? Maybe you should disable “Face Orientation” before.