emPolygonizer3 (version 3.01) Online Documentation |
last modifications to this page: May 23rd 2011
|
|
|
Chapter 1: Introduction
|
|
This plug-in for Softimage|XSI is a custom operator for creating polygon meshes.
It polygonizes so-called scalar fields (or isofields), a method that is also called "Metaballs" or "Marching Cubes".
The operator accepts nulls, curves, polygon meshes and point clouds as inputs... or all at the same time. In fact as many inputs as you wish ! Furthermore it is possible to directly mesh the internal fluid grids of emFluid4 and to mesh the Lagoa cloth topology (including tearing).
On the emPolygonizer3 web page you can:
- download the demo version of this plugin.
- download demo and tutorial scenes.
- purchase the full version of this plugin.
Content:
On my Vimeo page are many video tutorials in which I show and explain different aspects and techniques concerning emPolygonizer3 and its usage. You might also try to search for "emPolygonizer3" on Vimeo to find some videos made by other people.
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.
|
|
|
Chapter 2: Installation
|
|
Important:
- If you have a version 3.0 or higher already installed (or eventually a beta version of emPolygonizer3) 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".
- emPolygonizer3 can co-exist and be used simultaneously with any of the former emPolygonizer versions (emPolygonizer v.1.xx, emPolygonizer2 v.2.xx or the Polygonizer that comes with Softimage 2011.5 and above).
This plugin comes as a so called "Addon", here's how to install it:
- Open the "Plugin Manager". It is located under the "File" menu: "File ->Plugin Manager":

- As mentioned above: please remove / uninstall any previous version 3.xx of this plugin. This is really important, because if Softimage|XSI finds two times the same plugin then one (maybe even both) might not work.
- To install the plugin into the user directory simply right-click onto the folder "User Root" and choose "Install .xsiaddon...":

- A browser dialogue will be displayed: go to where you copied the .xsiaddon file, select it and click on "OK". The Addon is automatically installed.
- Close Softimage|XSI. The plugin is now 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 XSI Guides.
|
|
|
Chapter 3: 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:
- 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.
- The operator only works between frame 1 and frame 100.
- The text "DEMO VERSION" is contained in the custom operator's property page.
- Nearly all parameters of the tab "Advanced" of the operator's property page are unavailable.
- Motion Vectors and Motion Blur are disabled.
- User Normals are disabled.
Note: while testing the demo version you will probably encounter error messages like for example "not enough memory" or "reached memory limit". These are NOT bugs, it's simply the demo version restriction! |
|
|
Chapter 4: Quickly creating an emPolygonizer3 polygon mesh
|
Creating an emPolygonizer3 polygon mesh only takes a few clicks:
- Select the objects you want to use as inputs.
- Choose "Model -> Poly.Mesh -> emPolygonizer3".
The property page of the freshly created emPolygonizer3 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.
|
|
|
Chapter 5: The Custom Operator's Property Page
|
|
This chapter covers all the tabs and parameters of the custom operator's property page.
emPolygonizer3 has three algorithms for building meshes:
- "Polygonize (Marching Cubes)".
- "Simple as Primitives"
- "Bounding Boxes of input Objects"
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.
Last but not least, at the end of this chapter, you will find a brief description of the "hidden" parameters (= rarely used parameters).
They can be made visible in the "Advanced" tab. |
|
|
Chapter 5 (part 1): The Property Page when using "Marching Cubes"
A polygonized Lagoa point cloud:
|
|
|
The tab "Main"
|
This tab contains the operator's main parameters.
- Active
Enables/disables the operator.
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
Forces the operator to refresh the mesh. Typically used when the parameter "Active" is disabled.
- Algorithm ID (the three big icons)
The algorithm that shall be used when building the mesh:
- "Bounding Boxes from input Objects" (left icon)
- "Simple as Primitives" (middle icon)
- "Polygonizer / Marching Cubes" (right icon)
- Isolevel
The Isolevel barrier at which geometry is generated.
Higher values produce "tighter" meshes, but smaller part 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 then 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 is a very important thing for 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 angle (between the normal vectors) that defines 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). 
|
|
|
The tab "Data"
|
It is possible to create so-called "user data" for the mesh,
for example you might want to create some motion vectors in order to render 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.
Use the Recreate button to enable vertex colors and the Delete button to disable them.
- Motion Vectors
The motion vectors are 3D motion vectors that are encoded into RGBA values.
It is possible to view the motion vector colors in the viewport.
The button " ? " will display some important information when working with motion blur.
Use the Recreate button to enable motion vectors and the Delete button to disable them.
- 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.
Use the Recreate button to enable normal vectors and the Delete button to disable them.
Note: in many cases normal vectors are NOT recommended, for example when using liquid filaments or when caching non-smoothed meshes.
- User Data OGL Display
Displays the respective colors in the viewport (this does not affect the rendering).
|
|
|
The tab "Tools"
|
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 emPolygonizer3 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 emPolygonizer3 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.
|
|
|
The tab "Caching"
|
This tab contains all the parameters for the geometry caching.
Caching the geometry is a very important part when working with emPolygonizer3.
Note that the emp2 cache files can also be read by the built-in Polygonizer (Softimage 2011 SAP and above).
|
|
|
The tab "Advanced"
|
- 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.
- Preferences
|
|
|
Chapter 5 (part 2): The Property Page when using "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).
 |
