• Wanting the recipes
  • Email
  • Posts 50
  • Reputation 5
  • Member Since
  • Last Active
  • Name Jerome
All Posts Topics Started Likes
Shatter object with curve components

Take your curveshape and connect it to a rebuildCurve (the numbers of spans in your rebuild curve will give you the total number of shatters seeds). Then to randomize the points positions use a "point" node.

After that you can also define a curve influence on the point distribution (ie curve influence is set to 85%) and then you use a scatter node (for the other 15%) and finally you combine the 2 arrays of points and send that to the shatter node.

I created a quick setup that shows the process. Play with the shatter helper settings (in extra attributes) in order to see.
0 0
open vdb 2017-01-31
Hi guys,

Open VDB worked great during the past few weeks on W10... and now suddenly it doesn't work anymore.
Got this usual error on W10 : "Unable to dynamically load.." and "The specified procedure could no be found (BE_OpenVDB). Why ?

Just to mention there's no windows update, I set up the environment variables, I have the lastest Arnold Core version and I also installed Visual C++ Redistributable for Visual Studio 2012 Update 4.

I have plenty of setups that gave me errors now.
What can I do next to continue to use OpenVDB ?

Thx in advance
0 0
Moving Point Positions based off normals and noise
I did this quick setup using SOuP. Check it in order to see if it can work with your mesh.

Here I used only a point node and I simply computed the new position like this :



$NX, $NY, $NZ are the object normals and $WEIGHT is filled with BW values from the texture.

You can also use a peak node to do that kind of stuff

0 0
Moving Point Positions based off normals and noise
if you don't need to do it in SOuP then use a texture deformer.
This is the most simple thing ;)
0 0
fluid emission from 3d texture
Remenber you can also affect vdb grids data with vdb get/set data...
0 0
fluid emission from 3d texture
Here a quick setup I did using only openVDB.
I started with a sphere, then I converted it to VDB and after that I used a VDB Flow noise to affect the density inside the VDB grid. Finally you just have to convert this VDB grid to a Maya Fluid. Everything works pretty fast.

0 0
SOuP 2017-01-29
BTW is there a way within SOuP to create Voronoi Clusters ?
0 0
SOuP 2017-01-29
I think what you are doing is much nicer - kind of - raycasting new points onto the geometry, but within the defined sphere.

Yep, in fact the process is to create a boolean mesh between the sphere and the original mesh, and I use that new boolean mesh to scatter points within it's volume. (That way if I want to have 50 points ie I'm sure I will have those 50 points inside the original mesh)
In case the boolean fails I will use instead the sphere volume to scatter my points.

Do you know if qhull supports all this extra data ?

No QHulll is only there to give you the voronoi diagram for a set of points. Another problem with QHull is that it is unable to give you the Constrained Delaunay Triangulation. Normally we need to use that to "cap the holes" after each cuts. We use the "border edges" as constaints for the delaunay triangulation. In my script I use the polyCloseBorder but it will give you artefacts with concave mesh, shelled mesh, or meshes with holes...
Using the Constrained Delaunay Triangulation for the new created faces will also give you the ability to add noise and break the straight edges

There's an old plugin for Maya that perform voronoi fragmenation but it's only available for older Maya versions : http://ngemu.com/threads/autodesk-maya-shattering-plugin.142541/
and it's seems really fast :

There's also another one called Larmor Voronoi : http://www.larmor.com/portfolio/
and here it used the CGAl Library and the project is open source

Now, normally when you have computed the tetrahedralization of a mesh (ie with tetgen) you can easily compute the voronoi diagram (dual graph). Jose Esteve explain it (with source code) here : http://www.joesfer.com/?p=60

Hope it can help you ;)
1 0
SOuP 2017-01-29
Working on another cut tool to create ashes from object (which I will share soon) I saw I did a mistake in my voronoi script... not a big mistake but it slow down the cutting process.

In fact it was a python indentation problem. (I deleted the history after each cutting steps).
Now after unindent that line (cmds.delete(fragList[c], constructionHistory = True)) it deletes the history when all the cuts are done and it works 1.5 to 2.0 times faster than before.
So for the same box shattered in 500 parts it now takes 7 seconds instead of 10.

Using the same approach and library inside 3dsmax, I did couple of months ago, a mouse based voronoi tool :

It worked nice but it was not procedural so I decided to use two plugins (VoroFrag which is free and Rayfire) so now the process became procedural and I was able to go back and forth and change the end result whenever I want.

I also did a similar setup within Maya (I used FractureFX for that) :

So next step will be maybe to do that kind of tool with Maya SOuP
1 0
open vdb 2017-01-31
I guess it's a windows 10 update problem. I don't know which one BTW.
Why I say that :

Because on one of my computer with W10 updated regularly I got the same error message.
Now I have another computer where I reinstalled W10 and I intentionnaly stop windows update service and it works great.

Maybe I'm wrong but this is where I am right now.
0 0
woven meshes
Awsome Peter, with the Fix on your poisson mesh reconstruction code, it now works perfectly !
Thx a lot
0 0
woven meshes
Really great exemple Peter but it crashes for me too... I guess you are using the tetrahedralize node with the remesh option turned on, and for me, that's why it crashes Maya. (I guess).

You are creating two meshes for that :
- a triangulated one (with the remesh node)
- and it's dual (using the divide setup)

Always have that problem only with the remesh node (W7, W10).
Maybe you can provide the same exemple with the polyreduce node instead ?

0 0
SOuP 2017-01-29
Yep the slow down part is the cutting process since you are calling mel command within Maya API (I guess)
I did a quick test with a simple box and 500 shards. The SouP shatter took 81 seconds where my script took 10 seconds.
SoupShatter.jpg  QHullShatter.jpg 
Obviously my script as drawbacks. It's not procedural, not a node that can be included within SouP and it creates 500 objects instead of only one object... but if it can help you in any ways

Updating "shatter" is one of the main items on my to-do list. 
That's a great news Peter.
0 0
SOuP 2017-01-29
Hi Peter,

Inside the videos examples you talked about that attribute : The nMaxCutPP attribute drastically improves performance by limiting the lookups needed to create a new shard to the closest n points. The denser the input pointCloud, the bigger the performance improvement is. Lowering too much the value of this attribute may lead to artefacts - such as overlapping shards. In this particular example, setting nMaxCutPP to 30 resulted in 2.5x shorter time needed for shattering the entire geomtry.

This will be available with the next SOuP release(kdTree node) because I can't find that attribute in the current release. This can be a great speed improvment for the shatter node (I guess in the current version you are doing Brute Force approach) but in the meantime it will be a little bit tricky to find the right value (the one that will provide the fastest fragmentation with less artefacts).

Couple month ago I developped a script to perform the voronoi fragmentation using the QHull library http://www.qhull.org/
QHull can quickly give you the voronoi diagram for a set of 3d points so you don't need to use the Brute Force approach or a dedicated kdTree. And normally you can use it directly inside C++

I did that script using python (use of subprocess to call QHull) It's quite fast for a script. I'm able to cut an object in 100 shards in few seconds. Maybe you can take a look at QHull to retrieve the "adjacents" points for the voronoi diagram.
I leave you the script and the source code. Just copy/paste the whole folder inside you Maya script directory (ie : C:\Users\userName\Documents\maya\2016\scripts

0 0
Nonlinear Regression
You can download the scene file here. It will be easier for you to check the network this way.

0 0
count post selected

Add a Website Forum to your website.