emPolygonizer

(version
Last edited on May 14th, 2014)

Introduction

Introduction

Read me first:
emPolygonizer4 is available for Softimage and Maya.
Since this documentation covers the emPolygonizer4 versions for all the above 3D applications certain parts that concern only a specific application will be marked like this: [3D App].

This plugin is a "mesher", i.e. it creates polygon meshes based on one or more input objects by polygonizing so-called scalar fields (or isofields), a method that is also called "Metaballs" or "Marching Cubes".

[Softimage] The operator accepts any combination of nulls, curves, polygon meshes and point clouds as inputs. Furthermore it is possible to directly mesh the internal fluid grids of emFluid4 and to mesh the Lagoa cloth topology (including tearing).

[Maya] The node accepts any combination of locators, curves, polygon meshes and particle systems as inputs.

On the emPolygonizer4 web page you can:

  • download the demo version of this plugin.
  • download demo and tutorial scenes.
  • purchase the full version of this plugin.

Note: If you feel that something is not well explained (or not explained at all) then please write me a short e-mail. I will then update the documentation and/or make a demo scene as quickly as possible.

Tip: Check out the following sites for more information, videos and discussions:
si-community.com - the unofficial Softimage community
softimage.tv - the Softimage user based video library
SimplyMaya - a site dedicated to teaching Maya

Installation [Softimage]

Please read the following before installing the plugin:

  • This plugin will only work correctly if the addon emTools is also installed, so please make sure you have the most recent emTools installed!

  • If you have a version 4.0 or higher of this plugin already installed (or perhaps a beta version of emPolygonizer4) then you must uninstall it first.
    To do that go into Softimage|XSI's "Plugin Manager", right-click on the plugin and choose "Uninstall Addon".

  • emPolygonizer4 can co-exist and be used simultaneously with any of the former emPolygonizer versions (emPolygonizer v.1.xx, emPolygonizer2 v.2.xx, emPolygonizer3 v.3.xx or the Polygonizer that comes with Softimage 2011.5 and above).

Installing the addon:

  1. Open the "Plugin Manager". It is located under "File -> Plugin Manager":

  2. As mentioned above: please remove / uninstall any previous version of this plugin. This is really important, because if Softimage finds the same plugin twice then one (maybe even both) might not work.

  3. To install the plugin into the user directory simply right-click onto the folder "User Root" and choose "Install .xsiaddon...":

  4. A browser dialogue will be displayed: go to where you copied the .xsiaddon file, select it and click on "OK". The addon is then automatically installed.

  5. Close Softimage. The plugin is now fully installed and ready to be used. For more information concerning addons and how to install / uninstall them please check the chapter "Working with Addons" in the Softimage documentation.

Installation [Maya]

The following files belong to the plugin:

  • emPolygonizer4.mll
    This is the compiled C++ code of all the nodes.
  • AEemP4[Null|Curve|Polymesh|Pointcloud]Template.mel
    These MEL scripts control how the node parameters are displayed in Maya's attribute editor.
  • vcomp.dll
    A dynamic library.

There are many ways to install plugins in Maya, here are two of them:

  1. simply copy all the files that belong to the plugin into Maya's plugin directly, for example:
    "C:\Program Files\Autodesk\Maya2012\bin\plug-ins"

  2. put all the plugin's files into some folder of your choice (e.g. "D:\MyMayaPLugins\emPolygonizer4\") and then define and set the following Maya environment variables accordingly:

    • MAYA_PLUG_IN_PATH = "D:\MyMayaPLugins\emPolygonizer4\".
    • MAYA_SCRIPT_PATH = "D:\MyMayaPLugins\emPolygonizer4\".

Once you installed the plugin you will have to go into Maya's plugin manager and enable "Loaded" and/or "Auto load".

Please check out the Maya documentation for more information on how to install / uninstall plugins or ask your system administrator or TD to help you.

Demo Version Restrictions

If you are using the full version of this plug-in then you can skip this chapter. If not, please read the following list of restrictions of the demo version:

  • The operator only works between frame 1 and frame 100.

  • The text "DEMO VERSION" is contained in the custom operator's property page.

  • [Maya] The amount of output polygons is limited to half a million.

  • [Maya] The node will not create polygons when Maya is executed in "batch" mode.

  • [Softimage] There is a built-in memory limit of about 20 Megabytes, thus limiting the level of detail and the number of polygons for the output meshes.

  • [Softimage] Nearly all parameters of the tab "Advanced" of the operator's property page are unavailable.

Note: while testing the demo version you will probably encounter messages like for example "not enough memory", "reached memory limit" or "too many polygons". These are not bugs, it's simply the demo version restriction.

Quick Setups [Softimage]

Creating an emPolygonizer4 polygon mesh only takes a few clicks:

  • Select the objects you want to use as inputs.

  • Choose "Model -> Poly.Mesh -> emPolygonizer4".
    The property page of the freshly created emPolygonizer4 mesh pops up.

  • Tweak the "Level of Detail".

In the tab "Tools" you can use the "Add" and "Remove" buttons to connect/disconnect input objects.

Quick Setups [Maya]

The fastest way to create an emPolygonizer4 polygon mesh:

  • Select the objects you want to use as inputs.

  • in the command line type emP4Create and press return.
    (note: use emP4Create -h to get a list of available flags and parameters).

  • Tweak the "Level of Detail".

Nodes, Ports and Connections [Maya]

The input objects (nodes) and the emPolygonizer4 nodes (the "emP4" nodes) need to be connected in a certain way in order for things to work properly.

The easiest way to find out how things need be connected is to create an emPolygonizer4 setup using the "emP4Create" command (see Quick Setups) and then to go take a look at the connections in the Node Editor.

The Custom Operator's Property Page

Property Page

This chapter covers all the tabs and parameters of the custom operator's property page (Softimage) and main emP4 node (Maya).

[Softimage ] There are three algorithms for building meshes:

         1. "Marching Cubes / Marching Tetrahedrons"
         2. "Simple as Primitives"
         3. "Bounding Boxes of input Objects"

[Softimage ] The parameters and tabs of the property page change depending on which algorithm is currently active, so this chapter is divided into three parts, one for each algorithm.

The Property Page when using "Marching Cubes"

Marching Cubes

A polygonized Lagoa point cloud:

Rendered with Arnold and SItoA from SolidAngle

 

Tab Main