|
|
The tab "Main"
|
This tab contains the operator's main parameters.
|
|
|
The tab "Tools"
|
|
This tab is identical for all algorithms, please go here for more information.
|
|
|
The tab "Advanced"
|
|
This tab is identical for all algorithms, please go here for more information.
|
|
|
Chapter 5 (part 3): The Property Page when using "Bounding Boxes of input Objects"
|
|
|
The 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.
|
The tab "Tools"
|
|
This tab is identical for all algorithms, please go here for more information.
|
|
|
The tab "Advanced"
|
|
This tab is identical for all algorithms, please go here for more information.
|
|
|
The hidden (or rarely used) Parameters
|
|
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.
To display the hidden parameters you only need to enable the parameter Show rarely needed Parameters in the tab "Advanced".
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.
|
|
|
|
|
Chapter 6: The Custom Property Sets
|
Whenever an object is connected to the emPolygonizer3 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).
Custom property sets are very important, because they contain parameters for each object that tell the operator how to use that object when building the final mesh.
|
|
Interlude: understanding the "isofield":
The whole "trick" of emPolygonizer3 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 emPolygonizer3: 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 of Nulls
|
The tab "Main" (Nulls)
|
- Active
Enable/disable this null 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.
|
The tab "Motion" (Nulls)
|
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.
|
The tab "Liquid" (Nulls)

