Duplifaces technique problem

(Peter) #1

Hi guy’s,

The goal was to get a nice and fast way to generate the tapering body of a snake out of a tillable ring of it’s scales with the duplication faces technique but as you will see in gif below it doesn’t work as expected.

For those who will think about array with an empty it would not work since we can have only one empty per array. So only one end get tapered when scaling the empty. Lattice would not work either since they deform the object.

Every object involved in the operation has their origins align at the same location and they were all rotation and scale reset with ctrl+a.

I was trying to get this to work after i ask the following question at Blender stack exchange ; https://blender.stackexchange.com/questions/118937/array-with-more-than-one-empty-is-it-possible/118939#118939

Here is the tillable ring of scales ;

Here a gif showing pivot point location for each ;

Here the operation step by step with annotations ;

So could this possibly be related to floating point precision just like in game engine where object lose precision the further away they are from the 0,0,0, location?

It would be nice if we can sort this one out since this technique would be pretty neat and fast for all sort of thing like that.

(Peter) #2

Well it’s seem like a though nut to crack but i have found that thread here talking about float precision so i think my intuitions were right ;


Seem to be related because the spacing i get at the tail section is the furthest point of the mesh.

So i hope devs can chime in and confirm that probability?

(Peter) #3

I will wait another day to see if someone come up with something but after that i will ask on Blender stack exchange since i would really like to know why this is happening.

(j) #4

It is because of the (scale / size) is smaller at head side and tail side

(j) #5

Cool though !

(Peter) #6

I know but it doesn’t explain why the sections spacing act this way since when i use regular array with an empty i get no space problem here a picture with array;