This tab contains the operator's main parameters.

  • Active
    Enables/disables the operator.
    [Softimage] If this is unchecked you can force the operator to update the mesh by clicking on the "Refresh" button.

  • Progress Bar
    Enables/disables the progress bar during the creation of the mesh.
    When working with complex setups the progress bar gives you the possibility to monitor the progress and to cancel the operation.
    Note (Windows only): you can also cancel the operation by pressing simultaneously the left and right CONTROL keys. This works with or without the progress bar.

  • Refresh Button [Softimage]
    Forces the operator to refresh the mesh. Typically used when the parameter "Active" is disabled.

  • Algorithm ID (the three big icons) [Softimage]
    The algorithm that shall be used when building the mesh:

    • "Bounding Boxes" (left icon)
    • "Simple as Primitives" (middle icon)
    • "Marching Cubes / Marching Tetrahedrons" (right icon)
  • Algorithm [Maya]
    The algorithm to use for the meshing:

    • "Marching Cubes"
    • "Marching Tetrahedrons"
  • Marching Tetrahedrons (the three big icons) [Softimage]
    Enables "Marching Tetrahedrons". This is an alternative meshing algorithm which uses tetrahedrons rather than cubes.
    Note: the resulting meshes have more polygons than with "Marching Cubes".

  • Isolevel
    Defines the isolevel barrier at which geometry is generated.
    Higher values produce "tighter" meshes, but smaller parts might disappear.

    General rule: the higher this value the more iso must be present to create a surface.

  • Level of Detail
    Defines how much detail is generated.
    Higher values result in more detail, but require more memory and more calculations.

    Note: higher values will always result in more and smaller polygons, however this is not always a good thing. For example when meshing point clouds that shall look like liquid it generally is better to have the polygons small enough to get all the needed detail but also big enough to not see the individual blob spheres.
    => start with small LOD values and then slowly move to higher values until the mesh looks good.

  • Mul.Iso / Mul.Radius / Mul.Falloff
    Multipliers for the iso, radius and falloff values of all input objects.
    Note: If you want to modify the iso/radius/falloff value for a single input object you need to go into its custom property set.

  • Enable Motion Plotting
    Enables/disables motion plotting.
    When active the motion of the input object is considered when filling the isofield. For example a fast moving null would result in a stretched sphere.
    There is more detailed information here: the tab "Motion".

  • Speed
    Speed multiplier.
    Use higher values to enhance the effect of motion plotting.

  • Offset
    Frame offset.

  • Compensate
    The amount of compensation when an object is stretched (=the longer it gets the thinner it becomes, thus preserving its volume).
    There is more detailed information here: the tab "Motion".

  • Enable Liquid Filaments
    Enables/disables liquid filaments.
    There is more detailed information here: the tab "Liquid".

  • Detail
    A multiplier for the level of detail of the liquid filaments.

  • Distance
    A multiplier for the distance (or length) of the liquid filaments.

  • Iso
    A multiplier for the liquid filament's iso.

  • Smooth Mesh

    • Enable Smoothing
      Enables/disables the smoothing of the final mesh.
      This has a high impact on the whole look of the mesh.

    • Iterations
      Amount of iterations when smoothing.

    • Shrink (Convex/Neutral/Concave)
      When the mesh is smoothed it tends to shrink, which is something you want to have but not for all parts of the mesh. These parameters let you specify the amount of shrinking for the convex, neutral and concave parts of the mesh.

    • Convex/Neutral/Concave Angle
      The angles (between the normal vectors) that define when a point is considered to be convex, neutral or concave.

    The following images show a non-smoothed mesh (left) and a smoothed mesh (right).


 

Tab Tools [Softimage]

This tab provides a set of tools to pick, connect, disconnect, select and inspect objects (nulls, curves, polygon meshes and point clouds).

  • Active / Progress Bar / Refresh Button
    Same as in the tab "Main".

  • Add / Remove Input Objects
    Use these buttons to (dis)connect objects to/from the operator.
    The behavior of both buttons depends on the current selection:

    • If nothing is selected then a picking session is started. Click on the objects you want to connect/disconnect.
    • If one or more objects are selected then they are immediately connected/disconnected to the operator.
  • Objects / Properties (Select connected)
    Selects all objects or properties that are connected to the operator.

  • Create and connect a Null
    This will create a null and connect it to the operator. Surplus the null has a special display for a better visual feedback.

  • Re-Pick Custom Property
    This let's you re-pick the custom property of a connected input object. Note: a connected object can have more than one emPolygonizer4 custom property, but only one is used by the operator.

  • Inspect connected Objects
    These buttons can be used to display the property page of the custom property sets of connected objects.

  • Re-connect the Polygon Meshes' Cluster Properties
    This is somewhat special:
    Cluster properties and weight maps can be used to drive certain parameters (see polygon mesh custom property).
    In rare cases (for example after connecting a polygon mesh that already has an emPolygonizer4 custom property set, or if clusters or cluster properties were renamed) it can happen that the cluster properties are not connected to the operator.
    Clicking on this button will re-connect all cluster properties to the operator.

 

Tab Data [Softimage]

It is possible to create so-called "user data" for the mesh, for example motion vectors for rendering deformation motion blur.

  • Active / Progress Bar / Refresh Button
    Same as in the tab "Main".

  • Vertex Colors
    Vertex colors are great: they make your mesh look good in the viewport and good at render time. Surplus they can be accessed in the Render Tree which gives you many additional possibilities when it comes to shading.
    The vertex colors are available as ICE data called "emP4_Color".

  • Motion Vectors
    These are required if you want to render motion blur.
    The motion vectors are available as ICE data called "PointUserMotions".
    The button " ? " will display some important information when working with motion blur.

    • Scale Sim
      The scale of the motion vectors when the mesh is created (simulated).

    • Scale Cache
      The scale of the motion vectors when reading a cache file.
      Note: when caching files you should set the "Scale Sim." to 1.

  • Normal Vectors
    The normal vectors are built from the internal isofield values.
    The button " ? " will display some important information when working with user normals. Note: in many cases normal vectors are NOT recommended, for example when using liquid filaments or when caching non-smoothed meshes.
    The normal vectors are available as ICE data called "NodeUserNormal".

 

Tab Data [Maya]