|
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 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.
Note:
There was a little bug in version 3.0 concerning this parameter.
The bug has been fixed in version 3.01, so please make sure you are working with a version greater than or equal 3.01. If you are unsure about which version you currently have installed then you can either go into the Plugin Manager or simply download and install the latest version of this plugin.
- Optimized Plotting
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
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
|
The tab "Main" (Curves)
|
- 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.
|
The tab "Motion" (Curves)
|
|
This tab is identical to the tab "Motion" of Nulls.
|
The tab "Liquid" (Curves)
|
|
This tab is identical to the tab "Liquid" of Nulls.
|
The tab "FCurves" (Curves)
|
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
|
The tab "Main" (Polygon Meshes)
|
- Active
Enable/disable this polygon mesh for meshing.
- The Button "Show Weight Map Parameters"
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
Fade between the base color and the colors at vertices map.
|
The tab "Motion" (Polygon Meshes)
|
|
This tab is identical to the tab "Motion" of Nulls.
|
The tab "Liquid" (Polygon Meshes)
|
|
This tab is identical to the tab "Liquid" of Nulls.
|
The tab "Miscellaneous" (Polygon Meshes)
|
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.
|
The tab "Advanced" (Polygon Meshes)
|
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
|
The tab "Main" (Point Clouds)
|
- Active
Enable/disable this point cloud for meshing.
- Use
Defines which components of the point cloud are to be used for meshing.
Aside from the usual choices (points, strands,..) you can also choose "Use emFluid4 3D Grids".
You can find more information about this in Chapter 7: Meshing the internal emFluid4 Grids,
- LOD
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.
|
The tab "Motion" (Point Clouds)
|
|
This tab is identical to the tab "Motion" of Nulls.
|
The tab "Liquid" (Point Clouds)
|
|
This tab is identical to the tab "Liquid" of Nulls.
|
The tab "Filter Points" (Point Clouds)
|
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 emPolygonizer3 and the jello with another emPolygonizer3.
- Use/Discard Particles depending on A and B
- Enable
Enable/disable point filtering.
- Condition
The condition that must be met.
You can choose between all possible combinations of A and B, for example "A or B" or "!A".
"A" and "B" are defined in the bottom part of the tab.
- Do What
When the above condition is TRUE then either
- 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
|
The tab "Lagoa" (Point Clouds)
|
- 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).  |
The tab "Advanced" (Point Clouds)
|
By default the ICE data "PointPosition" is used for the positions and "PointVelocity" for the velocity. It is however possible to 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.
|
|
|
|
|
Chapter 7: Meshing the internal emFluid4 grids
|
The style of data used by emPolygonizer3 and emFluid4 is rather similar:
Some sort of 3D grid filled with "stuff".
It is possible to transfer the internal 3D grids of emFluid4 directly into emPolygonizer3 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 emFluid4 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 version here.
|
How to mesh the fluid grids, step-by-step:
- Connect a point cloud that has an emFluid4 setup in its ICE Tree to emPolygonizer3.
- Go into the emPolygonizer3_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.
- 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.
- Note:
- the emFluid4 velocity grid is automatically used when meshing with motion vectors.
- you cannot mesh the fluid grids with cached emFluid4 point clouds.
- you don't need any particles when meshing the internal emFluid4 grids ! So turn off any particle creation in order to speed things up.
|
|
|
Tips and Tricks, Trouble Shooting
|
|
Your issue is not listed here ? Write me a short email describing the problem !
- Tips and Tricks:
- 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.
- Known Issues:
- Trouble Shooting:
- PROBLEM: motion blur looks terrible ! Is it a bug ?!
SOLUTION: you are probably trying to render motion blur with a non-cached emPolygonizer3.
When rendering motion blur you should always cache your geometry !
- 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 emPoylgonizer3 you should disable that parameter.
See the tab "Caching" for more information.
- 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
|
- New in Version 3.0:
- Multithreaded meshing and improved overall performance.
- Improved memory usage.
- Liquid Filaments (-> reduced blobbiness).
- Motion plotting (-> reduced blobbiness).
- Improved ultra-fast smoothing of the mesh with the ability to control the smoothing separately for the convex, concave and flat parts of the mesh (-> reduced blobbiness).
- RealFlow format now supported when caching geometry (-> the meshes can be exported to Maya and Max).
- Meshing of internal emFluid4 waste and/or heat and/or density grids.
- Enhanced workflow for large setups.
- Visualization of internal octree (3D grid).
- New algorithm "Bounding Boxes from input Objects".
- Ability to cancel the meshing at nearly any time.
- New primitive "Point" for the algorithm "Simple as Primitives ".
- Improved octree blurring.
- Mesh smoothing can now be applied before writing cache files or after reading cache files (non-destructive smoothing).
- Improved/fixed support of Lagoa topology (e.g. Lagoa breakable cloth).
- Many workflow improvements.
- Ability to mesh different parts of point clouds using different emPolygonizer3 operators (multiple custom property support).
- Verbose in History Log.
- A few bug fixes.
- New in Version 3.01:
- Bug fix: the parameter "Filament Lengths" of the liquid filaments was in SI units instead of being relative to the radius and falloff.
|
|
|
Limitations and Remarks
|
- emPolygonizer3 runs fine with Softimage 2011 SP1 or above.
|
|
|