JimmyVera: I have to split out the surfaces for each intersection I want to check. Do you mean that you have to create scene nodes to use Interse…
Works in 2020, but not in 2017. It requires ViperGeometry3D.dll and I don’t know when it was first added to max.
I don’t really know how to test it properly, but it is great that intesectRay doing its job quite well on so many iterations. Performance differences …
I agree if it was just a single raycast, but it is loop. And If I remember correctly someone from AD claimed that consecutive ray intersections now sh…
denisT: I have long thought to steal them from there. Time has come, but AD said that they will abandon MaxPlus, but I hope they won’t remove the…
it is the MCG engine
look what I found delete objects gc() tea = Teapot() s = sphere radius:2 wirecolor:red pos:(2 * tea.radius * normalize [random 0.0 1.0,random 0….
Wow, now it is so mush less code I see that you found that post of Swordslayer about passing mxs values by their names. Do you know in which max vers…
Well, yes, it makes more sense to implement this whole struct as a c# class and compile it on demand. This way we won’t need to use reflection at all…
After a few restarts I see no slowdowns on the first start and it is strange. I remember it was and issue long ago and is probably related to JIT Can…
Nope, all is great except only a few little things EvalWorldState should use current scene time or we could pass it in optional argument Very first …
I use absolute path just for the sake of testing in 2014, since these dlls first added in 2016 I guess. Making IArray from trimesh verts handle is de…
Great refactoring, Denis. Thousand of queries for a quarter of a second is quite impressive result compared to the mxs kd-tree closest:(19164 >&…
Yes. Unfortunately, points aren’t located next to each other in memory so UnmananagedArray2Struct returns garbage.
It must be NativePointer, it was renamed after 2014 version Available in 3ds Max 2018.2 Update and higher: Some native MAXScript types are converted…