It is possible to create some additional data for the mesh such as for example vertex colors.

  • Calculate Colors
    Vertex colors are great: they make your mesh look good in the viewport and good at render time. Note that in order to see the vertex colors in the viewport you must enable "Display Colors" in the "Mesh Component Display" options of the emP4 shape node.

  • Calculate Motions
    not yet documented.

  • Scale Sim
    The scale of the motion vectors when the mesh is created (simulated).

  • Scale Cache
    The scale of the motion vectors when reading a cache file.
    Note: when writing cache files you should set the "Scale Sim." to 1.

 

Tab UVWs [Softimage]

Use this tab to enable the creation of texture coordinates (UVWs).

Unlike vertex colors the UVWs need to be simulated. This means that there is a start frame and an initialization phase.
To get proper and predictable UVWs one needs to simulate and cache the mesh (using the RealFlow ".bin" or the new ".mzd" file format).

It is possible to connect nulls, polygon meshes and implicit cubes to control in which way UVWs are initialized (see below).

The UVWs are available as ICE data called "emP4_UVWs".

  • Active / Progress Bar / Refresh Button
    Same as in the tab "Main".

  • UVWs
    Texture coordinates (UVWs) are used to map textures (2D or 3D) onto the meshes.
    The button " ? " will display some information when working with UVWs.

    Note: it is recommended to enable motion vectors when working with UVWs!

    Initialization:

    • Global Start Frame
      The global start frame at which the UVWs are initialized.

    • Mode
      The initialization mode for the UVWs.

    • The buttons Add/Remove/Select
      Use these buttons to connect a null or a polygon mesh to the UVW operator. The null (or polygon mesh) is used by the operator as a kind of spatial texture projection to initialize the UVWs.

    Initialization Volumes:

    Certain scenarios require that certain parts of the mesh get initialized with "fresh UVWs" at each frame rather than just once. It is possible to connect bounding volumes (implicit cubes) to the UVW operator. These bounding volumes define the regions that need to be updated at each frame. The bounding volumes also have a custom operator to control the strength of the initialization (see below).

    • Use Volumes
      Enables/disables the use of bounding volumes.

    • Strength
      The global strength of the initialization of the bounding volumes.

    • The buttons Add/Remove/Select
      Use these buttons to connect bounding volumes (implicit cubes) to the UVW operator.

    The bounding volumes that are connected to the UVW operator have a custom property called "emPolygonizer4_UVWInitVolume".

    • Active
      Enables/disables the bounding volume.

    • Strength
      The strength of the initialization of the bounding volume.

    • Falloff Type
      The more a point is inside the volume the more it gets initialized and this parameter controls the falloff type.

emPolygonizer4 always and only generates 3D texture coordinates, hence UVWs instead of UVs. The UVWs can be used for 2D textures (e.g. bitmaps) or 3D textures (e.g. procedural marble). Below an example using a bitmap (left) and a procedural marble (right).

 

Tab UVWs [Maya]

Use this tab to enable the creation of texture coordinates (UVWs).

Note: why "UVWs" and not "UVs"?
Internally emPolygonizer only works with UVWs, meaning 3D texture coordinates. However only the U and V components are used by Maya.

Unlike vertex colors the UVWs need to be simulated. This means that there is a start frame and an initialization phase.
To get proper and predictable UVWs one needs to simulate and cache the mesh (using the RealFlow ".bin" or the new ".mzd" file format).

It is also possible to connect locators to the main emP4 node to control in which way UVWs are initialized (see below).

  • Calculate UVWs
    Texture coordinates (UVWs) are used to map textures (2D or 3D) onto the meshes.
    The button " ? " will display some information when working with UVWs.

  • Calculate Motions
    It is highly recommended to enable motions when working with UVWs.

  • Init. Start Frame
    The global initialization start frame at which the UVWs are initialized.

  • Init. Mode
    The initialization mode for the UVWs.

  • Init. Motion Scale
    A scale for the motions when calculating UVWs.

  • Use Init. Volumes
    Enables/disables the use of bounding volumes.

  • Init. Volume Strength
    The global strength of the initialization of the bounding volumes.

  • Falloff Type
    The more a point is inside the volume the more it gets initialized and this parameter controls the falloff type.

Using locators for the UVW initialization:

By default the texture coordinates are initialized with the vertex position. It is however possible to provide the emP4 node with a custom transformation matrix which defines the texture space. The matrix typically comes from a locator's global matrix, as shown in the below picture:

Once the locator is connected one can control the UVW initialization by translating, rotating and scaling the locator.

Certain scenarios require that certain parts of the mesh get initialized with "fresh UVWs" at each frame rather than just once at the initialization start frame. It is possible to connect bounding volumes (i.e. implicit cubes) to the UVW operator. These bounding volumes define the regions that need to be updated at each frame. The bounding volumes are simply defined by a transformation matrix.
In order to have a visual feedback of the volume in the viewport it is recommended to use a renderBox node instead of a locator (execute createNode renderBox in the command line to create such a node).
In the following picture a locator is used for the UVWs initialization and two renderBoxes as initialization volumes:

 

Tab Caching [Softimage]

This tab contains all the parameters for the geometry caching.
Caching the geometry is a very important part when working with emPolygonizer4.

Note that the emp2 cache files can also be read by the built-in Polygonizer (Softimage 2011 SAP and above).

  • Active / Progress Bar / Refresh Button
    Same as in the tab "Main".

  • Action
    The caching modes:

    • No Caching
      Disables all geometry caching (neither write nor read)
      => the geometry is always created through simulation.
      This is the default.
    • Simulate and Write
      Always simulate (=create) the mesh and write it to disk (existing files are overwritten).
    • Read only
      always read cached data and never simulate. If no cached data was found then an error occurs.
    • Read or Simulate
      read cached data if available, else simulate (without writing data to disk).
    • Read or Simulate and Write
      read cached data if available, else simulate and write the data to disk.
      This is sort of a "Skip rendered Frames" mode.
  • Mute Polymsh.Set()
    Mutes the creation of geometry within Softimage, thus decreasing the simulation and caching time, especially when creating and caching heavy meshes.
    Note: this feature is only available when using the caching mode "Simulate and Write".

  • Smooth when reading Cache.
    If enabled then geometry is smoothed after being read.
    The button " ? " will display some further information concerning this parameter.

  • Smooth when writing Cache.
    If enabled then geometry is smoothed before being cached.
    Note: if you are caching some geometry for an application other than emPolygonizer4 (e.g. the built-in Polygonizer or a RealFlow Reader in Max/Maya) then you should enable this!

  • Range / Extrapolation
    It is possible to define a range in which the caching operates.

    • Use Range
      Enables/disables the use of the frame range.
      If the frame range is enabled then ..

      • .. the actions "Read or Simulate" and "Read or Simulate and Write" behave exactly like the action "Read only", in other words: nothing is simulated nor written to disk.
      • .. the action "Simulate and Write" will always simulate the mesh but only write the geometry to disk if the simulation frame is within the frame.
    • Start Frame
      The start frame of the frame range.

    • End Frame
      The end frame of the frame range.

    • Copy From Timeline
      Sets the start and end frame equal the timeline's start and end frame.

    • Extrapolation
      Defines what to do when the frame is outside the frame range.

  • File Input/Output
    Defines the path, file name and file format of the cache files.

    The supported file formats:
    • "Proprietary, binary (.mzd)"
      this binary proprietary file format is the default for caching geometry.
      Its file size is the smallest, making it the best choice for distributed rendering, and it supports vertex colors, motion vectors, user normals and UVWs.

    • "Proprietary, binary (.emp2)"
      this binary proprietary file format supports vertex colors, motion vectors and user normals.
      These files are compatible with older emPolygonizer versions as well as the built-in Polygonizer of Softimage 2011.5 and above.

    • "Wavefront (.obj)"
      the Wavefront obj file format is a well-known ASCII file format which is supported by most of the existing 3D packages, making it a good choice if you want to re-use the cached geometry in another 3D software or maybe even edit the files with a text editor.
      The disadvantages of the obj file format are the relatively large file sizes (longer read and write times, especially in a network) as well as the fact that vertex colors and motion vectors are not supported.

    • "Proprietary, ascii (.emp2)"
      this proprietary file format is a basic ASCII format, similar to the Wavefront format.
      It has all the disadvantages of the Wavefront format (i.e. file size) and is definitely not supported by any other 3D package.
      Its two main advantages are the fact that it is an ASCII format (and therefore editable) and that this format supports vertex colors, motion vector colors, etc.
      These files are compatible with older emPolygonizer versions as well as the built-in Polygonizer of Softimage 2011.5 and above.

    • "RealFlow (.bin)"
      the binary geometry format from RealFlow that can easily be imported into Maya or 3ds Max.
      It supports motion vectors and UVWs.

  • Frame Offset
    If the current caching mode is "read only" then a frame offset can be specified here.

Mesh Fixing

When using the caching mode "read only" one can enable some features that will correct and fix certain "uncleanliness", like for example non-manifold edges or holes in the mesh.

  • Fix double Edges
    Fixes double edges.

  • Fix non-manifold Edges
    Fixes non-manifold edges (= edges that are used by more than two polygons).

  • Close Holes
    Closes holes in the mesh.

  • Hole's max. size (-1: OFF)
    Holes that are bigger than this value are not closed.

  • Hole's max. Vertices
    Holes with more vertices than this values are not closed.

Note (Arnold users): it is recommended to enable "Fix double Edges" and "Fix non-manifold Edges", especially when using subdivision.

 

Tab Caching [Maya]

This tab contains all the parameters for the geometry caching.
Caching the geometry is a very important part when working with emPolygonizer4.

  • Mode
    The caching modes:

    • No File Caching
      Disables all geometry caching (neither write nor read)
      => the geometry is always created through simulation.
      This is the default.
    • Simulate and Write
      Always simulate (=create) the mesh and write it to disk (existing files are overwritten).
    • Read only
      always read cached data and never simulate. If no cached data was found then an error occurs.
  • Don't set Maya Mesh
    If enabled then the final geometry is not passed to Maya, thus decreasing the simulation and caching time, especially when creating and caching heavy meshes.
    Note: this feature is only available when using the caching mode "Simulate and Write".

  • Path, Filename and Fileformat
    Defines the path, file name and file format of the cache files.

    For a list of supported file formats please go here.

 

Tab Advanced [Softimage]

  • Active / Progress Bar / Refresh Button
    Same as in the tab "Main".

  • Use Memory Limit
    Enables/disables the use of the memory limit.
    It is recommended to use the memory limit.

  • Memory Limit (MB)
    The memory limit in megabytes.

  • Number of Threads
    The amount of threads to use for the multithreading or zero for automatic.

  • Strength
    Strength of the isofield blur. When generating vertex colors, user normals or motion vectors it is highly recommended to set this value greater than 0.

  • Iterations
    Amount of blur iterations.

  • Accurate
    If enabled then an accurate octree blur is performed else a normal octree blur.
    The accurate blur requires a little more memory but produces better results. The calculation times are about the same.

  • Blur in X/Y/Z
    Enable/disable the blur along the X/Y/Z axis.

  • Recycle Isofield (0=OFF)
    No documentation available.

  • Epsilon
    No documentation available.

  • Global Switches for Input Objects / Components

    • Filter by Implicit volumes

      • Filter by Volumes
        Enables/disables filtering by volume.
        If this is enabled then only the elements contained in the connected volumes (= implicit cubes) are used for meshing.

      • Invert
        Inverts the volume.

      • The Buttons "Add / Remove"
        Use these buttons to connect/disconnect implicit cubes.

      • The Button "Select All"
        Selects all connected implicit cubes.

    • Switches

      • Use Switches
        Enable this to use the switches.
        When enabled a whole bunch of switches shows up with which you can disable certain objects types or certain components.
        The parameters are self-explanatory and there's a little '?' button with some additional information.
  • Create ICE Data from internal Representation

    This special feature can be used to make emPolygonizer4 "drop its pants": it will output its internal representation (=IR) of all input objects as ICE data arrays. The data can then be used to create particles, to feed the polygonizer of emTopolizer2, etc. For more information regarding this feature please watch this video tutorial. It is only twelve minutes long and demonstrates the usage of this powerful feature.

    • Active
      Enable this to make emPolygonizer4 output its internal representation as ICE arrays.

    • Mute Mesh Creation
      Mutes the creation of the mesh, thus speeding up things considerably, especially when one only needs the ICE data but not the actual mesh.

  • Preferences

    • On Error
      Defines what happens when an error occurs.

    • Show rarely needed Parameters
      Shows the hidden parameters.

    • Show Refresh Button in all Tabs
      Shows the trio "Active, Progress Bar and Refresh" in the top of every tab.

    • Use Text rather than Icons and Bitmaps
      Enables/disables the icons in the PPG.

    • Enable Abortion through L+R Ctrl Keys
      Allows the abortion of the meshing by pressing the left and right CONTROL key simultaneously.

      Note: unfortunately this is only available for Windows.
      If a Linux coder reads this and knows how to get the states of the CONTROL keys please let me know.

    • Verbose in History Log
      Outputs some verbose in the history log.

    • Always Evaluate Operator on Time Change
      Forces the operator to update at each frame change.

 

