If the helper is not compiled as a dlo, it won’t show up in the helpers menu on the create panel. If you include more than one plugin class in the s…
I’m not sure if the .dlo/.dlu/.dlm etc distinction actually matters (don’t quote me on this though, I haven’t tested it extensively). I have an objec…
Well, you’re calling the constructor of your target helper but presumably it’s not defined in the class header you included with it. Also keep in min…
You don’t need to set the transform to Matrix3(1) either, as that’s the default of a created node.
The inclusion of all the base plugins source code with the SDK is pretty standard knowledge The SDK documentation can be pretty limited…the sample c…
f_edges_array = getClassInstances f_edge for f_edge_tex in f_edges_array do ( v_edge_tex = VRayEdgesTex name:f_edge_tex.name v_edge_tex.widthType…
Controls are children of their rollout. To access controls on another rollout, just precede their name with the name of the rollout. In your example: …
name = uniqueName name Maxscript has a built-in function to produce a unique name for something. [i] uniqueName[/i] <prefix> [[i]numDigits[/…
This will collect all materials, regardless of whether or not they are nested in other materials: mats = #() for matClass in material.classes do …
Did you have more than 1 object selected before running the script? “$selection” usually (always?) denotes an array of selected objects. You can ensu…
Select the root node of your object hierarchy and run this: fn replaceWithDummy obj = ( d = dummy() d.transform = obj.tran…
Don’t add the Init function in WM_INITDIALOG. Add it like this: switch (msg) { case WM_COMMAND: { switch(LOWORD(wParam)) { …
Glad you got them working! Difficult to imagine writing plugins without them
Are your .pdb files going to the 3dsmax plugin directory (ie, same place the plugin file goes)?
Just to confirm… You are building in debug mode, and using 3dsmax.exe as the debugging program…and after 3dsmax loads (not by you running it manually…