Interfaces > Core Interfaces > nvpx |
The nvpx Core Interface exposes the MassFX Physical Simulation system based on nVidia PhysX technology to MAXScript.
Available in 3ds Max 2012 and higher.
nvpx.UseAdaptiveForce : boolean : Read|Write
Get/set the state of the Use Adaptive Force option.
Available in 3ds Max 2013 and higher.
nvpx.gravityMode : enum : Read|Write gravityMode enums: {#none|#directional|#object}
#directional - directional gravity
#object - object-based gravity using the nvpx.gravityObject property (see below)
Available in 3ds Max 2013 and higher.
nvpx.gravityObject : node : Read|Write
Get/set the gravity object defining the direction of gravity.
Available in 3ds Max 2013 and higher.
Exports the scene simulation data to an external file using the file format specified by the second argument. Returns 0 on success, -1 on failure.
Possible extension values are:
"xml" - creates a default XML file
"nxb" - creates an NxuStream BINARY file.
"dae" - creates a COLLADA XML file.
Any other extension value will cause a warning to be printed to the MAXScript Listener, and the export will use the XML file format.
The actual file extension used in the filename argument does not have to match the file type, so for example it is possible to save a file called "collada.xml" using the "dae" extension argument.
<integer>nvpx.ExportPhysXProjectFile <string>physxProjectPath <string>physxProjectName
Exports a PhysX Project file in XML format named according to the second argument to the path specified by the first argument. The extension .PxProj will be added automatically.
Available in 3ds Max 2013 and higher.
<integer>nvpx.ExportPhysXProject <string>physxProjectPath <string>physxProjectName <string>fbxFileName
Exports the PhysX project with the name specified by the second argument to the path specified by the first argument. Includes the geometry exported as FBX file name according to the third argument.
Available in 3ds Max 2013 and higher.
<integer>nvpx.PrepExportPhysXScene <boolean>isexportphysx <string>extension
Available in 3ds Max 2013 and higher.
<integer>nvpx.PrepExportAPEXClothing <boolean>exportAPEXClothing <string>apExtension <boolean>useModelSpace \ <float>scale <boolean>addHulls <boolean>exportCTW <boolean>exportFBX <boolean>exportSelected <boolean>launchViewer \ <boolean>reverseWinding <boolean>omitMeshSubpartName
Available in 3ds Max 2013 and higher.
<integer>nvpx.PrepExportAPEXDestruction <boolean>exportAPEXDestruction <string>apExtension <boolean>exportSelected
Available in 3ds Max 2013 and higher.
<boolean>nvpx.GetExporterMode <integer>Parameter
Returns the exporter mode of the specified parameter.
Available in 3ds Max 2013 and higher.
<boolean>nvpx.SetExporterMode <integer>Parameter <boolean>onOff
Sets the exporter mode of the specified parameter to the boolean value of the second argument.
nvpx.gravityMode : enum : Read|Write gravityMode enums: {#none|#directional|#object}
#directional - Use the direction specified by the nvpx.SetGravity() and returned by the nvpx.GetGravity() methods.
#object - Use the -Z axis of the object specified by the nvpx.gravityObject property.
Available in 3ds Max 2013 and higher.
nvpx.gravityObject : node : Read|Write
Get/set the reference object whose -Z axis defines the Gravity direction when nvpx.GravityMode property is set to #object.
Available in 3ds Max 2013 and higher.
Returns the Gravity vector as a Point3 value expressed in Generic Units / second squared. When the System Units are set to 1GU = 1 Inch, the Gravity defaults to [0,0,-386.221] which is equivalent to [0,0,-9.81] meters per second squared - Earth's acceleration.
Sets the Gravity vector to the given Point3 value.
In 3ds Max 2013 and higher, it is used when nvpx.gravityMode option is set to #directional .
Returns the Geometry Scale factor. Default is 1.0.
Sets the Geometry Scale factor to the Float argument.
Creates a Ground plane at Z height given by the position argument and aligned to the normal vector specified by the second argument.
There can be only one Groud plane in the simulation.
Removes the Ground plane from the simulation.
Returns the scale factor between meters and the current system units. When the System Units are set to 1GU = 1 inch, the value will be 39.3701, the number of inches in one meter.
Sets the Meter to System Units scale factor to a user value, thus defining a new world scale.
Sets the Continuous Collision Detection motion threshold value to the specified floating point parameter.
Returns the number of solver iterations.
Sets the number of Solver Iterations to the integer argument. Returns the new value.
<void>nvpx.SetShapePerElement <boolean>shapePerElement
Sets the Shape Per Element mode to the specified boolean value.
Starts the simulation using the specified time step.
Returns true if the simulation is currently running, false if it is not.
Sets the simulation sub-steps to the given value.
Sets the simulation state to the specified mode without performing an actual simulation.
In 3ds Max 2012, the argument was a boolean, False meaning the simulation was reset, True the simulation was performed.
In 3ds Max 2013, the argument was changed to an integer:
0 - simulation was reset, no simulation data available
2 - simulation has been performed, simulation data available.
<integer>nvpx.GetSimulationState()
Returns the current simulation state as integer.
<void>nvpx.PauseSimulation()
Causes the simulation to be paused.
Adds the node passed as argument to the simulation as a rigid body. Returns 1 on success, 0 on failure. If failed, a message will also be printed to the MAXScript Listener.
Removes the Rigid Body data from the given node.
Removes the Rigid Body data from all scene nodes.
Adds a Constraint to the given node.
Adds a Distance Joint to the given node.
Sets the Rigid Body Shape Flag with the name provided by the second argument in the node specified by the first argument to the boolean value passed as third argument.
Returns true if the Rigid Body of the given node is broken, false otherwise.
Prints detailed information about the specified node.
Sets the node passed as first argument to Dynamic Rigid Body when the second argument is passed as true, or to Static Rigid Body if the second argument is false.
Prints detailed information about the various transformation matrices of the specified node.
Returns the class of the specified node.
<void>nvpx.UpdateCCDCtrlState <node>node
Updates the Continuous Collision Detection control state of the specified node.
Available in 3ds Max 2013 and higher.
Copies the Rigid Body Modifier from the node specified as first argument to the node specified as second argument. Returns true on success, false on failure.
Copies the Rigid Body Mesh with index specified by the second argument from the node specified by the first argument to the Clipboard. Returns true on success, false on failure.
Pastes the Rigid Body Mesh from the Clipboard to the specified node. Returns true on success, false on failure.
The following methods interact with the node's MassFX_RBody Modifier's settings. They can be used to iterate through nodes and modify their Ridig Body settings instead of operating on the modifier itself.
Adds a Rigid Body Mesh to the specified node. Returns the index of the new mesh.
Deletes the Rigid Body Mesh specified by the second argument index from the node specified by the first argument. Returns true on success, false on failure.
Returns the number of Rigid Body Meshes in the specified node.
Returns the name of the indexed Rigid Body Mesh in the specified node.
Renames the given node's Rigid Body Mesh specified by the second index argument to the name specified by the third argument.
Returns the type of the given node's Rigid Body Mesh specified by the second index argument. For the meaning of the return value, see the next method's description:
Sets the type of the given node's Rigid Body Mesh specified by the second index argument to the type as follows:
Returns true on success, false on failure.
Returns the Transformation Matrix of the given node's Rigid Body Mesh with index specified by the second argument.
<boolean>nvpx.SetRBMeshTM <node>inode <integer>meshIndex <&matrix3>pose pose is In and Out parameter
Sets the Transformation Matrix of the given node's Rigid Body Mesh with index specified by the second argument to the matrix3 value passed as third argument. Returns true on success, false on failure.
Returns the radius of the node's indexed Rigid Body Mesh, if applicable (e.g Rigid Body Mesh Type is Sphere, Box or Capsule). Returns 0 otherwise.
Sets the radius of the node's indexed Rigid Body Mesh to the floating point value given by the third argument. Returns true if the Rigid Body Mesh Type supports a Radius value, false if it does not.
Returns the length of the node's indexed Rigid Body Mesh, if applicable (e.g. Rigid Body Mesh Type is Box). Returns 0 otherwise.
Sets the length of the node's indexed Rigid Body Mesh to the floating point value given by the third argument. Returns true if the Rigid Body Mesh Type is Box, false otherwise.
Returns the width of the node's indexed Rigid Body Mesh, if applicable (e.g. Rigid Body Mesh Type is Box). Returns 0 otherwise.
Sets the width of the node's indexed Rigid Body Mesh to the floating point value given by the third argument. Returns true if the Rigid Body Mesh Type is Box, false otherwise.
Returns the height of the node's indexed Rigid Body Mesh, if applicable (e.g. Rigid Body Mesh Type is Box). Returns 0 otherwise.
Sets the height of the node's indexed Rigid Body Mesh to the floating point value given by the third argument. Returns true if the Rigid Body Mesh Type is Box, false otherwise.
Returns the Custom node of the given node's indexed Rigid Body Mesh, if applicable (e.g. Rigid Body Mesh Type is set to Custom). Otherwise returns undefined .
Sets the custom mesh of the node's indexed Rigid Body Mesh to the node given by the third argument. Returns true if the Rigid Body Mesh Type is Custom, false otherwise.
Returns the Vertex Limit value of the node's indexed Rigid Body Mesh.
Sets the Vertex Limit of the node's indexed Rigid Body Mesh to the integer value specified by the third argument. Returns true of the Rigid Body Mesh Type supports Vertex Limts (e.g. Convex), false otherwise.
Returns the Inflation value of the node's indexed Rigid Body Mesh if its type is Convex, undefined otherwise.
Sets the Inflation value of the node's indexed Rigid Body Mesh to the float value specified by the third argument. Returns true of the Rigid Body Mesh Type supports Inflation (e.g. Convex), false otherwise.
Returns the TriMesh value of the node's indexed Rigid Body Mesh if its type is Convex or Custom, undefined otherwise.
Sets the shape of the node's indexed Rigid Body Mesh to the TriMesh value specified by the third argument. Returns true of the Rigid Body Mesh Type has a mesh (e.g. Convex, Custom), false otherwise.
Returns the state of the "Override Physical Material" option in the given node's Rigid Body Mesh.
Sets the state of the "Override Physical Material" option in the given node's Rigid Body Mesh to the value provided by the third argument. Returns true on success, false on failure (for example if the node does not have a Rigid Body Modifier or the meshIndex is invalid).
Returns the Global Position value of the given node, or [0,0,0] if the value cannot be reported.
Sets the Global Position of the given node to the Point3 value passed by-reference as second argument. Returns 0 on success, -1 on failure.
Returns the Linear Velocity value of the given node, or [0,0,0] if the value cannot be acquired.
<integer>nvpx.SetLinearVelocity <node>inode <&point3>linearvelocity linearvelocity is In and Out parameter
Sets the Linear Velocity of the given node to the Point3 value passed by-reference as second argument. Returns 0 on success, -1 on failure.
Returns the Angular Velocity value of the given node, or [0,0,0] if the value cannot be acquired.
<integer>nvpx.SetAngularVelocity <node>inode <&point3>angularvelocity angularvelocity is In and Out parameter
Sets the Linear Velocity of the given node to the Point3 value passed by-reference as second argument. Returns 0 on success, -1 on failure.
Returns the Global Pose value of the specified node, or the identity matrix if the value cannot be reported.
Sets the Global Pose of the given node to the matrix3 value passed by-reference as second argument. Returns 0 on success, -1 on failure.
Returns the Mass value of the given node, or 0.0 if the value cannot be acquired.
Sets the Mass of the given node to the Float value passed as second argument. Returns the new mass, or 0.0 if the setting failed.
Returns the Dynamic Friction value of the given node, or 0.0 if the value cannot be acquired.
Sets the Dynamic Friction of the given node to the Float value passed as second argument. Returns 0 on success, -1 on failure.
Returns the Static Friction value of the given node, or 0.0 if the value cannot be acquired.
Sets the Static Friction of the given node to the Float value passed as second argument. Returns 0 on success, -1 on failure.
Returns the Restitution value of the given node, or 0.0 if the value cannot be acquired.
Sets the Restitution of the given node to the Float value passed as second argument. Returns 0 on success, -1 on failure.
<matrix3 by value>nvpx.GetInitialPose <node>inode
Returns the Initial Pose Transformation Matrix of the specified node.
Available in 3ds Max 2013 and higher.
<void>nvpx.SetInitialPose <node>inode <&matrix3>initialPose initialPose is In and Out parameter
Sets the Initial Pose Transformation Matrix of the specified node to the by-reference matrix3 value.
Available in 3ds Max 2013 and higher.
<boolean>nvpx.CaptureInitTransforms <&node array>nodes nodes is In and Out parameter
Captures the Initial Transforms of the nodes specified by the by-reference array argument. Returns True on success, False on failure.
Available in 3ds Max 2013 and higher.
<boolean>nvpx.GetBakedFlag <node>inode
Returns the Baked Flag of the specified node - True if the node is baked, False if it is not.
Available in 3ds Max 2013 and higher.
<boolean>nvpx.SetBakedFlag <node>inode <boolean>isBaked
Sets the Baked Flag of the specified node to the second boolean argument. Returns True on success, False if the flag could not be set.
<boolean>nvpx.SaveMaterial <string>filename <float>staticFriction <float>dynamicFriction <float>bounciness <integer>density
Saves a Physical Material XML file to the file name specified by the first argument. The second, third, fourth and fifth arguments specify the Static Friction, the Dynamic Friction, the Bounciness and the Density values of the Physical Material. Returns true on success, false on failure.
Loads the Static Friction value from the specified Physical Material XML file and returns it as a Float.
Loads the Dynamic Friction value from the specified Physical Material XML file and returns it as a Float.
Loads the Bounciness value from the specified Physical Material XML file and returns it as a Float.
Loads the Bounciness value from the specified Physical Material XML file and returns it as a Float.
Returns the number of Physical Materials in the scene.
Given the zero-based material index (material 1 has index 0, material 2 has index 1 and so on), returns the integer ID of the material, or 0 if the index is out of range.
Given the material ID returned by the nvpx.MaterialGetId() method, returns the type of the material.
Creates a new unnamed Physical Material Preset of the given type. Returns the material ID as an Integer.
Removes the Physical Material Preset with the given ID. Returns true on success, false on failure.
Returns the parameter of the Physical Material with the specified ID as a string.
The second argument is the Parameter Name which can be one of the following:
Sets the parameter of the Physical Material specified by the first argument with the name specified by the second argument to the string value provided by the third argument.
Returns true on success, false on failure, for example if the parameter name is not supported.
Returns 1 if the Physical Material is visible for Rigid Bodies, 0 if it is not.
Sets the Physical Material Visibility for Rigid Bodies to the integer argument - 1 for visible, 0 for invisible.
Sets three 3ds Max materials to use for display of Dynamic, Kinematic and Static Rigid Body objects. Returns true on success, false on failure.
The following methods operate on any scene node and do not require the node to be a Rigid Body mesh or even a Geometry object.
Creates an nv_Box geometry primitive matching the object-aligned bounding box of the specified node.
Creates an nv_Sphere geometry primitive aligned to the specified node and representing the bounding sphere of the node's bounding box
Creates an nv_Capsule geometry primitive enclosing the node's bounding box.
<node>nvpx.CreateBoundingCapsuleFromPoints <matrix3>poseTransform <&float array>points points is In and Out parameter
Creates an nv_Capsule geometry primitive based on a pose transformation matrix and an array of points to be included inside the capsule.
Creates an Editable Mesh node enclosing the specified node. The second argument limits the number of vertices in the resulting mesh. The third argumed defines the inflation which applies an offset from the bounding surface.
Returns a TriMesh value representing the convex bounding shape of the specified node. The second argument limits the number of vertices in the resulting mesh. The third argumed defines the inflation which applies an offset from the bounding surface. This method is similar to nvpx.CreateBoundingShapeConvex() , but produces the mesh in memory instead of creating a scene node.
<mesh>nvpx.CreateBoundingConvexFromNodes <&node array>inodes <integer>vertLimit <float>inflation inodes is In and Out parameter
Returns a TriMesh value representing the convex bounding shape of all specified nodes. The second argument limits the number of vertices in the resulting mesh. The third argumed defines the inflation which applies an offset from the bounding surface. This method is similar to nvpx.CreateBoundingConvex() , but operates on multiple nodes at once.
Returns a TriMesh value representing the convex bounding shape of the specified TriMesh value. The second argument limits the number of vertices in the resulting mesh. The third argumed defines the inflation which applies an offset from the bounding surface. This method is similar to nvpx.CreateBoundingConvex() , but operates on a TriMesh value in memory instead of a scene node.
<mesh>nvpx.CreateConvexFromPoints <&float array>points <integer>vertlimit <float>inflation points is In and Out parameter
Returns a TriMesh value representing the convex bounding shape encolsing the points specified in the array of floats. The array's number of elements should be 3 times the number of spatial point3 values, with three consecutive floats used as the X, Y and Z components of a single Point3 value.
The second argument limits the number of vertices in the resulting mesh. The third argumed defines the inflation which applies an offset from the bounding surface.
This method is similar to nvpx.CreateBoundingConvex() , but operates on user-defined points instead of geometry vertices.
Set the sleep state of the specified node to the boolean value provided by the second argument.
Returns the number of speeping actors in the scene.
Returns the sleeping node corresponding to the 0-based index argument which should range between 0 and (nvpx.FindSleepingActors())-1
Returns the string value of the given Rigid Body's parameter with the specified name.
Sets the value of the given Rigid Body's parameter with the specified name to the string value supplied as third argument.
Returns the boolean value of the named parameter in the given Rigid Body and Shape nodes.
Sets the string value of the named parameter in the given Rigid Body and Shape nodes to the string value passed as fourth argument.
Returns the value of the specified node's Constraint property. The second argument is the property name.
Sets the value of the named property of the specified node's Constraint. The third argument is the property name. Returns true on success, false on failure.
Returns the value of the SDK parameter with the given name.
For a list of supported SDK parameter names, export a scene to an XML file and browse the content of the file for <NxParameterDesc param="ABC"> tags, where "ABC" is the parameter name.
If the parameter name is unsupported, the return value will be -3.40282e+038 (which is the smallest floating point number).
Sets the SDK paramter with the given name to the value specified by the second argument. See previous method for details.
Sets the SDK parameter with the given name to its default value.
A Contact Report provides information about collisions recorded during the physical simulation including force, location and participating nodes. The contacts can be filtered using a force magnitude threshold to exclude lighter collisions.
Sets the enabled state of Contact reporting to true or false.
Returns the number of recorded contacts.
<boolean>nvpx.SelectFirstContact()
Returns True on success, False on failure.
Available in 3ds Max 2013 and higher.
Sets the internal pointer at the next contact, affecting the following methods for getting the contact Force, Point and Nodes.
Returns the Contact Force of the indexed Contact Record as a Point3 value.
When the index is 0 or not specified, the current Contact Record is used.
New index: optional keyword added in 3ds Max 2013. In 3ds Max 2012, the method returned the current contact only.
Returns the Contact Point of the indexed Contact Record as a Point3 value.
When the index is 0 or not specified, the current Contact Record is used.
New index: optional keyword added in 3ds Max 2013. In 3ds Max 2012, the method returned the current contact only.
Returns the first node of the indexed Contact Record.
When the index is 0 or not specified, the current Contact Record is used.
New index: optional keyword added in 3ds Max 2013. In 3ds Max 2012, the method returned the current contact only.
Returns the second node of the indexed Contact Record.
When the index is 0 or not specified, the current Contact Record is used.
New index: optional keyword added in 3ds Max 2013. In 3ds Max 2012, the method returned the current contact only.
Returns the current Contract Filter value.
Contacts with a Force with vector length (magnitude) less than this value will not be recorded.
Sets the contact filter to a floating point threshold value.
Contacts with a Force with vector length less than this value will not be recorded.
The following methods provide access to 3ds Max Skin data.
Collects Skin Info from the specified node using the second argument as weight threshold. No data will be collected about vertices with weigth below the threshold value. Returns true on success, false on failure (e.g. the node is not a Skinned object).
Returns the number of vertices affected by the specified bone as collected by the nvpx.ParseSkinInfo() method.
Returns an array of floats representing the X, Y and Z components of the vertices affected by the specified bone. The coordinates are in the Bone's local space - to produce world space positions, the Point3 value created from three Float values from the array must be multiplied by the Bone's transformation matrix.
Clears the Skin Info data collected by the nvpx.ParseSkinInfo()
Returns true if the Bone has a Float Limit Control.
Returns the Bone Float Limit value.
Returns true if the specified node is a bone, false if it is not.
Returns the pose transformation matrix of the specified bone.
Returns the Root Bone of the specified Ragdoll.
Returns true if the specified node is a Ragdoll Node.
Loads a Ragdoll Helper Mesh value. Returns true on success, false on failure.
Regenerates the specified Ragodoll node using the array of bone nodes provided by the second argument.
Adds the bone node given by the second argument to the Ragdoll node specified by the first argument.
Removes the bone node specified by the second argument from the Ragodll specified by the first argument.
Specifies the Ragdoll bones of the Ragdoll given by the first argument using the by-reference array passed as second argument. Returns true on success, false on failure.
Saves the Ragdoll specified by the first argument to the file name given by the second argument. Returns true on success, false on failure.
Loads the Ragdoll specified by the first argument from the file name given by the second argument. Returns true on success, false on failure.
Returns true of the specified node is a Biped node, false otherwise.
Returns true if the specified node is a Biped Root node, false otherwise.
Returns true if the specified node is a Biped Footsteps node, false otherwise.
Loads the Physique data of the specified node.
Returns the number of bones associated with the Physique modifier of the specified node.
Returns the indexed bone node from the specified node.
Returns the number of vertices in the node specified by the first argument influenced by the bone provided by the second argument.
Returns the position of the indexed vertex in the node specified by the first argument influenced by the bone given by second argument.
Returns true if the specified node is convex, false if it is concave or not a geometry object.
Returns the Volume of the specified node in generic cubic units.
Starts Indirect Drag by attaching the specified node to the mouse while simulation is running. Returns true on success, false of simulation is not running.
If Indirect Drag is enabled, returns true and stores the mouse position in the by-reference argument. Otherwise returns false
Ends the Indirect Drag. Returns true on success, false otherwise.
Returns the Enabled state of the Visualizer.
Sets the Enabled state of the Visualizer.
Returns the Scale value of the Visualizer. Default is 1.0.
Sets the Scale of the Visualizer to the given floating point value.
Returns the number of PhysX Parameters supported by the Visualizer.
Returns the name of the i-th parameter. The index is 1-based.
Returns the value of the specified Visualizer parameter. Boolean values are represented as integers where 0 is false and 1 is true.
Sets the Visualizer Parameter with the name given by the first argument to the boolean value supplied by the second argument. Returns true on success, false if the parameter name was not recognized. For a list of valid parameter names, see the example below:
Returns the PhysX SDK Version as Integer.
<string>nvpx.GetPhysXSDKVersionString()
Returns the PhysX SDK Version as String.
Available in 3ds Max 2013 and higher.
<integer>nvpx.GetPhysXSDKVersionMajor()
Returns the PhysX SDK Major Version as Integer
Available in 3ds Max 2013 and higher.
<integer>nvpx.GetPhysXSDKVersionMinor()
Returns the PhysX SDK Minor Version as Integer
Available in 3ds Max 2013 and higher.
<integer>nvpx.GetPhysXSDKVersionBugFix()
Returns the PhysX SDK Bug Fix Version as Integer
Available in 3ds Max 2013 and higher.
Returns the Apex SDK Version as Integer.
Returns the number of installed PhysX Plugins.
Returns the version number of the indexed PhysX Plugin.
If the index is less than 1 or higher than the value returned by nvpx.GetPhysXPluginCount() , the return value will be 0.
<string>nvpx.GetPhysXPluginVersionString <integer>Index
Returns the Version of the indexed PhysX Plugin as String.
Available in 3ds Max 2013 and higher.
<integer>nvpx.GetPhysXPluginVersionMajor <integer>Index
Returns the Major Version of the indexed PhysX Plugin as Integer.
Available in 3ds Max 2013 and higher.
<integer>nvpx.GetPhysXPluginVersionMinor <integer>Index
Returns the Minor Version of the indexed PhysX Plugin as Integer.
Available in 3ds Max 2013 and higher.
<integer>nvpx.GetPhysXPluginVersionBugFix <integer>Index
Returns the Bug Fix Version of the indexed PhysX Plugin as Integer.
Available in 3ds Max 2013 and higher.
<bool>nvpx.IsAutodeskVersion()
Returns True if the PhysX plugin is the Autodesk MassFX version, False if it is an NVidia or 3rd party build.
Available in 3ds Max 2013 and higher.
<string>nvpx.GetPluginCompanyName()
Returns the company-specific plugin name.
In the case of the Autodesk build, returns "MassFX".
Available in 3ds Max 2013 and higher.
<string>nvpx.GetScriptPath()
Returns the path to the MassFX related scripts.
Available in 3ds Max 2013 and higher.
<void>nvpx.BeforeAddPhysXActors()
Available in 3ds Max 2013 and higher.
Creates the MassFX Simulation Toolbar.
When the boolean argument is passed as true , shows the MassFX Simulation Toolbar.
When the boolean argument is passed as false , hides the MassFX Simulation Toolbar.
This method was available in 3ds Max 2012 but has been REMOVED from 3ds Max 2013.
Shows the Validate Scene dialog.
When the boolean argument is true , the tests will also be performed automatically.
When the boolean argument is false , the tests will not be performed and will require the manual pressing of the "Validate" button.
Returns true if PhysX acceleration hardware is available, false otherwise.
Returns the screen height in pixels.
Returns the simulation frame rate as a floating number of frames per second.
When the boolean argument is passed as true , turns on the automatic simulation frame rate printing to the MAXScript Listener.
When the argument is false , the frame rate printing will be turned off.
Switches to the indexed PhysX plugin.
Returns true on success, false on failure (e.g. plugin index out of range).
Additionally prints a message to the MAXScript Listener "Switch PhysX SDK to XXX" where XXX is the SDK version returned by nvpx.GetPhysXPluginCount() .
Opens the MassFX Help File, if available.
Returns true if the APEX Cloth Simulation is available in the current plugin, false otherwise.
Prints a debug text to the MAXScript Listener, containing information about the current state of the PhysX Engine and the simulation objects in the scene.
Prints a list of all methods implemented by the nvpx Interface. Similar to calling showInterface nvpx .
<void>nvpx.SetAnimationState <boolean>state
Sets the animation state to the specified Boolean value.
Available in 3ds Max 2013 and higher.
<boolean>nvpx.GetAnimationState()
Returns the animation state as Boolean value.
Available in 3ds Max 2013 and higher.
<string>nvpx.GetPluginBuild()
Returns the plugin build string.
Available in 3ds Max 2013 and higher.
<void>nvpx.ShowAboutDialog()
Opens the MassFX About Dialog.
Available in 3ds Max 2013 and higher.
<integer>nvpx.GetBehaviorReason()
Returns an integer representing the Behavior Reason mode.
Available in 3ds Max 2013 and higher.
<boolean>nvpx.SetBehaviorReason <integer>mode
Sets the Behavior Reason to the specified integer mode. Returns True on success, False on failure.
Available in 3ds Max 2013 and higher.
<integer>nvpx.GetVirtualScreenX()
Returns the Virtual Screen's X size.
Available in 3ds Max 2013 and higher.
<integer>nvpx.GetVirtualScreenY()
Returns the Virtual Screen's Y size.
Available in 3ds Max 2013 and higher.
<void>nvpx.DumpContentCore <string>file <integer>Type
Creates an XML file with the specified file name containing all core settings.
The second argument controls the content type - 0 outputs only the objects definitions, 1 or any non-zero argument also includes all type definitions.
Available in 3ds Max 2013 and higher.
<void>nvpx.SwitchSDKOnPanelData()
<void>nvpx.CreateViewer()
Available in 3ds Max 2013 and higher.
<void>nvpx.PreCreateViewer()
Call before creating the Viewer.
Available in 3ds Max 2013 and higher.
<void>nvpx.PostCreateViewer()
Call after creating the Viewer.
Available in 3ds Max 2013 and higher.
<boolean>nvpx.ShouldViewerSync()
Returns the Viewer sync state. Default is False.
Available in 3ds Max 2013 and higher.
<integer>nvpx.GetViewerCommand()
Available in 3ds Max 2013 and higher.
<integer>nvpx.SetViewerCommand <integer>command
Available in 3ds Max 2013 and higher.
<void>nvpx.CheckViewerState()
Available in 3ds Max 2013 and higher.
<void>nvpx.UpdateViewerPlayback()
Updates the Viewer's playback.
Dumps the profiling information collected between the Begin and End calls. The information will contain a line for each defined profiler and the Average, Minimum, Maximum and Total times, as well as the number of times a simulation has been run.
Returns true if the PhysX engine supports multi-threading, false if it does not.
Returns true if Multi-Threading is enabled, false if it is disabled. Default is false.
If the argument is true, enables Multi-Threading. If the argument is false, disables it.
Returns true if hardware acceleration is currently supported, false if it is not.
Returns true if hardware acceleration is enabled, false if it is disabled.
If the argument is true and hardware acceleration is supported, enables hardware acceleration. If false, disables hardware acceleration. Returns true on success, false if hardware acceleration is not supported.
The following methods are used to perform internal unit tests and should not be called by users.
<node>nvpx.CreateDestruction <&node array>nodes nodes is In and Out parameter
Creates a Destruction setup using the nodes in the by-reference array argument.
Available in 3ds Max 2013 and higher.
<void>nvpx.UpdateDamageForces <float>Damage <float>Momentum <float>Radius
Updates the Damage Forces using the specified damage, momentum and radius.
Available in 3ds Max 2013 and higher.
<void>nvpx.ToggleBomb()
Available in 3ds Max 2013 and higher.
<void>nvpx.ToggleHammer()