Tab Advanced [Maya]

  • Simulation

    • Multithreaded
      Enable/disable multithreading.

    • Enable Abortion through L+R Ctrl Keys
      Allows the abortion of the meshing by pressing the left and right CONTROL key simultaneously.

      Note: unfortunately this is only available for Windows.
      If a Linux coder reads this and knows how to get the states of the CONTROL keys please let me know.

    • Verbose
      Outputs information in the script editor.

    • Verbose (Debug)
      Outputs debugging information in the script editor.

    • Max Tile Size
      not yet documented.

    • Tile Border
      not yet documented.

  • Blur Isofield

    • Strength
      Amount of blur.

    • Iterations
      Number of iterations.

  • Filter

    • Pass 1 Strength
      not yet documented.

    • Pass 2 Octree Depth
      not yet documented.

    • Fix non-manifold Edges
      Fixes non-manifold edges (= edges that are used by more than two polygons).

    • Fix double Edges
      Fixes double edges.

    • Close Holes
      Closes holes in the mesh.

    • Triangulate 5+ Polygons
      Triangulates all polygons that have five or more vertices.

  • Quadrangulate

    • Enable
      Enable/disable quadrangulation.

    • Incidence Angle
      The maximum difference between the normals of two adjacent triangles.
      Higher angle values result in more quads.

    • Max Corner Right Angle Deviation
      The maximum allowed deviation from a right angle.

 

The Property Page when using "Simple as Primitives"
[Softimage]

Simple as Primitives

The algorithm "Simple as Primitives" is a by-product of the algorithm "Marching Cubes". It is an easy and fast way to create some interesting meshes. The algorithm consists of simply copying some input geometry onto the points and surfaces of the input objects.

Below an example with a deformed torus as an input object, once with randomized tetrahedrons (left) and once with randomized custom polygon meshes (right).

 

Tab Main

This tab contains the operator's main parameters.

  • Active / Progress Bar / Refresh Button
    Algorithm ID (the three big icons)
    Same as in the tab "Main".

  • PrimitiveID
    Specifies the geometry that is to be used:

    • Point
    • Tetrahedron
    • Cube
    • Dodecahedron
    • Custom Polygon Mesh(es)

    When using Custom Polygon Mesh(es) then some additional parameters and functions appear below.

  • Size
    A multiplicand for the size.

  • Align Rotation
    Enable/disable the alignment.

  • Random Seed
    Random seed for the randomness.

  • Randomness (Size)
    Amount of randomness for the size.

  • Randomness (Direction)
    Amount of randomness for the direction.

  • Randomness (Roll)
    Amount of randomness for the roll.

  • Custom Polygon Meshes

    • Allocation
      Sets the way in which the custom polygon meshes (if more than one) are distributed onto the input objects and their points.

    • Random Seed
      Random seed for the distribution randomness.

    • Index Offset
      Index offset.

    • The Buttons "Add / Remove"
      Use these buttons to connect/disconnect custom polygon meshes.

    • The Button "Select All"
      Selects all connected custom polygon meshes.

 

Tab Tools

 

This tab is identical for all algorithms, please go here for more information.

 

Tab Advanced

 

This tab is identical for all algorithms, please go here (Softimage) or here (Maya) for more information.

 

The Property Page when using
"Bounding Boxes of input Objects"
[Softimage]

Bounding Boxes

 

Tab Main

This mode is a by-product of the debugging phase during the development of this plugin.

When using many, many input objects this mode can be useful in order to have a rough yet fast visual feedback.

There are no parameters available when using this mode.

Tab Tools

 

This tab is identical for all algorithms, please go here for more information.

 

Tab Advanced

 

This tab is identical for all algorithms, please go here (Softimage) or here (Maya) for more information.

 

Hidden Parameters [Softimage]

Aside from all the usual parameters are also a few hidden ones. These are usually rarely used and are not exposed in the PPG by default in order to not have too many unnecessary and confusing parameters.

 

Enable the parameter Show rarely needed Parameters in the tab "Advanced" to display the hidden parameters.

 

Hidden Parameters in the tab "Main"

  • Mul.Centers / Mul.Points/Polygons
    Switches that will enable/disable the parameters Mul.Iso/Radius/Falloff for centers and/or points and polygons.

Hidden Parameters in the tab "Advanced"

  • Filter Points (Geometry Cleanup)
    Strength of point filtering and merging, 0 for no point filtering.

  • Filter Polygons (Geometry Cleanup)
    Strength of polygon filtering and merging, 0 for no polygon filtering.

  • Enable (Quadrangulation)
    Enable/disable quadrangulation.

  • Incidence Angle (Quadrangulation)
    The maximum difference between the normals of two adjacent triangles.
    Higher angle values result in more quads.

  • Max Corner Right Angle Deviation (Quadrangulation)
    The maximum allowed deviation from a right angle.

  • Fill Isofield Valleys (Isofield Cleanup / Correction)
    No documentation available.

  • Show Isovalues (Debug)
    If enabled then the internal isovalues contained in the octree cells are displayed.
    Note: this can take quite a while if the LOD is high!

  • Scale (Debug)
    Scales the isovalues.

  • Epsilon (Debug)
    Isovalues that fall beneath this value are not displayed.

Hidden Parameters in the tab "UVWs"

  • Disable Quadrangulation
    Disables quadrangulation when calculating UVWs.

  • Depth of Acceleration Octree
    Use higher values with meshes that have very large amounts of points and polygons.

  • Motion Scale
    Scale of the motion when UVWs are calculated.

Understanding Isofields

Understanding Isofields

The whole "trick" of emPolygonizer4 consists of drawing iso values into an isofield ( = 3D grid ), similar to painting some color into a bitmap ( = 2D grid ). When you draw something into a bitmap you usually have a brush that has a color, size and falloff. It is the same in emPolygonizer4: the iso is the "color", the radius + falloff define the "brush's size" and the isofield is the "canvas".

The picture below shows the isofield (left) and the surface that was constructed from it (right).

 

The Custom Property Sets/Nodes

