Position raycast as test
#1
Hi,
We want to select the top layer of voxels, the way we can do it is by having two tyflowsystems, one using position raycast to create a new layer on top of the other, which makes it possible for us to do stuff to that layer, but it would make sense to have this all in one system. Is this possible somehow? Something like raycast test..?
  Reply
#2
Not sure I understand...you're raycasting the voxels themselves?
  Reply
#3
(09-11-2023, 12:55 PM)tyFlow Wrote: Not sure I understand...you're raycasting the voxels themselves?

Yes.. its a stupid workaround and Im sure theres a simpler/easier way of doing it.
Basicly we want to be able to control the outer most voxels in a direction (mostly the top voxels) but I can't figure out how to split them out.
  Reply
#4
In a VDB? Or Birth Voxels operator? Sorry, gonna need more info before I can understand what you're trying to do.
  Reply
#5
Birth voxels operator
  Reply
#6
Surface Test > Normals/Distance?

Get particles close to the surface, and then near normals pointing in the direction you want (up).
  Reply
#7
(09-11-2023, 02:48 PM)tyFlow Wrote: Surface Test > Normals/Distance?

Get particles close to the surface, and then near normals pointing in the direction you want (up).

Don't think that solves anything.. I think you misinterpret what Im trying to achieve.

Attaching my desired result, this example is done with just edit poly select with "occluded" checked (and selecting from the top view), so not a viable option. As I said I sortof did it wiith position raycast but it was not ideal in any way.


Attached Files Thumbnail(s)
   
  Reply
#8
Now that you posted the image, the problem is more clear.

Property Test > Neighbor count. Forward direction > particle Z. Search radius > shape radius. Look ahead > the voxel size of the Birth Voxels operator. Test value > less than 1.


Attached Files Thumbnail(s)
   

.max   topLayer.max (Size: 656 KB / Downloads: 132)
  Reply
#9
(09-12-2023, 05:01 AM)tyFlow Wrote: Now that you posted the image, the problem is more clear.

Property Test > Neighbor count. Forward direction > particle Z. Search radius > shape radius. Look ahead > the voxel size of the Birth Voxels operator. Test value > less than 1.

Nice, thanks alot, I was fiddling with neighbour count but couldn't get it to work, think I missed the look ahead parameter.
  Reply
#10
(09-12-2023, 07:16 AM)pjkw Wrote:
(09-12-2023, 05:01 AM)tyFlow Wrote: Now that you posted the image, the problem is more clear.

Property Test > Neighbor count. Forward direction > particle Z. Search radius > shape radius. Look ahead > the voxel size of the Birth Voxels operator. Test value > less than 1.

Nice, thanks alot, I was fiddling with neighbour count but couldn't get it to work, think I missed the look ahead parameter.

Followup question, if I wanted to check in the other direction, is there any way to do particle -Z ?
  Reply
#11
Not currently, this is a use case that wasn't originally intended. The solution would be to allow negative values in the look-ahead spinner, which I will add for the next build.

A workaround is to set particle velocity in the desired direction, do the neighbor test using the velocity vector (instead of the particle transform axis), then clear the velocity afterwards.
  Reply
#12
(09-12-2023, 12:53 PM)tyFlow Wrote: Not currently, this is a use case that wasn't originally intended. The solution would be to allow negative values in the look-ahead spinner, which I will add for the next build.

A workaround is to set particle velocity in the desired direction, do the neighbor test using the velocity vector (instead of the particle transform axis), then clear the velocity afterwards.

Ok cool, yea I had another workaround in mind where I rotated them 180 degrees, do the test and then rotate them back, think that will work aswell, but not ideal.

Thanks for your help
  Reply


Forum Jump: