Alt_stage
animatrix_
I asked SESI many times to add this functionality, and they said they didn't have any plans to do so.
Thanks for your reply!
Over the past few days, I managed to reproduce the minpos functionality on VEX working for polygonal meshes (the task turned out to be quite extensive since edges with points also need to be taken into account). My code at least gives the same result, but it takes much longer than regular minpos with a large number of polygons (I would estimate the complexity as H*J Where H is the number of cells to move, and J is the number of polygons in the target geo). I tried not to use high-level functions and only used cross, dot, normolize, so that the code could be transferred to OpenCl with minimal changes. It's already obvious to me a few places where I can optimize this code in VEX, but I'm not sure how these optimizations will behave in OpenCl. Alas, I don’t know where to find execution time ratings for operations/functions for VEX and OpenCl (You can, of course, create your own rating using the performance tab, but it seems like that’s too much). I also wanted to have some kind of understandable guideline (something like SOLID), so that I could understand what exactly should not be done so as not to critically lose productivity specifically in VEX and OpenCl. If you can suggest something useful, I would be grateful!
I imagine SESI is using acceleration structures like Kd-tree to speed up the queries, otherwise the performance would tank while doing multiple queries or using a high res geometry.
Porting these to OpenCL you would have to use the appropriate data structures like hash grids.
If you can limit the types of geometry, you could reduce the amount of code you have to write. Otherwise xyzdist supports all kinds of geometry like NURBS albeit orders of magnitude slower than polygonal meshes (bug pending).
In any case closest point look ups, point cloud look ups, ray triangle intersections on arbitrary geometry are sorely missing in OpenCL.
As always SESI knows best.