Custom Property Sets/Nodes

[Softimage] Whenever an object is connected to the emPolygonizer4 operator it automatically gets a so-called custom property set, which basically is a custom parameter set with a little VBScript code behind it.
Each type of object (null, curve, polygon mesh, point cloud) has its own custom property.
The custom properties are attached under the objects (see picture on the right) and they contain parameters for each object that tell the operator how to use that object when building the final mesh.

[Maya] Input objects are not connected directly with the main node, instead that have an intermediate node (i.e. a property node) which contains parameters that are specific to the input object. In the picture below a polygon mesh and a particle system are connected with their respective emP4 property nodes which are then connected with the main node.

To access the parameters of an input object, say, a locator, simply select the locator and then go into the properties of the "emP4Null" node, as demonstrated in the next picture on the right.

The same applies to the other input objects such as particle systems, polygon meshes and curves.

 

 

 

 

 

The Custom Property of "Nulls"

Nulls

Tab Main

  • Active
    Enable/disable this null (or locator) for meshing.

  • Isofactor
    The iso value for the null. Note that it is possible to use negative iso values.

  • Radius
    The radius.

  • Falloff
    The falloff. Note that the falloff is added to the radius.

  • Falloff Type
    The falloff type (linear, square, etc.).

  • Base Color
    The color when using vertex colors.

 

 

Tab Motion

This tab contains the parameters for the motion plotting.

Note: motion plotting has nothing to do with motion blur, it only concerns how the geometry is built.

These parameters only have an effect if motion plotting is enabled in the operator's main property page.

  • Active
    Enable/disable motion plotting for this object.

  • Speed
    Scales the motion (the speed).

  • Offset
    Frame offset.

  • Position [Softimage]
    Frame position.

  • Compensate Radius and Falloff (a.k.a. Size Compensation)
    This defines the amount of volume preservation when the object is distorted by the motion.
    Lower this value if things tend to disappear when they move a little faster.
    The picture on the right shows a fast moving null without motion plotting (top), with motion plotting and compensation=0 (middle) and with compensation=0.9 (bottom).

 

 

 

Tab Liquid (Filaments)

Liquid filaments are a great way to achieve good looking results with fairly few inputs. The above picture for example only has a curve and four nulls.

The liquid filaments can also be used with large amount of points, for example with point clouds or particle systems to create liquid-like meshes.

  • Active
    Enable/disable liquid filaments for this object.

  • Self <---> Self
    Enables/disables filaments with itself ("self filaments").
    In most cases you have this only enabled for point clouds.

  • Self ---> Neighbors
    Enables/disables filaments going to the neighbors ("cast filaments").

  • Self <--- Neighbors
    Enables/disables filaments coming from the neighbors ("receive filaments").

  • Filament Lengths
    The maximum length of a filament, relative to the radius and falloff.
    The higher this value the longer the filaments but the more calculations.

  • Optimized Plotting [Softimage]
    It is recommended to have this enabled.
    This only needs to be disabled when using some crazy profiles.

  • Level of Detail
    Level of detail for the filaments. If the filaments look a little blobby then increase this value.

  • Iso Multiplier
    Iso multiplier for the filaments.

  • Thickness
    Thickness of the filaments.

  • Meeting at
    The "meeting point" of the filament with its neighbor. The lower this value the earlier the filament reaches the neighbor. A value of zero will make the filaments appear without any fade.

  • Neighboring - Filter
    The heart of liquid filaments is the neighboring filter. It defines how the neighbors are weighted for the final liquid filaments of a current point and also prevents horrendous calculation times.
    There are currently two filters:

    • by Weight of Neighbors
      The weight of neighbors is the determinative factor. This is the default.
      The closer a neighbor gets and the more the (virtual) filament is important the higher its weight.
    • by Number of Neighbors
      The amount of neighbors is the determinative factor. The closest Max Number neighbors will be fully used, the next Fade neighbors will be used to gradually fade out the effect in order to reduce suddenly appearing filaments.
  • Show Profile FCurves Button [Softimage]
    This button shows/hides the profile curves that define how the liquid filaments fade in/out, how the are shaped, etc.

 

The Custom Property of "Curves"

Curves

 

Tab Main

  • Active
    Enable/disable this curve for meshing.

  • Use
    Defines which components of the curve are to be used for meshing.

  • LOD
    The level of detail (in "amount per SI Unit") when approximating the curve.
    Higher LOD values also mean that more plots into the isofield are performed.

  • Isofactor
    The iso value for the curve.
    It is possible to use negative iso values or to multiply this value by a FCurve.

  • Radius
    The radius.
    This value can be multiplied by a FCurve.

  • Falloff
    The falloff. Note that the falloff is added to the radius.
    This value can be multiplied by a FCurve.

  • Falloff Type
    The falloff type (linear, square, etc.).

  • Base Color
    The color when using vertex colors.

 

Tab Motion

 

This tab is identical to the tab "Motion" of Nulls.

 

Tab Liquid

 

This tab is identical to the tab "Liquid" of Nulls.

 

Tab FCurves [Softimage]

This tab contains FCurves that can be used to control the iso, radius and/or falloff values along the curve.

Each set has the same parameters and buttons:

  • Multiply by FCurve
    Enables/disables the FCurve for iso/radius/falloff.

  • The Buttons "Small/Large"
    Use these buttons to get a bigger or smaller FCurve editor.

  • The FCurve
    The FCurve that is multiplied with the respective value (iso/radius/falloff).
    The x axis represents the position on the curve (0 to 100) and the y axis the value to use as multiplicand.

The Custom Property of "Polygon Meshes"

Polygon Meshes

 

Tab Main

- Active
Enable/disable this polygon mesh for meshing.

  • The Button "Show Weight Map Parameters" [Softimage]
    Use this button to show/hide the weight map and color at vertices map parameters.
    When visible, you can pick a weight map to drive certain parameters, as for example the radius and falloff.

  • Use
    Defines which components of the polygon mesh are to be used for meshing.

  • LOD
    The level of detail (in "amount per square SI Unit") when approximating the mesh.
    Higher LOD values also mean that more plots into the isofield are performed.

  • Isofactor
    The iso value for the polygon mesh.
    It is possible to use negative iso values or to multiply this value by a weight map (see the button Show Weight Map Parameters).

  • Radius
    The radius.
    This value can be multiplied by a weight map (see the button Show Weight Map Parameters).

  • Falloff
    The falloff. Note that the falloff is added to the radius.
    This value can be multiplied by a weight map (see the button Show Weight Map Parameters).

  • Falloff Type
    The falloff type (linear, square, etc.).

  • Base Color
    The color when using vertex colors.
    It is also possible to use a color at vertices map (see the button Show Weight Map Parameters).

  • Base/Vertex [Softimage]
    Fade between the base color and the colors at vertices map.

 

