For my first exercise with Fabric Engine I am playing around with point distribution. The objective of this exercise is to achieve the following goals:
1. Utilize KL within the Fabric Canvas application.
2. Utilize the parallel processing capabilities(PEX).
3. Gather and Randomize points from a source geometry.
4. Random percentage subtraction of points.
5. Point subtraction based a on secondary geometry.
6. Distribute based on texture map as input.*
7. Deform the plane using some sort of procedural method place the points.*
8. Utilize a texture map as input for how the plane is deformed.*
*still in progress
(This is my first try using Fabric Engine, therefore I’m sure following functions could be more optimized.)
I started from a source geometry, this could be any mesh. For this example, I’m using simple plane, then using a Turbulize node to procedurally deform the source plane.
Taking advantage of KL language, I created a function that gets the points from the source plane and makes randomization. See the code.
The result of this function is a list of translate info, which could be use to scatter point, or a secondary geometry to scatter.
Here are some results after adjusting the attributes:
Simple function to remove percentage of the points:
Here is the function to remove the points that are intersecting with another mesh.
My first impression is that Fabric Engine has a lot to offer. I found the learning curve a little bit steep but once you have a base understanding the limit is your imagination.