Tab Motion

 

This tab is identical to the tab "Motion" of Nulls.

 

Tab Liquid

 

This tab is identical to the tab "Liquid" of Nulls.

 

Tab Miscellaneous [Softimage]

When polygon meshes are used as inputs then they are "translated" into a bunch of points that lay on the surface before being plotted into the isofield. The amount of points depends on the surface area of each polygon. When using shape animated polygon meshes this can cause problems, because the surface area varies from frame to frame. This is okay when using "Polygonize / Marching Cubes", but definitely a problem when using "Simple as Primitives".

The two parameters in this tab can be used to define how locations on the surface are to be calculated and evaluated. To solve the above mentioned problems one would have to set the first parameter to "siConstructionModeModeling".

  • ..when calculating Locations
    The construction mode to use when calculating the locations on the surface.

  • ..when evaluating Locations
    The construction mode to use when evaluating the locations on the surface.

 

Tab Advanced [Softimage]

Enabling "Treat this Polygon Mesh as a Point Cloud" will do exactly what the parameter name suggests:

The polygon mesh will be treated as if it were a point cloud and the property page of the custom property will change accordingly. This can be useful when your polygon mesh is driven by an ICE Tree.

 

 

The Custom Property of "Point Clouds"

Point Clouds

 

Tab Main

  • Active
    Enable/disable this point cloud (or particle system) for meshing.

  • Use
    Defines which components of the point cloud (or particle system) are to be used for meshing.
    [Softimage] Aside from the usual choices (points, strands,..) you can also choose "Use emFluid4 3D Grids" (see the chapter Meshing the internal emFluid4 Grids).

  • LOD [Softimage]
    The level of detail (amount of subdivisions) for the strands.
    Higher LOD values also mean that more plots into the isofield are performed.

  • Isofactor
    The iso value for the point cloud.
    It is possible to use negative iso values.

  • Radius
    The radius.

  • Multiply Radius by Point Size (if available)
    Multiply the above radius value with the particle's size, if available.

  • Falloff
    The falloff. Note that the falloff is added to the radius.

  • Falloff Type
    The falloff type (linear, square, etc.).

  • Multiply Falloff by Point Size (if available)
    Multiply the above falloff value with the particle's size, if available.

  • Base Color
    The base color when using vertex colors.

  • Use Point/Particle Color (if available)
    Use the particle's color, if available, when working with vertex colors.

  • Base/Vertex
    Fade between the base color and the particle's color.

 

Tab Motion

 

This tab is identical to the tab "Motion" of Nulls.

 

Tab Liquid

 

This tab is identical to the tab "Liquid" of Nulls.

 

Tab Filter Points [Softimage]

This tab can be used to filter the points of the point cloud.
It is typically used in order to mesh only certain specific particles, for example you could choose to discard all particles with a State_ID equal 7.

This is a powerful little feature, because it allows you to choose specific particles without the need of modifying the point cloud's data. A typical usage could be a Lagoa point cloud that has different materials, let's say some water with a Lagoa_PhaseID = 0 and some jello with a Lagoa_PhaseID = 1. With "Filter Points" you can mesh only the water with one emPolygonizer4 and the jello with another emPolygonizer4.

  • Use/Discard Particles depending on A and B

  • Definition of A and B

    "A" and "B" are defined as following:

    The left textfield contains the name of the ICE data (followed by a space) and then the comparison, e.g. "<" or "==".
    The parameter on the right is the value that is used for the comparison.
    Example:
    The settings as in the above picture of the Filter Points tab would use only points that have a size less than or equal 0.1 or an ID greater than 520:

    if Size <= 0.1 or ID > 520 then Use Point

 

Tab Lagoa [Softimage]

- N.Indices / N.Removed
These two textfields contain the name of the ICE data that describes the Lagoa topology.
You should not modify them.

  • Enable
    Enables/disables the meshing of Lagoa cloth.

  • ICE Data - Identifier
    These textfields can be used to identify the particles for the cloth meshing.
    When working with Lagoa you typically assign a material (e.g. "Lagoa Cloth") to a "Lagoa Phase ID". Enter the phase ID of the cloth you want to mesh in the lower field.

  • Length
    The extrusion length of the cloth or zero for no extrusion.

  • Only Tris and Quads
    If enabled then only triangles and quads are generated.
    It is recommended to have this enabled.

  • Auto-Cleanup
    If enabled then some cleaning up is performed during the meshing (unnecessary points are filtered out).
    It is recommended to have this enabled.

Below a simple example of some Lagoa cloth:
on the left is the point cloud with the Lagoa cloth particles (the yellow lines visualize the internal Lagoa structure) and on the right the meshed cloth (with extrusion and subdivision).

 

Tab Advanced [Softimage]

By default the ICE data "PointPosition" is used for the positions, "PointVelocity" for the velocity, etc.
In this tab you can specify another (compatible) ICE data.

For example you could create some own vectors in the ICE Tree, store them in an own ICE data and then use that data as velocity.

The buttons "Check" can be used to check if the specified data is available.

There are several ICE compounds available to get/set the liquid filament ICE data.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Meshing Fluid Grids [Softimage]

Meshing the internal emFluid4 grids.

The style of data used by emPolygonizer4 and emFluid is rather similar: some sort of 3D grid filled with "stuff".

It is possible to transfer the internal 3D grids of emFluid4 directly into emPolygonizer4 and then to mesh them. For example you could use the "heat" or the "waste" values for meshing. The picture on the right shows an example of the meshed waste grid. Note that the particles of the point cloud are not required.

In order to use this feature you obviously need a point cloud with an emFluid setup contained in its ICE Tree. Furthermore you need to have emFluid4 version 4.03 or higher installed. If the meshing of the fluid grids doesn't work then you probably have an older emFluid4 version installed. You can get the most recent emFluid4 version here.

How to mesh the fluid grids, step-by-step:

  1. Connect a point cloud that has an emFluid4 setup in its ICE Tree to emPolygonizer4.

  2. Go into the emPolygonizer4_PointCloud property page of the point cloud and set the "Use" parameter to "Use emFluid4 3D Grids", as shown in the picture on the right.

  3. The layout of the property changes. In the tab "emFluid4 3D Grids" you can choose the grids to use for the meshing:

    Heat and/or Waste and/or Density.

    Furthermore you can remap the grid values in order to adjust the meshing.

  4. Note:

    • the emFluid velocity grid is automatically used when meshing with motion vectors.
    • you cannot mesh the fluid grids with cached emFluid point clouds.
    • you don't need any particles when meshing the internal emFluid grids! So turn off any particle creation in order to speed things up.

Tips and Tricks, Trouble Shooting

Tips and Tricks, Trouble Shooting

  • Tips and Tricks:

    • [Softimage] Use the "Global Switches" in the tab "Advanced" when tweaking complex setups
      Things can get a little slow when working on large setups, liquid filaments or a high LOD. In the tab "Advanced" are some global switches that you can use to disable all the things you don't need while tweaking parameters.
      Example:
      You are meshing a large point cloud and are tweaking the liquid filaments and the mesh smoothing. For that you do not need the whole point cloud, a small and representative part of the point cloud would be sufficient, so you could filter the points with an implicit volume or only use the tagged points for meshing.

    • [Softimage] Check out the ICE Tree in the "Secondary Shape Modeling" stack

      The operator stack of a typical emPolygonizer4 mesh has a "emPolygonizer4 operator" in the "Modeling" stack and an ICE Tree in the "Secondary Shape Modeling" stack". The purpose of the ICE Tree is to set the user data (motion vectors, vertex colors, etc). The picture on the right displays the "emP4 _ ICE Data Generator" compound and below you can see the compound's property page.

  • Known Issues:

    • [Softimage] KNOWN ISSUE (Linux):
      The meshing is (much) slower when the Progress Bar is enabled.

    • [Softimage] KNOWN ISSUE:
      The "per point" ICE data color and uvw sometimes has 'drop outs'. This seems to be a Softimage issue.
      Workaround: use the "per node" data instead.

  • Trouble Shooting:

    • [Softimage] PROBLEM: the motion blur looks terrible! Is it a bug?!
      SOLUTION: you are probably trying to render motion blur with a non-cached emPolygonizer4.
      When rendering motion blur you should always cache your geometry!

    • [Softimage] PROBLEM: I cached some geometry and it looks blobby and ugly when imported into Maya or Max
      SOLUTION: you have Disable Smoothing when writing Cache Files enabled.
      When exporting geometry that is to be used with an applications other than emPolygonizer4 you should disable that parameter.
      See the tab "Caching (Softimage)" or "Caching (Maya)" for more information.

    • [Softimage] PROBLEM: I have a shape animated input mesh and am using "Simple as Primitives" and everything is flickering.
      SOLUTION: go to the tab "Miscellaneous" and set the first parameter to siConstructionModeModeling.

Version History

Version History

  • New in Version 4.000:

    • [Softimage] improved overall simulation performance.
    • [Softimage] improved overall caching performance.
    • [Softimage] greatly improved memory usage (about 60-70% less than before).
    • [Softimage] new tab "UVWs" to create 3D texture coordinates (can be used for 2D textures, too).
    • [Softimage] new cache file format that supports UVWs.
    • [Softimage] ICE data can now be specified manually.
    • [Softimage] marching Tetrahedrons.
    • [Softimage] mesh fixing when reading cache files:
        - repair double and non-manifold edges.
        - close holes in mesh.
    • [Softimage] a few bug fixes.
  • New in Version 4.010:

    • [Softimage] bug fix: version 4.0 crashed with Softimage 2013. This was due to the clusters and the cluster properties. The issue has been fixed in version 4.01.
    • [Softimage] the clusters have been entirely replaced by ICE data.
  • New in Version 4.030:

    • [Softimage] bug fix: version 4.01 had a serious memory leak due to an error in the ICE Tree in the Secondary Shape Modeling stack.
      The issue has been fixed in version 4.02.
    • [Softimage] the compound "ICE Data Generator" now has a boolean to set the wrapping of the texture projection.
    • [Softimage] some minor internal enhancements concerning the ".mzd" file format, in order to be fully compatible with the newest versions of emTopolizer and emReader.
  • New in Version 4.150:

    • [Softimage] the compound "ICE Data Generator" has been entirely revised. UVWs and Colors are now available as "per point" and "per node" ICE data.
    • [Softimage] deformation motion blur now works correctly with Mental Ray and Arnold.
    • [Softimage] ICE data UVWs are now supported by SItoA and Arnold.
    • [Softimage] support of emBatch licensing.
    • [Softimage] the file format ".mzd" now supports "per node" colors and UVWs.
    • [Softimage] the file format ".obj" now supports "per point" and "per node" colors and UVWs.
    • [Softimage] bug fix: the PPG did not refresh correctly after using the "Browse" button in the tab "Caching".
  • New in Version 4.180:

    • [Softimage] the addon is now built separately for Softimage 2012, 2013, etc. using the respective SDK.
    • [Softimage] bug fix: there was a memory leak when reading cache files. This has been fixed.
  • New in Version 4.182:

    • [Softimage] small bug fix (SI 2013 SP1) regarding refresh problems with low particle counts.
    • [Softimage] small bug fix regarding the "Browse" button in the "Cache" tab.
  • New in Version 4.250:

    • [Softimage] a few minor bug fixes.
    • [Softimage] new parameter group "Create ICE Data from internal Representation (=IR)" in the tab "Advanced".
    • [Softimage] new compounds "Create Particles from IR" and "Get IR Data" for creating particles or feeding the emTopolizer2 Polygonizer preset from the IR of the above feature.
    • [Softimage] three new demo scenes that demonstrate IR.
  • New in Version 4.300:

    • [Softimage] the addon is now available for Softimage 2012, 2013, 2014 and 2015.
    • [Softimage] now using the newest mootzoid libs..
    • [Softimage] empty meshes (i.e. no vertices nor polygons) are now also written to disk.
    • [Softimage] bug fix: the motion data in the compound "ICE Data Generator" was not set properly.
    • [Softimage] a few minor bug fixes.

Limitations and Remarks

Limitations and Remarks

  • [Softimage] emPolygonizer4 is only available Softimage 64 bit (Windows and Linux).
  • [Maya] emPolygonizer4 is currently only available for Maya 64 bit running under Windows.