http://wiki.fracture-fx.com/api.php?action=feedcontributions&user=Craig&feedformat=atomFracture FX - User contributions [en]2024-03-29T12:41:00ZUser contributionsMediaWiki 1.19.0http://wiki.fracture-fx.com/index.php?title=File:Mac_home_dir.pngFile:Mac home dir.png2022-04-03T15:37:21Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=Installing_the_licenseInstalling the license2022-04-03T15:37:08Z<p>Craig: </p>
<hr />
<div>== Workflow ==<br />
<span style="color:red">'''These instructions are for the full version of Fracture FX.'''<br /><br />
'''For instructions on installing the trial version, please check the "Fracture FX Trial Download" email you received.'''</span><br />
<br /><br />
<br />
To get Fracture FX running on your machine, you need a valid license. At the time of writing, all our licenses are node-locked; this means that each license is only valid for the machine for which it was requested. Please read on for step-by-step instructions on how to install your license and get up and running. <br />
<br />
# Upon receipt of your payment you will be sent an email outlining how to request a node-locked license. Follow the instructions in the email to request a license. <br />
# A license will be sent to you in zip format. Use winzip or winrar to uncompress it. The license file is called "fxlcn". It has no file extension and should never be renamed. <br />
# Copy the license in your home directory. Please refer to the box below for more info about your home directory. <br />
<pre><br />
Windows XP: <root>\Documents and Settings\<username>\My Documents\<br />
Windows Vista: <root>\Users\<username>\Documents\<br />
OSX: /Users/<username><br />
Linux: /home/<username><br />
</pre><br />
<br />
[[File:Mac_home_dir.png]]<br />
<br />
== Common issues ==<br />
An error message (in the script editor) like the one below means that the license is not in the correct directory. The message tells you where FractureFX is expecting to see the license.<br />
<pre><br />
// Error: fracture : failed to open license file "C:/Users/Ed/Documents/fxlcn" // <br />
// Error: initializePlugin function failed (fracture) //<br />
</pre><br />
<br />
== Multiple licenses ==<br />
<br />
If you've purchased node-locked licenses for more than one machine, and have network shared user home directories, you can either:<br />
* Concatenate all the license files together into a single fxlcn file, and place it in the home directory, or<br />
* Place the license files somewhere other than the home directory and set the environment variable FX_LCN_FILE to the absolute path to the license file. Fracture will check this variable before falling back to the home directory.<br />
<br />
If you decide to concatenate the files, just copy/paste the lines in a plain text editor, one set after the other. If you're mixing v1 and v2 licenses in the same file, make sure the v2 licenses appear before the v1 licenses in the file, in order for both the v1 and v2 software to be able to read it.</div>Craighttp://wiki.fracture-fx.com/index.php?title=Installing_the_plug-inInstalling the plug-in2022-04-03T15:07:43Z<p>Craig: </p>
<hr />
<div><span style="color:red">'''These instructions are for the full version of Fracture FX.'''<br /><br />
'''For instructions on installing the trial version, please check the "Fracture FX Trial Download" email you received.'''</span><br />
<br /><br /><br />
<br />
__TOC__<br />
<br />
== Contents of the build folder ==<br />
<br />
Upon purchasing Fracture FX, you will be sent an email called "Your Order at Fracture FX". Use the log in details inside that email to log in at your user area: https://www.fracture-fx.com/user<br />
<br />
Go to the "Files" tab to download your copy of Fracture FX. The Fracture FX download is a compressed file, so please use winzip, winrar or gzip to extract the content.<br />
<br />
Once extracted, you will see 3 folders:<br />
<br />
[[File:folderContent.jpeg]]<br />
<br />
#'''lib:''' this folder contains the actual Fracture plugin for each OS and Maya version. You obviously proceed with the folder relevant to your system. <span style="color:red"> IMPORTANT: copy the "fracture_plugins" folder in the same location as fracture.so/fracture.mll/fracture.bundle (for more info about that see below). The "fracture_plugins" folder contains plugins used by Fracture. In this case the Bullet solver. Do no attempt to load this plugin through the plug-in manager. This will happen automagically when you load Fracture. </span><br />
#'''mel''': this folder contains the MEL scripts that support the plugin. For installation see below.<br />
#'''devkit''': this folder contains the API that allows developers to connect Fracture with external solvers.<br />
<br><br />
<br />
== Installing the plug-in (fracture.so/fracture.bundle/fracture.mll) ==<br />
<br />
The FractureFX plug-in needs to be installed to your Maya plug-in path. The path varies from OS to OS. Below is a basic reference of the standard paths. Those on a production pipeline may find that their paths are altered and don't reflect the examples below.<br />
<br />
Official documentation about plug-in paths can be found [http://download.autodesk.com/global/docs/maya2012/en_us/index.html?url=files/Environment_Variables_File_path_variables.htm,topicNumber=d28e123511 here].<br />
<br />
A note about the plugin directories. A default Maya installation may not create these folders by default. However if you do create (and name correctly) these directories, Maya will recognize them. Those working in a production pipeline may have to request the installation be handled by IT.<br />
<br />
===Windows===<br />
<pre><br />
<user’s directory>/Documents/maya/<maya version>/plug-ins<br />
or<br />
<user’s directory>/OneDrive/Documents/maya/<maya version>/plug-ins<br />
</pre><br />
<br />
===Linux===<br />
<pre><br />
<user's home directory>/maya/<maya version>/plug-ins<br />
/usr/autodesk/userconfig/maya/<maya version>/plug-ins<br />
</pre><br />
<br />
===Mac OS===<br />
<pre><br />
<user's homefolder>/Library/Preferences/Autodesk/maya/<maya version>/plug-ins<br />
/Users/Shared/Autodesk/maya/<maya version>/plug-ins<br />
</pre><br />
<br />
Some versions of MacOS hide the Library folder by default in your home directory. You can get to it by running the Terminal app, then entering:<br />
<br />
<pre>open ~/Library/Preferences</pre><br />
<br />
[[File:mac_terminal.png]]<br />
<br />
[[File:mac_plugins_dir.png]]<br />
<br />
== Installing the MEL scripts ==<br />
<br />
The MEL scripts need to be placed into a valid script path.<br />
<br />
===Windows===<br />
<pre><br />
<user’s directory>/Documents/maya/<maya version>/scripts<br />
or<br />
<user’s directory>/OneDrive/Documents/maya/<maya version>/scripts<br />
</pre><br />
<br />
===Linux===<br />
<pre><br />
<user's home directory>/maya/<maya version>/scripts<br />
/usr/autodesk/userconfig/maya/<maya version>/scripts<br />
</pre><br />
<br />
===Mac OS===<br />
<pre><br />
<user's homefolder>/Library/Preferences/Autodesk/maya/<maya version>/scripts<br />
/Users/Shared/Autodesk/maya/<maya version>/scripts<br />
</pre><br />
<br />
If you are still having issues, the follow MEL commands can be used to print all the paths that Maya is looking in for plug-ins and scripts. When executing these commands, make sure you are using a MEL tab in the script editor, and not a Python tab!<br />
<pre><br />
getenv "MAYA_PLUG_IN_PATH"<br />
getenv "MAYA_SCRIPT_PATH"<br />
</pre><br />
<br />
== Overview ==<br />
<br />
[[File:Installation_dirs.png]]<br />
<br />
== Maya 2018 ==<br />
<br />
Due to a Maya 2018 bug, Fracture FX is not compatible with Viewport 2.0. To use Fracture with Maya 2018, you'll need to enable the Legacy Viewport by adding MAYA_ENABLE_LEGACY_VIEWPORT=1 to your maya.env file.<br />
<br />
More info here: https://vimeo.com/248014221<br />
<br />
How to set an environment variable using maya.env: https://knowledge.autodesk.com/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2018/ENU/Maya-EnvVar/files/GUID-8EFB1AC1-ED7D-4099-9EEE-624097872C04-htm.html?v=2018<br />
<br />
== Loading the plug-in in Maya's plug-in manager ==<br />
To load Fracture in Maya, locate it in the Plug-in Manager (fracture.mll/fracture.so) and tick the check box on.<br />
<br><br />
<br />
[[File:PluginManagerScreenshot.jpeg]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Mac_terminal.pngFile:Mac terminal.png2022-04-03T15:06:18Z<p>Craig: Craig uploaded a new version of &quot;File:Mac terminal.png&quot;</p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Mac_plugins_dir.pngFile:Mac plugins dir.png2022-04-03T15:05:37Z<p>Craig: Craig uploaded a new version of &quot;File:Mac plugins dir.png&quot;</p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Mac_plugins_dir.pngFile:Mac plugins dir.png2022-04-03T15:03:30Z<p>Craig: Craig uploaded a new version of &quot;File:Mac plugins dir.png&quot;</p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Mac_plugins_dir.pngFile:Mac plugins dir.png2022-04-03T15:01:41Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Mac_terminal.pngFile:Mac terminal.png2022-04-03T15:01:22Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=Installing_the_plug-inInstalling the plug-in2022-04-03T15:00:48Z<p>Craig: </p>
<hr />
<div><span style="color:red">'''These instructions are for the full version of Fracture FX.'''<br /><br />
'''For instructions on installing the trial version, please check the "Fracture FX Trial Download" email you received.'''</span><br />
<br /><br /><br />
<br />
__TOC__<br />
<br />
== Contents of the build folder ==<br />
<br />
Upon purchasing Fracture FX, you will be sent an email called "Your Order at Fracture FX". Use the log in details inside that email to log in at your user area: https://www.fracture-fx.com/user<br />
<br />
Go to the "Files" tab to download your copy of Fracture FX. The Fracture FX download is a compressed file, so please use winzip, winrar or gzip to extract the content.<br />
<br />
Once extracted, you will see 3 folders:<br />
<br />
[[File:folderContent.jpeg]]<br />
<br />
#'''lib:''' this folder contains the actual Fracture plugin for each OS and Maya version. You obviously proceed with the folder relevant to your system. <span style="color:red"> IMPORTANT: copy the "fracture_plugins" folder in the same location as fracture.so/fracture.mll/fracture.bundle (for more info about that see below). The "fracture_plugins" folder contains plugins used by Fracture. In this case the Bullet solver. Do no attempt to load this plugin through the plug-in manager. This will happen automagically when you load Fracture. </span><br />
#'''mel''': this folder contains the MEL scripts that support the plugin. For installation see below.<br />
#'''devkit''': this folder contains the API that allows developers to connect Fracture with external solvers.<br />
<br><br />
<br />
== Installing the plug-in (fracture.so/fracture.bundle/fracture.mll) ==<br />
<br />
The FractureFX plug-in needs to be installed to your Maya plug-in path. The path varies from OS to OS. Below is a basic reference of the standard paths. Those on a production pipeline may find that their paths are altered and don't reflect the examples below.<br />
<br />
Official documentation about plug-in paths can be found [http://download.autodesk.com/global/docs/maya2012/en_us/index.html?url=files/Environment_Variables_File_path_variables.htm,topicNumber=d28e123511 here].<br />
<br />
A note about the plugin directories. A default Maya installation may not create these folders by default. However if you do create (and name correctly) these directories, Maya will recognize them. Those working in a production pipeline may have to request the installation be handled by IT.<br />
<br />
'''Windows'''<br />
<pre><br />
<user’s directory>/Documents/maya/<maya version>/plug-ins<br />
or<br />
<user’s directory>/OneDrive/Documents/maya/<maya version>/plug-ins<br />
</pre><br />
<br />
'''Linux'''<br />
<pre><br />
<user's home directory>/maya/<maya version>/plug-ins<br />
/usr/autodesk/userconfig/maya/<maya version>/plug-ins<br />
</pre><br />
<br />
'''Mac OS'''<br />
<pre><br />
<user's homefolder>/Library/Preferences/Autodesk/maya/<maya version>/plug-ins<br />
/Users/Shared/Autodesk/maya/<maya version>/plug-ins<br />
</pre><br />
<br />
Some versions of MacOS hide the Library folder by default in your home directory. You can get to it by running the Terminal app, then entering:<br />
<br />
<pre>open ~/Library/Preferences</pre><br />
<br />
[[File:mac_terminal.png]]<br />
<br />
[[File:mac_plugins_dir.png]]<br />
<br />
== Installing the MEL scripts ==<br />
<br />
The MEL scripts need to be placed into a valid script path.<br />
<br />
'''Windows:'''<br />
<pre><br />
<user’s directory>/Documents/maya/<maya version>/scripts<br />
or<br />
<user’s directory>/OneDrive/Documents/maya/<maya version>/scripts<br />
</pre><br />
<br />
'''Linux:'''<br />
<pre><br />
<user's home directory>/maya/<maya version>/scripts<br />
/usr/autodesk/userconfig/maya/<maya version>/scripts<br />
</pre><br />
<br />
'''Mac OS'''<br />
<pre><br />
<user's homefolder>/Library/Preferences/Autodesk/maya/<maya version>/scripts<br />
/Users/Shared/Autodesk/maya/<maya version>/scripts<br />
</pre><br />
<br />
If you are still having issues, the follow MEL commands can be used to print all the paths that Maya is looking in for plug-ins and scripts. When executing these commands, make sure you are using a MEL tab in the script editor, and not a Python tab!<br />
<pre><br />
getenv "MAYA_PLUG_IN_PATH"<br />
getenv "MAYA_SCRIPT_PATH"<br />
</pre><br />
<br />
== Overview ==<br />
<br />
[[File:Installation_dirs.png]]<br />
<br />
== Maya 2018 ==<br />
<br />
Due to a Maya 2018 bug, Fracture FX is not compatible with Viewport 2.0. To use Fracture with Maya 2018, you'll need to enable the Legacy Viewport by adding MAYA_ENABLE_LEGACY_VIEWPORT=1 to your maya.env file.<br />
<br />
More info here: https://vimeo.com/248014221<br />
<br />
How to set an environment variable using maya.env: https://knowledge.autodesk.com/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2018/ENU/Maya-EnvVar/files/GUID-8EFB1AC1-ED7D-4099-9EEE-624097872C04-htm.html?v=2018<br />
<br />
== Loading the plug-in in Maya's plug-in manager ==<br />
To load Fracture in Maya, locate it in the Plug-in Manager (fracture.mll/fracture.so) and tick the check box on.<br />
<br><br />
<br />
[[File:PluginManagerScreenshot.jpeg]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=Common_IssuesCommon Issues2020-06-10T11:19:34Z<p>Craig: /* I can't see the preview geometry, or any extra output from the break node */</p>
<hr />
<div>= Installation =<br />
<br />
=== Bullet doesn't load ===<br />
If you see the error "initializePlugin function could not be found in plug-in (bullet)", then the bullet plug-in is not installed correctly. It should remain inside the fracture_plugins directory, since it is a plug-in to fracture, not a separate plug-in to Maya. fracture_plugins should be placed alongside the fracture.mll/.bundle/.so. Once it's in the correct directory, bullet can be loaded from under the solver globals in the Edit Simulator window. See [[Installing_the_plug-in|Installing the plug-in]] for more information.<br />
<br />
=== What do I do with the devkit folder? ===<br />
You can ignore the devkit folder, it does not need to be installed to use the plug-in. The devkit is intended for developers at larger studios who wish to connect an in-house solver.<br />
<br />
=== Fracture doesn't load on the Mac ===<br />
If you see this error:<br />
<pre>// Error: line 1: Unable to dynamically load : /Users/Shared/Autodesk/maya/2013/plug-ins/fracture.bundle<br />
does not match the current architecture //</pre><br />
then the file is likely corrupted, and is not being identified as a 64-bit bundle. Reinstall the plug-in from the zip archive you downloaded.<br />
<br />
= Common problems =<br />
<br />
=== There's a large pyramid when I break something ===<br />
The object has to be closed, manifold (edges have no more than 2 adjacent polygons), with outward-facing normals, and no self-intersections. To check, you can try the following. You can display the polygon normals and check their outward facing. You can display border edges and check that there aren't any (meaning the mesh is closed). You can check for non-manifold geometry in the Cleanup window (edges should not have 3+ polygons sharing them, only 2.) There isn't a way to check for self-intersections yet.<br />
<br />
If the problem appears in a secondary break, set the internal offset under the voronoi options of the primary break node to 0. A small internal offset creates gaps between the fragments, but in some cases it can create small self-intersections where the offset takes the vertex through a thin part of the model.<br />
<br />
=== The scene is slow when I rewind or locks up when I connect a large object ===<br />
Increase the 'point separation' before connecting it. This is a world-space sampling distance used to convert all objects to a point-based representation. (Enable 'Draw points' to see the point cloud.)<br />
<br />
=== Baking or caching is extremely slow compared to live sim ===<br />
<br />
Make sure autokey is disabled.<br />
<br />
=== The sim looks wrong after baking to keys, objects are far apart ===<br />
Make sure the scene units are centimeters. Other units are currently not supported.<br />
<br />
=== The simulation suddenly stops ===<br />
Make sure the 'Playback speed' in the Maya preferences is set to 'Play every frame'.<br />
<br />
[[File:Playback_speed.png]]<br />
<br />
=== The fragments disappear after frame 1 ===<br />
This means your events are not configured to break anything. The fragments visible on the start frame are a ''preview'' of what will happen when the object eventually breaks during the sim. It's the unbroken object which is injected into the simulation when you hit play, which is why the fragments look as if they've disappeared. If none of your events are configured to break anything, the entire simulation will consist of only the unbroken objects, no fragments will be produced and the fragmentGroup will remain empty. This is correct and expected behavior.<br />
<br />
=== Crack image mode doesn't work ===<br />
The texture needs to be white lines on a black background to work, NOT black lines on a white background.<br />
<br />
=== The undamaged part of an object using crack image won't stay still ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?p=19509#p19509<br />
<br />
=== The simulation sometimes explodes using the internal solver ===<br />
Set a velocity limit. Use the numeric display (before or after baking to keys) to find a sensible maximum value.<br />
<br />
=== The simulation sometimes explodes immediately with Bullet ===<br />
Change the shape class to btGImpactMeshShape. Sometimes bullet has problems dealing with collision between convex and non-convex objects.<br />
<br />
=== I cannot animate things without the solver running ===<br />
Uncheck active on the simulator globals tab.<br />
<br />
=== Deformable collision objects don't work with Bullet ===<br />
These are only supported by the internal solver.<br />
<br />
=== Animating the transform scale doesn't work ===<br />
Animation for passive objects is only supported on translate and rotate. Mesh deformation is tracked by the internal solver, so you can workaround this by baking the scale into the point positions.<br />
<br />
=== How do I change the animation of a passive object? ===<br />
Disconnect it from the simulator using the button on the inputs tab. Change the animation. Reconnect it.<br />
<br />
=== I can't see the preview geometry, or any extra output from the break node ===<br />
Fracture is incompatible with Viewport 2.0 (which is the default in Maya 2015 and up), so all users using 2015 will have to switch the viewport back to legacy mode (renderer → legacy default viewport) to view simulator previews or any extra output from the break node (e.g. the paths extracted from the crack image texture).<br />
<br />
Depending on which OS you're using, in the Preferences you may have to switch OpenGL back to compatibility mode before the legacy viewport will work.<br />
<br />
=== How do I get better collisions in Bullet? ===<br />
* In the object's bullet section, increase the collision margin.<br />
* In the Globals --> Solver --> increase Fixed Time Step.<br />
<br />
=== The particles from the "emit particles on break" event don't work with fluids ===<br />
On the simulator globals tab, right at the bottom, under the meshes layout, there's an 'Update world' option menu. Switch that to 'before'. There's tooltip explaining the functionality more in depth.<br />
<br />
===Fracture FX in Maya 2016 crashes when I turn on parallel rig evaluation"===<br />
When you load fracture in Maya 2016, parallel rig evaluation will be disabled, because fracture is not compatible with it. Do not switch parallel evaluation back on, otherwise it will crash Maya.<br />
[http://static-dc.autodesk.net/content/dam/autodesk/www/Company/files/Parallel_Maya.pdf More info here.]<br />
<br />
[[File:Parallel_eval.png]]<br />
<br />
===Fragments fall through the ground with Bullet ===<br />
<br />
Try increasing the 'Fixed time step (Hz)' value on the solver globals. If the ground is a mesh (rather than the built-in ground plane) make it thicker (use a separate non-rendering object if necessary). Try raising the collision margin for the object on the inputs tab.<br />
<br />
=== Are face materials and color sets supported? ===<br />
<br />
Yes. See [[Shading_and_texturing#Face_materials_and_color_sets|this page]]<br />
<br />
=== Secondary breaking doesn't use the right break settings ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1705<br />
<br />
= Workflow Questions = <br />
<br />
=== How do I animate cracks? ===<br />
The breaking pattern produced by the voronoi/split-plane/crack-image fragment modes cannot be animated. You can only animate a mask applied to that pattern, in the form of an animated texture sequence, animated procedural texture or ramp, or an animated/deforming volume. Set the localize mode to event-driven, and connect a texture or volume. Alternatively, choose Add event -> Animated -> Texture driven, from the menu under the events tab. In any case, you may want to uncheck the active flag on the simulator while keyframing, in order to stop the solver evaluating when you jump around the timeline.<br />
<br />
If you don't need to see partially growing cracks inside an object, a faster alternative to the localize mode is to create an event that breaks the entire object on frame 2, but leaves the fragments passive (activate-on-break = off). Then activate the objects that touch an animated/deforming volume from a second event, e.g. Add event -> Animated -> Activate in volume.<br />
<br />
=== Keyframed objects won't break when they collide ===<br />
Make sure they're both connected to the simulator. (They're connected if they're listed under the inputs tab, and still appear in the viewport when you switch off the display of polygons.) If ''both'' objects are keyframed, also make sure 'passive collide' is enabled in the solver globals, otherwise the simulator will not check for collisions between two passive (non-simulated) objects.<br />
<br />
=== Are events tied to particular objects? ===<br />
No, by design events can break any number of objects, at different times and with different break properties per object. Some events may not break anything, and may only modify the dynamics properties or the custom attributes carried by objects. You can however choose to restrict events to particular objects using the ''object'' filter, or groups of objects using the ''object_set'' filter. Events are meant to be customisable. See [[Events_and_filters|Events and filters]] for more information.<br />
<br />
=== Should I scale units like mass and gravity depending on my Maya units? ===<br />
Units can be whatever you want them to be. The only unit that's fixed is time (seconds). If you decide the numbers you use for distance represent meters, then gravity is meters-per-second-per-second (ms^-2). If you decide your mass is kg, then your impact force becomes newtons, and so on. They're all linked.<br />
<br />
=== How do I vary the secondary break pattern? ===<br />
http://community.fracture-fx.com/viewtopic.php?t=1549&f=13<br />
<br />
=== How do I get custom data to drive a shader? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18989#p18989<br />
<br />
=== How do I get a character to activate fragments? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18782#p18782<br />
<br />
=== How do I locally break a wall then break the rest of it at a later frame? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=19001#p19001<br />
<br />
=== How do I edit fragment keyframes before exporting to Alembic? ===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1701&p=19875#p19875<br />
<br />
===How do I script the creation of attributes, filters, modifiers?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1720<br />
<br />
=== What does the update transform button do? ===<br />
It moves the break node's transform back to match the object's transform, if the object has been moved since it was broken, so the origins match again. The position of things like split planes are recorded relative to the break node so that the same node can be reused to break multiple objects (by setting their "breakWith" attribute). The objects may be nowhere near each other, so there has to be another point of reference, which is the origin of the break node.<br />
<br />
=== How do I stop displacement on fragments before they're activated? ===<br />
<br />
On the inputs tab, under the custom data section for the object, add a float called "dispScale", and set it to 0.<br />
<br />
[[File:dispScale0.png]]<br />
<br />
In the event that activates the fragments, add an assign modifier, setting "dispScale" to 1.<br />
<br />
[[File:dispScale1.png]]<br />
<br />
Now the fragments will have zero displacement until they're activated.<br />
<br />
Note: This doesn't work with 'replace with keys' because afterwards the node which recomputes the mesh with a time-varying displacement scale will be gone. You'd have to export to Alembic instead.<br />
<br />
=== How do I have two layers of breaking on one object? ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1768<br />
<br />
=== What's the difference between solver num steps and simulating subframes? ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1788<br />
<br />
===Can we link our own particle shape to a breakGeo?===<br />
Yes, just uncheck 'Regenerate during sim' (Voronoi/Options)<br />
<br />
===How to avoid interpenetration?===<br />
Assuming you are using bullet, you can tweak values in 2 locations:<br />
object --> Bullet (play around with collision margin and shape class)<br />
globals --> solver --> num steps and fixed time steps.<br />
<br />
===If I use automatic projections to create UV for interior faces, is there a way to select just those faces later so I can scale the UVs?===<br />
Select the fragments, and choose Fracture -> Convert selection -> To interior faces<br />
<br />
===How do I propagate custom attributes to the fragment meshes?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1810</div>Craighttp://wiki.fracture-fx.com/index.php?title=FxCmdFxCmd2019-11-02T11:18:29Z<p>Craig: </p>
<hr />
<div>'''fxCmd pointCloud <fracture node>'''<br />
<br />
Regenerate the point cloud for voronoi-style breaking<br />
<br />
<br />
'''fxCmd createBody [fxWorld node] <input mesh shape|plug>'''<br />
<br />
Add a new rigid body to the simulator, whose shape is defined by the mesh on the given shape or plug. Plug identifies an element of in_mesh[] on the simulator/world-node. Normally called from the initialize script, but can be run at any time.<br />
<br />
<br />
'''fxCmd fractureBody [fxWorld node] <body ID> [collider ID (or -1)] <break-geo node>'''<br />
<br />
Break a rigid body using the given node. Normally called from the script of a collision event, but can be run at any time. The body is removed from the simulator and replaced with one or more shards. Returns an int array of the body IDs of all resulting shards. The optional collider ID is the body used for localized breaking.<br />
<br />
<br />
'''fxCmd hasFracture [fxWorld node] <fracture logical-index>'''<br />
<br />
Return non-zero if a fracture node is connected to the simulator at the given element of in_fxFracture<br />
<br />
<br />
'''fxCmd hasBody [fxWorld node] <body ID>'''<br />
<br />
Return non-zero if a body with the given ID still exists in the simulation. When a body is fractured it is removed from the simulation and replaced with one or more shards, each with their own ID<br />
<br />
<br />
'''fxCmd hasAttr [fxWorld node] <body ID> <name>'''<br />
<br />
Return non-zero if custom data of the given name exists on the given rigid body<br />
<br />
<br />
'''fxCmd getAttr [fxWorld node] <body ID> <name>'''<br />
<br />
Return the value of named custom data on a rigid body. If the data doesn't exist 0 is returned. You can distinguish between non-existing data, and existing data with the value 0, using the hasAttr call.<br />
<br />
<br />
'''fxCmd setAttr [fxworld node] <body ID> <name> <type> <value>'''<br />
<br />
Set named custom data on a body. Type is one of: bool/int/float/vector/string. Overwrites any existing data on that body with the same name.<br />
<br />
<br />
'''fxCmd addParams <node>'''<br />
<br />
Add attributes to a shape node to hold dynamics parameters. Rigid bodies derived from this node will inherit the dynamics parameters<br />
<br />
<br />
'''fxCmd listFilterTypes'''<br />
<br />
List all available filter types supported by the plug-in.<br />
<br />
<br />
'''fxCmd listCustomData <node>'''<br />
<br />
Return a string array listing the names and types of custom data on the given shape node. Name/type pairs are interleaved in the returned array. The values of those attributes will be copied to custom data on when a rigid body is created from that shape node. Attributes on the node are prefixed with "fxAttr".<br />
<br />
<br />
<br />
'''fxCmd contactQuery [fxWorld node] <-count | -pairs | -unique_pairs -bodies>'''<br />
<br />
To be used in the script of a collision event. Returns info about the bodies that passed all the filters for the event.<br />
:-count : The number of pairs of colliding bodies that passed all filters<br />
:-pairs : Returns an int array containing pairs of IDs of the colliding bodies which passed all filters. The size of the resulting array is always even, since it holds pairs of body IDs. One body may appear in the list multiple times (ie. in multiple pairs), since it could have collided with more than one other body.<br />
:-unique_pairs : The same as -pairs, but with the constraint that each body (other than the ground plane) will appear at most once in the entire list; this means that not all colliding pairs are listed. Used to avoid a call to fracture_body more than once per body when that body is involved in multiple collisions during one time step.<br />
:-bodies : Returns the IDs of colliding bodies across all pairs. The returned int array is a unique list of bodies involved in any number of collisions. Each body appears in the list exactly once.<br />
<br />
<br />
'''fxCmd bakeToKeys <take log idx> <simulator node>'''<br />
<br />
Bake the simulation to keyframes, overwriting the take at the given index<br />
<br />
<br />
'''fxCmd clearTake <take log idx> <simulator node>'''<br />
<br />
Remove all animcurves on all input objects and shards for the given take.<br />
<br />
'''<br />
fxCmd replaceWithKeys <take log idx> <simulator node>'''<br />
<br />
Remove the simulator, break-geo nodes, and reconnect all animcurves for the take at the given index into the corresponding transform nodes.<br />
<br />
<br />
'''fxCmd modify {intArray of body IDs} [opp body ID]'''<br />
<br />
Run the given rigid bodies through the modifier list for the current event. Callable from the script of collide and anim events. Optionally pass the ID of the opposing body in a collision pair, for modifiers that support it.<br />
<br />
<br />
'''fxCmd animQuery [-bodies]'''<br />
<br />
Return the IDs of rigid bodies that passed the filter list of an animEvent. Should be used in the script of an animEvent.<br />
<br />
<br />
'''fxCmd setInitialState [nodes ...]'''<br />
<br />
If no args are specified, set the initial state for selected objects; otherwise assume all string args are the names of nodes to set the state for.<br />
<br />
<br />
'''fxCmd listUniqueCustomData {nodes}'''<br />
<br />
Return an interleaved array of the names and types of all custom data used across the nodes in the input string array. Data with the same name on several nodes appears once.<br />
<br />
=fxCmd shading=<br />
<br />
'''fxCmd shading -abcex'''<br />
<br />
Save shader assignments on input objects in the argument list as dynamic attrs, prior to Alembic export, so they're written to the abc. These will be used after abc import to reattach shaders (along with some other dynamic attributes which always exist on the geometry and are not merely added for Alembic).<br />
<br />
:stringArray fxAbcShader : String array of shadingGroup names<br />
:intArray fxAbcShaderIndex : Per-poly index into fxAbcShader<br />
:string fxAbcInteriorShader : Interior shader<br />
<br />
'''fxCmd shading -abcrm'''<br />
<br />
Removes attributes attached by -abcex<br />
<br />
<br />
If neither -abcex not -abcrm are set, 'fxCmd shading' operates on selected meshes, or the argument list, and supports the following flags:<br />
<br />
:-autoUV : polyAutoProjection on fragments<br />
:-removeAutoUV : Delete polyAutoProj nodes upstream of fragments<br />
:-removeGroups : Remove groupParts nodes<br />
:-selectSet : Create a selection set per input object holding the interior faces<br />
:-shader : Propagate shaders from input objects to broken objects<br />
:-removeShader : Break all connections to shadingEngine nodes<br />
:-removeInputShader : If -removeShader is set, also remove shaders for broken input objects. If omitted only fragments have shaders removed.</div>Craighttp://wiki.fracture-fx.com/index.php?title=Common_IssuesCommon Issues2018-03-06T20:51:10Z<p>Craig: /* Workflow Questions */</p>
<hr />
<div>= Installation =<br />
<br />
=== Bullet doesn't load ===<br />
If you see the error "initializePlugin function could not be found in plug-in (bullet)", then the bullet plug-in is not installed correctly. It should remain inside the fracture_plugins directory, since it is a plug-in to fracture, not a separate plug-in to Maya. fracture_plugins should be placed alongside the fracture.mll/.bundle/.so. Once it's in the correct directory, bullet can be loaded from under the solver globals in the Edit Simulator window. See [[Installing_the_plug-in|Installing the plug-in]] for more information.<br />
<br />
=== What do I do with the devkit folder? ===<br />
You can ignore the devkit folder, it does not need to be installed to use the plug-in. The devkit is intended for developers at larger studios who wish to connect an in-house solver.<br />
<br />
=== Fracture doesn't load on the Mac ===<br />
If you see this error:<br />
<pre>// Error: line 1: Unable to dynamically load : /Users/Shared/Autodesk/maya/2013/plug-ins/fracture.bundle<br />
does not match the current architecture //</pre><br />
then the file is likely corrupted, and is not being identified as a 64-bit bundle. Reinstall the plug-in from the zip archive you downloaded.<br />
<br />
= Common problems =<br />
<br />
=== There's a large pyramid when I break something ===<br />
The object has to be closed, manifold (edges have no more than 2 adjacent polygons), with outward-facing normals, and no self-intersections. To check, you can try the following. You can display the polygon normals and check their outward facing. You can display border edges and check that there aren't any (meaning the mesh is closed). You can check for non-manifold geometry in the Cleanup window (edges should not have 3+ polygons sharing them, only 2.) There isn't a way to check for self-intersections yet.<br />
<br />
If the problem appears in a secondary break, set the internal offset under the voronoi options of the primary break node to 0. A small internal offset creates gaps between the fragments, but in some cases it can create small self-intersections where the offset takes the vertex through a thin part of the model.<br />
<br />
=== The scene is slow when I rewind or locks up when I connect a large object ===<br />
Increase the 'point separation' before connecting it. This is a world-space sampling distance used to convert all objects to a point-based representation. (Enable 'Draw points' to see the point cloud.)<br />
<br />
=== Baking or caching is extremely slow compared to live sim ===<br />
<br />
Make sure autokey is disabled.<br />
<br />
=== The sim looks wrong after baking to keys, objects are far apart ===<br />
Make sure the scene units are centimeters. Other units are currently not supported.<br />
<br />
=== The simulation suddenly stops ===<br />
Make sure the 'Playback speed' in the Maya preferences is set to 'Play every frame'.<br />
<br />
[[File:Playback_speed.png]]<br />
<br />
=== The fragments disappear after frame 1 ===<br />
This means your events are not configured to break anything. The fragments visible on the start frame are a ''preview'' of what will happen when the object eventually breaks during the sim. It's the unbroken object which is injected into the simulation when you hit play, which is why the fragments look as if they've disappeared. If none of your events are configured to break anything, the entire simulation will consist of only the unbroken objects, no fragments will be produced and the fragmentGroup will remain empty. This is correct and expected behavior.<br />
<br />
=== Crack image mode doesn't work ===<br />
The texture needs to be white lines on a black background to work, NOT black lines on a white background.<br />
<br />
=== The undamaged part of an object using crack image won't stay still ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?p=19509#p19509<br />
<br />
=== The simulation sometimes explodes using the internal solver ===<br />
Set a velocity limit. Use the numeric display (before or after baking to keys) to find a sensible maximum value.<br />
<br />
=== The simulation sometimes explodes immediately with Bullet ===<br />
Change the shape class to btGImpactMeshShape. Sometimes bullet has problems dealing with collision between convex and non-convex objects.<br />
<br />
=== I cannot animate things without the solver running ===<br />
Uncheck active on the simulator globals tab.<br />
<br />
=== Deformable collision objects don't work with Bullet ===<br />
These are only supported by the internal solver.<br />
<br />
=== Animating the transform scale doesn't work ===<br />
Animation for passive objects is only supported on translate and rotate. Mesh deformation is tracked by the internal solver, so you can workaround this by baking the scale into the point positions.<br />
<br />
=== How do I change the animation of a passive object? ===<br />
Disconnect it from the simulator using the button on the inputs tab. Change the animation. Reconnect it.<br />
<br />
=== I can't see the preview geometry, or any extra output from the break node ===<br />
Fracture is currently incompatible with Viewport 2.0 (which is the default in Maya 2015 and up), so all users using 2015 will have to switch the viewport back to legacy mode (renderer → legacy default viewport) to view simulator previews or any extra output from the break node (e.g. the the paths extracted from the crack image texture).<br />
<br />
=== How do I get better collisions in Bullet? ===<br />
* In the object's bullet section, increase the collision margin.<br />
* In the Globals --> Solver --> increase Fixed Time Step.<br />
<br />
=== The particles from the "emit particles on break" event don't work with fluids ===<br />
On the simulator globals tab, right at the bottom, under the meshes layout, there's an 'Update world' option menu. Switch that to 'before'. There's tooltip explaining the functionality more in depth.<br />
<br />
===Fracture FX in Maya 2016 crashes when I turn on parallel rig evaluation"===<br />
When you load fracture in Maya 2016, parallel rig evaluation will be disabled, because fracture is not compatible with it. Do not switch parallel evaluation back on, otherwise it will crash Maya.<br />
[http://static-dc.autodesk.net/content/dam/autodesk/www/Company/files/Parallel_Maya.pdf More info here.]<br />
<br />
[[File:Parallel_eval.png]]<br />
<br />
===Fragments fall through the ground with Bullet ===<br />
<br />
Try increasing the 'Fixed time step (Hz)' value on the solver globals. If the ground is a mesh (rather than the built-in ground plane) make it thicker (use a separate non-rendering object if necessary). Try raising the collision margin for the object on the inputs tab.<br />
<br />
=== Are face materials and color sets supported? ===<br />
<br />
Yes. See [[Shading_and_texturing#Face_materials_and_color_sets|this page]]<br />
<br />
=== Secondary breaking doesn't use the right break settings ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1705<br />
<br />
= Workflow Questions = <br />
<br />
=== How do I animate cracks? ===<br />
The breaking pattern produced by the voronoi/split-plane/crack-image fragment modes cannot be animated. You can only animate a mask applied to that pattern, in the form of an animated texture sequence, animated procedural texture or ramp, or an animated/deforming volume. Set the localize mode to event-driven, and connect a texture or volume. Alternatively, choose Add event -> Animated -> Texture driven, from the menu under the events tab. In any case, you may want to uncheck the active flag on the simulator while keyframing, in order to stop the solver evaluating when you jump around the timeline.<br />
<br />
If you don't need to see partially growing cracks inside an object, a faster alternative to the localize mode is to create an event that breaks the entire object on frame 2, but leaves the fragments passive (activate-on-break = off). Then activate the objects that touch an animated/deforming volume from a second event, e.g. Add event -> Animated -> Activate in volume.<br />
<br />
=== Keyframed objects won't break when they collide ===<br />
Make sure they're both connected to the simulator. (They're connected if they're listed under the inputs tab, and still appear in the viewport when you switch off the display of polygons.) If ''both'' objects are keyframed, also make sure 'passive collide' is enabled in the solver globals, otherwise the simulator will not check for collisions between two passive (non-simulated) objects.<br />
<br />
=== Are events tied to particular objects? ===<br />
No, by design events can break any number of objects, at different times and with different break properties per object. Some events may not break anything, and may only modify the dynamics properties or the custom attributes carried by objects. You can however choose to restrict events to particular objects using the ''object'' filter, or groups of objects using the ''object_set'' filter. Events are meant to be customisable. See [[Events_and_filters|Events and filters]] for more information.<br />
<br />
=== Should I scale units like mass and gravity depending on my Maya units? ===<br />
Units can be whatever you want them to be. The only unit that's fixed is time (seconds). If you decide the numbers you use for distance represent meters, then gravity is meters-per-second-per-second (ms^-2). If you decide your mass is kg, then your impact force becomes newtons, and so on. They're all linked.<br />
<br />
=== How do I vary the secondary break pattern? ===<br />
http://community.fracture-fx.com/viewtopic.php?t=1549&f=13<br />
<br />
=== How do I get custom data to drive a shader? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18989#p18989<br />
<br />
=== How do I get a character to activate fragments? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18782#p18782<br />
<br />
=== How do I locally break a wall then break the rest of it at a later frame? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=19001#p19001<br />
<br />
=== How do I edit fragment keyframes before exporting to Alembic? ===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1701&p=19875#p19875<br />
<br />
===How do I script the creation of attributes, filters, modifiers?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1720<br />
<br />
=== What does the update transform button do? ===<br />
It moves the break node's transform back to match the object's transform, if the object has been moved since it was broken, so the origins match again. The position of things like split planes are recorded relative to the break node so that the same node can be reused to break multiple objects (by setting their "breakWith" attribute). The objects may be nowhere near each other, so there has to be another point of reference, which is the origin of the break node.<br />
<br />
=== How do I stop displacement on fragments before they're activated? ===<br />
<br />
On the inputs tab, under the custom data section for the object, add a float called "dispScale", and set it to 0.<br />
<br />
[[File:dispScale0.png]]<br />
<br />
In the event that activates the fragments, add an assign modifier, setting "dispScale" to 1.<br />
<br />
[[File:dispScale1.png]]<br />
<br />
Now the fragments will have zero displacement until they're activated.<br />
<br />
Note: This doesn't work with 'replace with keys' because afterwards the node which recomputes the mesh with a time-varying displacement scale will be gone. You'd have to export to Alembic instead.<br />
<br />
=== How do I have two layers of breaking on one object? ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1768<br />
<br />
=== What's the difference between solver num steps and simulating subframes? ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1788<br />
<br />
===Can we link our own particle shape to a breakGeo?===<br />
Yes, just uncheck 'Regenerate during sim' (Voronoi/Options)<br />
<br />
===How to avoid interpenetration?===<br />
Assuming you are using bullet, you can tweak values in 2 locations:<br />
object --> Bullet (play around with collision margin and shape class)<br />
globals --> solver --> num steps and fixed time steps.<br />
<br />
===If I use automatic projections to create UV for interior faces, is there a way to select just those faces later so I can scale the UVs?===<br />
Select the fragments, and choose Fracture -> Convert selection -> To interior faces<br />
<br />
===How do I propagate custom attributes to the fragment meshes?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1810</div>Craighttp://wiki.fracture-fx.com/index.php?title=Release_notesRelease notes2018-01-06T11:04:49Z<p>Craig: /* 2.1 */</p>
<hr />
<div>== 2.1 ==<br />
* Edit fragments tool to add/remove particles<br />
* Reduce default internal offset for voronoi<br />
* Select buttons on object/object_set filters (mantis 324)<br />
* Fixed connect popup broken on anim_condition filter (mantis 336)<br />
* Write scene name into take log (mantis 330)<br />
* Color for volume filters (mantis 323)<br />
* 'Add with scene name' take button (mantis 330)<br />
* Workaround 2018 VP2 mesh display bug<br />
* Require MAYA_ENABLE_LEGACY_VIEWPORT=1 in 2018<br />
<br />
== 2.0.2 ==<br />
* Fixed bakeToDisk crash in 2017 on Mac<br />
<br />
== 2.0.1 ==<br />
* Warn about input objects with no shaders (from 1.9.11)<br />
<br />
== 2.0 ==<br />
* Springs<br />
* Transfer break node between meshes<br />
* Volume filter can test initial state position of RB, instead of only the current world position<br />
* Upgrade to bullet 2.8.3<br />
<br />
== 1.9.12 ==<br />
* Fixed bakeToDisk crash in 2017 on Mac. (Backported from 2.0.2)<br />
<br />
== 1.9.11 ==<br />
* Warn about input objects with no shaders<br />
<br />
== 1.9.10 ==<br />
* Fixed chance filter above modifier not resetting and giving different results on rewind<br />
<br />
== 1.9.9 ==<br />
* Fixed input objects no longer connected to simulator after reference reload<br />
<br />
== 1.9.7 ==<br />
* Preset buttons for shading/texturing parameters<br />
* Choose UV set for interior faces polyAutoProj<br />
* Separate checkbox to remove groupParts nodes<br />
* Remove polyPlanarProj and polyTweakUV as well as polyAutoProj<br />
* Option to disconnect shaders from broken input object preview mesh<br />
<br />
== 1.9.6 ==<br />
* Apply pre/post-break transform to particles as well as mesh<br />
<br />
== 1.9.5 ==<br />
* Shading/texturing removes broken groupParts nodes when removing polyAutoProj<br />
* Pre-break and post-break transform for user scripts<br />
<br />
== 1.9.4 ==<br />
*Release for Maya 2017 (mac and windows only)<br />
<br />
== 1.9.3 ==<br />
*Dive post-sim displacement with float"dispScale" fragment attribute, so user can specify which fragments should be displaced using modifiers (eg only active fragments get displacement)<br />
<br />
== 1.9.2 ==<br />
* Fixed shaders sometimes reappearing on different polygons after scene open.<br />
WARNING: You need to re-run propagate shaders if upgrading to this version<br />
* Auto keyframe is now disabled before baking, to avoid slowdown<br />
<br />
== 1.9.1 ==<br />
* Fixed crash if volume localized produces zero polygons for inside-volume region<br />
* Fixed splinter pattern disappearing when rotated<br />
<br />
== 1.9.0 ==<br />
* Show event colors in the list of events. (Mantis 220,223)<br />
* Reorder events list<br />
<br />
== 1.8.23 ==<br />
* Fixed takes not displaying on scene open if the scene was saved on or before the start frame<br />
<br />
== 1.8.22 ==<br />
* Fixed visibility keyed off before the start frame for input objects when baking to keys<br />
* Fixed hypergraph close failing when lsUI sometimes returns a non-existent window<br />
<br />
== 1.8.21 ==<br />
* Replace-with-keys no longer loses shader attachments<br />
* Close hypergraph windows before replace-with-keys or shading/texturing runs, to avoid slowdown<br />
<br />
== 1.8.20 ==<br />
* Fixed fragment shader assignment failing with multiple simulators<br />
<br />
== 1.8.19 ==<br />
* Fixed secondary UV sets not created on fragments<br />
* Indicate which event templates are breaking/non-breaking<br />
<br />
== 1.8.18 ==<br />
* Check eno1 on Linux<br />
<br />
== 1.8.17 ==<br />
* Fixed cache files larger than 2Gb failing on Windows. Maya 2015+ only, due to a separate bug in Visual C++ 10.0 which is required for Maya 2014.<br />
* Check eth1/eth2 on Linux<br />
<br />
== 1.8.16 ==<br />
* Maya 2016 compatibility<br />
<br />
== 1.8.15 ==<br />
* Added voronoi seed/numPoint override attrs to modifier data menu<br />
<br />
== 1.8.14 ==<br />
* Fixed load failing in 2013 due to treeView -ams flag<br />
<br />
== 1.8.13 ==<br />
* Option to draw solid shaded simulator preview when viewport is in wireframe mode<br />
* Fixed clusters generating incorrect warning about bullet shapeClass change during sim<br />
* HUD display bodyId of selected fragment<br />
<br />
== 1.8.12 ==<br />
* Fixed shells that did not intersect a split-plane from behaving as one combined shell.<br />
<br />
== 1.8.11 ==<br />
* Delete rigid bodies in the same order each time. Workaround for Bullet sim variation.<br />
* Fixed rare sim variation over multiple takes with internal solver.<br />
<br />
== 1.8.10 ==<br />
* Support AbcExport -eulerFilter. (2014 and up)<br />
<br />
== 1.8.9 ==<br />
* Fixed combined shells not kept together for split-plane mode<br />
<br />
== 1.8.8 ==<br />
* Option to keep combined shells together during breaking<br />
* Fixed inside/outside custom data invalid for mesh shells that don't intersect the localized cutting volume. Mantis 247<br />
<br />
== 1.8.7 ==<br />
* Fixed transform above input object sometimes not updating when scrubbing timeline after baking to keys<br />
* Fixed error about inability to retrieve mesh if an object is added after the start frame and before the bullet sim world is created<br />
<br />
== 1.8.6 ==<br />
* Added HUD to display info about selected fragment<br />
* Fixed long cache filename limiting the movement of the left/right divider on the takes tab<br />
<br />
== 1.8.5 ==<br />
* Fixed displacement broken not applied if takes were deleted<br />
<br />
== 1.8.4 ==<br />
* Constrain displacement direction at cutting edges to be the same for all fragment vertices at the same position. (Requires rebake to work.)<br />
* Option to move selection up the object tree a level<br />
<br />
== 1.8.3 ==<br />
* Allow undo of object tree edit operations<br />
* Object tree can mirror scene DAG and reveal selection<br />
<br />
== 1.8.2 ==<br />
* Input object list is now a treeView, for collapsable groups<br />
<br />
== 1.8.1 ==<br />
* Fixed shading normals not recomputed after interior face displacement<br />
<br />
== 1.8.0 ==<br />
* Post-sim displacement on interior faces<br />
* Random number seed for particle emitter<br />
<br />
== 1.7.5 ==<br />
* Check WiFi adapters on Windows<br />
<br />
== 1.7.4 ==<br />
* Option to break all shader connections from fragments. Workaround for Maya sometimes failing with "Unable to update render layer adjustment"<br />
* Shading/texturing prints progress and is interruptable<br />
<br />
== 1.7.3 ==<br />
* Workaround 3D paint tool sometimes not producing a unique name per texture<br />
* Workaround for fluid not emitting from particles, unless the particles are cached. Set update world to before on globals. (Mantis 244)<br />
* Fixed geometry disappearing in Mac builds<br />
<br />
== 1.7.2 ==<br />
* Fix scripted rotation change on a passive fragment sometimes causing a jump in position<br />
<br />
== 1.7.1 ==<br />
* Draw wireframe checkbox for simulator preview<br />
* Numeric display of object size<br />
<br />
== 1.7.0 ==<br />
* Splinter fragment type<br />
<br />
== 1.6.1 ==<br />
* Allow shading/texturing to work on imported alembic archives. (Requires re-export of the alembic.)<br />
* Fixed paint tool not displaying map using correct UV set<br />
<br />
= 1.6.0 =<br />
* Option to propagate shaders to fragments, autoUV interior faces, or create selection sets. (New scenes only.)<br />
* Replaced blind data with intArray to identify interior faces. (New scenes only.)<br />
* Fixed convert selection to interior faces not working with split-plane mode<br />
* Fixed numeric overflow in point sample count leading to memory explosion, caused by the combination of a large scene scale with a small point separation.<br />
* Fixed cache file exists test failing on Windows. Mantis 218<br />
* Changed simulator defaults (gravity, point sep, solver)<br />
* Fixed listParams error sometimes occurring after playback is stopped, for non-unique object names. Mantis 196<br />
<br />
= 1.5.3 =<br />
* Allow localize event-driven mode to work with replace-with-keys in fragments-only mode<br />
<br />
=1.5.2=<br />
* Workaround paint tool sometimes failing when used on models with multiple UV sets<br />
<br />
= 1.5.1 =<br />
* Fixed crash when simulating without any objects connected to the simulator.<br />
<br />
= 1.5.0 = <br />
* Simulator GL preview now displays polygons by default rather than a triangle mesh<br />
* Fixed randomize color on break node sometimes failing<br />
* Fixed simulator window not closing when creating a new scene<br />
* Point sampling produces fewer points, and reduces further if too many would be introduced for large objects<br />
* Added button to data filter to grab data value from selected fragment, e.g. for cluster colors<br />
* Fixed assign modifier text field failing to focus on Mac when clicking on it<br />
* Force paint tool stamp profile to solid by default<br />
* Option to override voronoi pointSeed per object using the same break node. Set integer data fxBreak_pointSeed<br />
<br />
= 1.4.16 =<br />
* Link randomize colors flag to displayColors on the mesh shape, and hide the toggle color display button for new scenes<br />
<br />
= 1.4.15 = <br />
* Fixed cluster fragments jumping back when the cluster separates if the cluster was passive and activated later in the sim<br />
<br />
= 1.4.14 = <br />
* Remove inheritSurfaceTex option. It's now set automatically if a texture modifier is used in the event. Mantis 73<br />
* New file nodes created for painting now have filtering disabled by default<br />
* Reorganize crack-image UI, and disable image threshold by default. Mantis 112<br />
* Link enable flag for chained break node under cluster settings to the cluster preview mesh visibility<br />
* Fixed cluster volumes not working if input model was scaled prior to breaking. Mantis 127<br />
* Connect selected meshes as cluster volumes<br />
* Fixed cache write path tokens not expanded before the test as to whether or not the file exists. Mantis 131</div>Craighttp://wiki.fracture-fx.com/index.php?title=Installing_the_plug-inInstalling the plug-in2017-12-30T17:44:12Z<p>Craig: </p>
<hr />
<div><span style="color:red">'''These instructions are for the full version of Fracture FX.'''<br /><br />
'''For instructions on installing the trial version, please check the "Fracture FX Trial Download" email you received.'''</span><br />
<br /><br /><br />
<br />
__TOC__<br />
<br />
== Contents of the build folder ==<br />
<br />
Upon purchasing Fracture FX, you will be sent an email called "Your Order at Fracture FX". Use the log in details inside that email to log in at your user area: https://www.fracture-fx.com/user<br />
<br />
Go to the "Files" tab to download your copy of Fracture FX. The Fracture FX download is a compressed file, so please use winzip, winrar or gzip to extract the content.<br />
<br />
Once extracted, you will see 3 folders:<br />
<br />
[[File:folderContent.jpeg]]<br />
<br />
#'''lib:''' this folder contains the actual Fracture plugin for each OS and Maya version. You obviously proceed with the folder relevant to your system. <span style="color:red"> IMPORTANT: copy the "fracture_plugins" folder in the same location as fracture.so/fracture.mll/fracture.bundle (for more info about that see below). The "fracture_plugins" folder contains plugins used by Fracture. In this case the Bullet solver. Do no attempt to load this plugin through the plug-in manager. This will happen automagically when you load Fracture. </span><br />
#'''mel''': this folder contains the MEL scripts that support the plugin. For installation see below.<br />
#'''devkit''': this folder contains the API that allows developers to connect Fracture with external solvers.<br />
<br><br />
<br />
== Installing the plug-in (fracture.so/fracture.bundle/fracture.mll) ==<br />
<br />
The FractureFX plug-in needs to be installed to your Maya plug-in path. The path varies from OS to OS. Below is a basic reference of the standard paths. Those on a production pipeline may find that their paths are altered and don't reflect the examples below.<br />
<br />
Official documentation about plug-in paths can be found [http://download.autodesk.com/global/docs/maya2012/en_us/index.html?url=files/Environment_Variables_File_path_variables.htm,topicNumber=d28e123511 here].<br />
<br />
A note about the plugin directories. A default Maya installation may not create these folders by default. However if you do create (and name correctly) these directories, Maya will recognize them. Those working in a production pipeline may have to request the installation be handled by IT.<br />
<br />
'''Linux'''<br />
<pre><br />
<user's home directory>/maya/2014-x64/plug-ins<br />
/usr/autodesk/userconfig/maya/2014/plug-ins<br />
</pre><br />
<br />
'''Mac OS'''<br />
<pre><br />
<user's homefolder>/Library/Preferences/Autodesk/maya/2014-x64/plug-ins<br />
/Users/Shared/Autodesk/maya/2014/plug-ins<br />
</pre><br />
<br />
'''Windows'''<br />
<pre><br />
<user’s directory>/Documents/maya/2014-x64/plug-ins<br />
</pre><br />
<br />
== Installing the MEL scripts ==<br />
<br />
The MEL scripts need to be placed into a valid script path.<br />
<br />
'''Linux:'''<br />
<pre><br />
<user's home directory>/maya/2014-x64/scripts<br />
/usr/autodesk/userconfig/maya/2014/scripts<br />
</pre><br />
<br />
'''Mac OS'''<br />
<pre><br />
<user's homefolder>/Library/Preferences/Autodesk/maya/2014-x64/scripts<br />
/Users/Shared/Autodesk/maya/2014/scripts<br />
</pre><br />
'''Windows:'''<br />
<pre><br />
<user’s directory>/Documents/maya/2014-x64/scripts<br />
</pre><br />
<br />
If you are still having issues, the follow MEL commands can be used to print all the paths that Maya is looking in for plug-ins and scripts. When executing these commands, make sure you are using a MEL tab in the script editor, and not a Python tab!<br />
<pre><br />
getenv "MAYA_PLUG_IN_PATH"<br />
getenv "MAYA_SCRIPT_PATH"<br />
</pre><br />
<br />
== Overview ==<br />
<br />
[[File:Installation_dirs.png]]<br />
<br />
== Maya 2018 ==<br />
<br />
Due to a Maya 2018 bug, Fracture is not compatible with Viewport 2.0. To use Fracture with Maya 2018, you'll need to enable the Legacy Viewport by adding MAYA_ENABLE_LEGACY_VIEWPORT=1 to your maya.env file.<br />
<br />
More info here: https://vimeo.com/248014221<br />
<br />
How to set an environment variable using maya.env: https://knowledge.autodesk.com/support/maya/learn-explore/caas/CloudHelp/cloudhelp/2018/ENU/Maya-EnvVar/files/GUID-8EFB1AC1-ED7D-4099-9EEE-624097872C04-htm.html?v=2018<br />
<br />
== Loading the plug-in in Maya's plug-in manager ==<br />
To load Fracture in Maya, locate it in the Plug-in Manager (fracture.mll/fracture.so) and tick the check box on.<br />
<br><br />
<br />
[[File:PluginManagerScreenshot.jpeg]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=Release_notesRelease notes2017-12-16T18:09:37Z<p>Craig: /* 2.1 */</p>
<hr />
<div>== 2.1 ==<br />
* Edit fragments tool to add/remove particles<br />
* Reduce default internal offset for voronoi<br />
* Select buttons on object/object_set filters (mantis 324)<br />
* Fixed connect popup broken on anim_condition filter (mantis 336)<br />
* Write scene name into take log (mantis 330)<br />
* Color for volume filters (mantis 323)<br />
* 'Add with scene name' take button (mantis 330)<br />
<br />
== 2.0.2 ==<br />
* Fixed bakeToDisk crash in 2017 on Mac<br />
<br />
== 2.0.1 ==<br />
* Warn about input objects with no shaders (from 1.9.11)<br />
<br />
== 2.0 ==<br />
* Springs<br />
* Transfer break node between meshes<br />
* Volume filter can test initial state position of RB, instead of only the current world position<br />
* Upgrade to bullet 2.8.3<br />
<br />
== 1.9.12 ==<br />
* Fixed bakeToDisk crash in 2017 on Mac. (Backported from 2.0.2)<br />
<br />
== 1.9.11 ==<br />
* Warn about input objects with no shaders<br />
<br />
== 1.9.10 ==<br />
* Fixed chance filter above modifier not resetting and giving different results on rewind<br />
<br />
== 1.9.9 ==<br />
* Fixed input objects no longer connected to simulator after reference reload<br />
<br />
== 1.9.7 ==<br />
* Preset buttons for shading/texturing parameters<br />
* Choose UV set for interior faces polyAutoProj<br />
* Separate checkbox to remove groupParts nodes<br />
* Remove polyPlanarProj and polyTweakUV as well as polyAutoProj<br />
* Option to disconnect shaders from broken input object preview mesh<br />
<br />
== 1.9.6 ==<br />
* Apply pre/post-break transform to particles as well as mesh<br />
<br />
== 1.9.5 ==<br />
* Shading/texturing removes broken groupParts nodes when removing polyAutoProj<br />
* Pre-break and post-break transform for user scripts<br />
<br />
== 1.9.4 ==<br />
*Release for Maya 2017 (mac and windows only)<br />
<br />
== 1.9.3 ==<br />
*Dive post-sim displacement with float"dispScale" fragment attribute, so user can specify which fragments should be displaced using modifiers (eg only active fragments get displacement)<br />
<br />
== 1.9.2 ==<br />
* Fixed shaders sometimes reappearing on different polygons after scene open.<br />
WARNING: You need to re-run propagate shaders if upgrading to this version<br />
* Auto keyframe is now disabled before baking, to avoid slowdown<br />
<br />
== 1.9.1 ==<br />
* Fixed crash if volume localized produces zero polygons for inside-volume region<br />
* Fixed splinter pattern disappearing when rotated<br />
<br />
== 1.9.0 ==<br />
* Show event colors in the list of events. (Mantis 220,223)<br />
* Reorder events list<br />
<br />
== 1.8.23 ==<br />
* Fixed takes not displaying on scene open if the scene was saved on or before the start frame<br />
<br />
== 1.8.22 ==<br />
* Fixed visibility keyed off before the start frame for input objects when baking to keys<br />
* Fixed hypergraph close failing when lsUI sometimes returns a non-existent window<br />
<br />
== 1.8.21 ==<br />
* Replace-with-keys no longer loses shader attachments<br />
* Close hypergraph windows before replace-with-keys or shading/texturing runs, to avoid slowdown<br />
<br />
== 1.8.20 ==<br />
* Fixed fragment shader assignment failing with multiple simulators<br />
<br />
== 1.8.19 ==<br />
* Fixed secondary UV sets not created on fragments<br />
* Indicate which event templates are breaking/non-breaking<br />
<br />
== 1.8.18 ==<br />
* Check eno1 on Linux<br />
<br />
== 1.8.17 ==<br />
* Fixed cache files larger than 2Gb failing on Windows. Maya 2015+ only, due to a separate bug in Visual C++ 10.0 which is required for Maya 2014.<br />
* Check eth1/eth2 on Linux<br />
<br />
== 1.8.16 ==<br />
* Maya 2016 compatibility<br />
<br />
== 1.8.15 ==<br />
* Added voronoi seed/numPoint override attrs to modifier data menu<br />
<br />
== 1.8.14 ==<br />
* Fixed load failing in 2013 due to treeView -ams flag<br />
<br />
== 1.8.13 ==<br />
* Option to draw solid shaded simulator preview when viewport is in wireframe mode<br />
* Fixed clusters generating incorrect warning about bullet shapeClass change during sim<br />
* HUD display bodyId of selected fragment<br />
<br />
== 1.8.12 ==<br />
* Fixed shells that did not intersect a split-plane from behaving as one combined shell.<br />
<br />
== 1.8.11 ==<br />
* Delete rigid bodies in the same order each time. Workaround for Bullet sim variation.<br />
* Fixed rare sim variation over multiple takes with internal solver.<br />
<br />
== 1.8.10 ==<br />
* Support AbcExport -eulerFilter. (2014 and up)<br />
<br />
== 1.8.9 ==<br />
* Fixed combined shells not kept together for split-plane mode<br />
<br />
== 1.8.8 ==<br />
* Option to keep combined shells together during breaking<br />
* Fixed inside/outside custom data invalid for mesh shells that don't intersect the localized cutting volume. Mantis 247<br />
<br />
== 1.8.7 ==<br />
* Fixed transform above input object sometimes not updating when scrubbing timeline after baking to keys<br />
* Fixed error about inability to retrieve mesh if an object is added after the start frame and before the bullet sim world is created<br />
<br />
== 1.8.6 ==<br />
* Added HUD to display info about selected fragment<br />
* Fixed long cache filename limiting the movement of the left/right divider on the takes tab<br />
<br />
== 1.8.5 ==<br />
* Fixed displacement broken not applied if takes were deleted<br />
<br />
== 1.8.4 ==<br />
* Constrain displacement direction at cutting edges to be the same for all fragment vertices at the same position. (Requires rebake to work.)<br />
* Option to move selection up the object tree a level<br />
<br />
== 1.8.3 ==<br />
* Allow undo of object tree edit operations<br />
* Object tree can mirror scene DAG and reveal selection<br />
<br />
== 1.8.2 ==<br />
* Input object list is now a treeView, for collapsable groups<br />
<br />
== 1.8.1 ==<br />
* Fixed shading normals not recomputed after interior face displacement<br />
<br />
== 1.8.0 ==<br />
* Post-sim displacement on interior faces<br />
* Random number seed for particle emitter<br />
<br />
== 1.7.5 ==<br />
* Check WiFi adapters on Windows<br />
<br />
== 1.7.4 ==<br />
* Option to break all shader connections from fragments. Workaround for Maya sometimes failing with "Unable to update render layer adjustment"<br />
* Shading/texturing prints progress and is interruptable<br />
<br />
== 1.7.3 ==<br />
* Workaround 3D paint tool sometimes not producing a unique name per texture<br />
* Workaround for fluid not emitting from particles, unless the particles are cached. Set update world to before on globals. (Mantis 244)<br />
* Fixed geometry disappearing in Mac builds<br />
<br />
== 1.7.2 ==<br />
* Fix scripted rotation change on a passive fragment sometimes causing a jump in position<br />
<br />
== 1.7.1 ==<br />
* Draw wireframe checkbox for simulator preview<br />
* Numeric display of object size<br />
<br />
== 1.7.0 ==<br />
* Splinter fragment type<br />
<br />
== 1.6.1 ==<br />
* Allow shading/texturing to work on imported alembic archives. (Requires re-export of the alembic.)<br />
* Fixed paint tool not displaying map using correct UV set<br />
<br />
= 1.6.0 =<br />
* Option to propagate shaders to fragments, autoUV interior faces, or create selection sets. (New scenes only.)<br />
* Replaced blind data with intArray to identify interior faces. (New scenes only.)<br />
* Fixed convert selection to interior faces not working with split-plane mode<br />
* Fixed numeric overflow in point sample count leading to memory explosion, caused by the combination of a large scene scale with a small point separation.<br />
* Fixed cache file exists test failing on Windows. Mantis 218<br />
* Changed simulator defaults (gravity, point sep, solver)<br />
* Fixed listParams error sometimes occurring after playback is stopped, for non-unique object names. Mantis 196<br />
<br />
= 1.5.3 =<br />
* Allow localize event-driven mode to work with replace-with-keys in fragments-only mode<br />
<br />
=1.5.2=<br />
* Workaround paint tool sometimes failing when used on models with multiple UV sets<br />
<br />
= 1.5.1 =<br />
* Fixed crash when simulating without any objects connected to the simulator.<br />
<br />
= 1.5.0 = <br />
* Simulator GL preview now displays polygons by default rather than a triangle mesh<br />
* Fixed randomize color on break node sometimes failing<br />
* Fixed simulator window not closing when creating a new scene<br />
* Point sampling produces fewer points, and reduces further if too many would be introduced for large objects<br />
* Added button to data filter to grab data value from selected fragment, e.g. for cluster colors<br />
* Fixed assign modifier text field failing to focus on Mac when clicking on it<br />
* Force paint tool stamp profile to solid by default<br />
* Option to override voronoi pointSeed per object using the same break node. Set integer data fxBreak_pointSeed<br />
<br />
= 1.4.16 =<br />
* Link randomize colors flag to displayColors on the mesh shape, and hide the toggle color display button for new scenes<br />
<br />
= 1.4.15 = <br />
* Fixed cluster fragments jumping back when the cluster separates if the cluster was passive and activated later in the sim<br />
<br />
= 1.4.14 = <br />
* Remove inheritSurfaceTex option. It's now set automatically if a texture modifier is used in the event. Mantis 73<br />
* New file nodes created for painting now have filtering disabled by default<br />
* Reorganize crack-image UI, and disable image threshold by default. Mantis 112<br />
* Link enable flag for chained break node under cluster settings to the cluster preview mesh visibility<br />
* Fixed cluster volumes not working if input model was scaled prior to breaking. Mantis 127<br />
* Connect selected meshes as cluster volumes<br />
* Fixed cache write path tokens not expanded before the test as to whether or not the file exists. Mantis 131</div>Craighttp://wiki.fracture-fx.com/index.php?title=Main_PageMain Page2017-12-03T14:22:32Z<p>Craig: </p>
<hr />
<div>'''FractureFX Wiki.'''<br />
__TOC__<br />
<br />
This wiki is currently under construction.<br />
<br />
<br />
= Installing Fracture=<br />
<span style="color:red">'''These instructions are for the full version of Fracture FX.'''<br /><br />
'''For instructions on installing the trial version, please check the "Fracture FX Trial Download" email you received.'''</span><br />
* [[Installing the license]]<br />
* [[Installing the plug-in]]<br />
* [[Common issues and where to find help]]<br />
<br />
= Getting started with Fracture = <br />
* [http://www.fracture-fx.com/tutorials Video tutorials]<br />
* [http://www.fracture-fx.com/key_features Key Features]<br />
* [[FAQ|FAQ]]<br />
<br />
= Release notes=<br />
* [[Release notes]]<br />
<br />
= Using Fracture =<br />
* Workflow<br />
** [[Nodes]]<br />
*** [[fxWorld]]<br />
*** [[fxBreakGeometry]]<br />
** [[Events and filters]]<br />
** [[Takes and exporting]]<br />
** [[Shading and texturing]]<br />
** [[Springs]]<br />
<br />
= Reference =<br />
* Attributes<br />
** [[Inputs|Inputs]]<br />
*** [[Object_properties|Object properties]]<br />
**** [[Dynamics_parameters|Dynamics parameters]]<br />
**** [[Custom_data|Custom data]]<br />
*** [[Break_properties|Break properties]]<br />
**** [[Mesh_Attributes|Mesh]]<br />
**** [[Voronoi_Attributes|Voronoi]]<br />
**** [[Split_plane_Attributes|Split plane]]<br />
**** [[Crack_image_Attributes|Crack image]]<br />
**** [[Localized_Attributes|Localized]]<br />
** [[Events|Events]]<br />
*** [[Event_list|Event list]]<br />
*** [[Filter_panel|Filter panel]]<br />
*** [[Scripts_and_Modifiers_tabs|Scripts and Modifiers tabs]]<br />
** [[Globals|Globals]]<br />
*** [[Simulation_globals|Simulation globals]]<br />
*** [[Drawing|Drawing]]<br />
*** [[Meshes|Meshes]]<br />
** [[Takes|Takes]]<br />
<br />
* Commands<br />
**[[fxCmd]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=Release_notesRelease notes2017-12-03T14:21:03Z<p>Craig: </p>
<hr />
<div>== 2.1 ==<br />
* Edit fragments tool to add/remove particles<br />
* Reduce default internal offset for voronoi<br />
* Select buttons on object/object_set filters (mantis 324)<br />
* Fixed connect popup broken on anim_condition filter (mantis 336)<br />
* Write scene name into take log (mantis 330)<br />
* Color for volume filters (mantis 323)<br />
<br />
== 2.0.2 ==<br />
* Fixed bakeToDisk crash in 2017 on Mac<br />
<br />
== 2.0.1 ==<br />
* Warn about input objects with no shaders (from 1.9.11)<br />
<br />
== 2.0 ==<br />
* Springs<br />
* Transfer break node between meshes<br />
* Volume filter can test initial state position of RB, instead of only the current world position<br />
* Upgrade to bullet 2.8.3<br />
<br />
== 1.9.12 ==<br />
* Fixed bakeToDisk crash in 2017 on Mac. (Backported from 2.0.2)<br />
<br />
== 1.9.11 ==<br />
* Warn about input objects with no shaders<br />
<br />
== 1.9.10 ==<br />
* Fixed chance filter above modifier not resetting and giving different results on rewind<br />
<br />
== 1.9.9 ==<br />
* Fixed input objects no longer connected to simulator after reference reload<br />
<br />
== 1.9.7 ==<br />
* Preset buttons for shading/texturing parameters<br />
* Choose UV set for interior faces polyAutoProj<br />
* Separate checkbox to remove groupParts nodes<br />
* Remove polyPlanarProj and polyTweakUV as well as polyAutoProj<br />
* Option to disconnect shaders from broken input object preview mesh<br />
<br />
== 1.9.6 ==<br />
* Apply pre/post-break transform to particles as well as mesh<br />
<br />
== 1.9.5 ==<br />
* Shading/texturing removes broken groupParts nodes when removing polyAutoProj<br />
* Pre-break and post-break transform for user scripts<br />
<br />
== 1.9.4 ==<br />
*Release for Maya 2017 (mac and windows only)<br />
<br />
== 1.9.3 ==<br />
*Dive post-sim displacement with float"dispScale" fragment attribute, so user can specify which fragments should be displaced using modifiers (eg only active fragments get displacement)<br />
<br />
== 1.9.2 ==<br />
* Fixed shaders sometimes reappearing on different polygons after scene open.<br />
WARNING: You need to re-run propagate shaders if upgrading to this version<br />
* Auto keyframe is now disabled before baking, to avoid slowdown<br />
<br />
== 1.9.1 ==<br />
* Fixed crash if volume localized produces zero polygons for inside-volume region<br />
* Fixed splinter pattern disappearing when rotated<br />
<br />
== 1.9.0 ==<br />
* Show event colors in the list of events. (Mantis 220,223)<br />
* Reorder events list<br />
<br />
== 1.8.23 ==<br />
* Fixed takes not displaying on scene open if the scene was saved on or before the start frame<br />
<br />
== 1.8.22 ==<br />
* Fixed visibility keyed off before the start frame for input objects when baking to keys<br />
* Fixed hypergraph close failing when lsUI sometimes returns a non-existent window<br />
<br />
== 1.8.21 ==<br />
* Replace-with-keys no longer loses shader attachments<br />
* Close hypergraph windows before replace-with-keys or shading/texturing runs, to avoid slowdown<br />
<br />
== 1.8.20 ==<br />
* Fixed fragment shader assignment failing with multiple simulators<br />
<br />
== 1.8.19 ==<br />
* Fixed secondary UV sets not created on fragments<br />
* Indicate which event templates are breaking/non-breaking<br />
<br />
== 1.8.18 ==<br />
* Check eno1 on Linux<br />
<br />
== 1.8.17 ==<br />
* Fixed cache files larger than 2Gb failing on Windows. Maya 2015+ only, due to a separate bug in Visual C++ 10.0 which is required for Maya 2014.<br />
* Check eth1/eth2 on Linux<br />
<br />
== 1.8.16 ==<br />
* Maya 2016 compatibility<br />
<br />
== 1.8.15 ==<br />
* Added voronoi seed/numPoint override attrs to modifier data menu<br />
<br />
== 1.8.14 ==<br />
* Fixed load failing in 2013 due to treeView -ams flag<br />
<br />
== 1.8.13 ==<br />
* Option to draw solid shaded simulator preview when viewport is in wireframe mode<br />
* Fixed clusters generating incorrect warning about bullet shapeClass change during sim<br />
* HUD display bodyId of selected fragment<br />
<br />
== 1.8.12 ==<br />
* Fixed shells that did not intersect a split-plane from behaving as one combined shell.<br />
<br />
== 1.8.11 ==<br />
* Delete rigid bodies in the same order each time. Workaround for Bullet sim variation.<br />
* Fixed rare sim variation over multiple takes with internal solver.<br />
<br />
== 1.8.10 ==<br />
* Support AbcExport -eulerFilter. (2014 and up)<br />
<br />
== 1.8.9 ==<br />
* Fixed combined shells not kept together for split-plane mode<br />
<br />
== 1.8.8 ==<br />
* Option to keep combined shells together during breaking<br />
* Fixed inside/outside custom data invalid for mesh shells that don't intersect the localized cutting volume. Mantis 247<br />
<br />
== 1.8.7 ==<br />
* Fixed transform above input object sometimes not updating when scrubbing timeline after baking to keys<br />
* Fixed error about inability to retrieve mesh if an object is added after the start frame and before the bullet sim world is created<br />
<br />
== 1.8.6 ==<br />
* Added HUD to display info about selected fragment<br />
* Fixed long cache filename limiting the movement of the left/right divider on the takes tab<br />
<br />
== 1.8.5 ==<br />
* Fixed displacement broken not applied if takes were deleted<br />
<br />
== 1.8.4 ==<br />
* Constrain displacement direction at cutting edges to be the same for all fragment vertices at the same position. (Requires rebake to work.)<br />
* Option to move selection up the object tree a level<br />
<br />
== 1.8.3 ==<br />
* Allow undo of object tree edit operations<br />
* Object tree can mirror scene DAG and reveal selection<br />
<br />
== 1.8.2 ==<br />
* Input object list is now a treeView, for collapsable groups<br />
<br />
== 1.8.1 ==<br />
* Fixed shading normals not recomputed after interior face displacement<br />
<br />
== 1.8.0 ==<br />
* Post-sim displacement on interior faces<br />
* Random number seed for particle emitter<br />
<br />
== 1.7.5 ==<br />
* Check WiFi adapters on Windows<br />
<br />
== 1.7.4 ==<br />
* Option to break all shader connections from fragments. Workaround for Maya sometimes failing with "Unable to update render layer adjustment"<br />
* Shading/texturing prints progress and is interruptable<br />
<br />
== 1.7.3 ==<br />
* Workaround 3D paint tool sometimes not producing a unique name per texture<br />
* Workaround for fluid not emitting from particles, unless the particles are cached. Set update world to before on globals. (Mantis 244)<br />
* Fixed geometry disappearing in Mac builds<br />
<br />
== 1.7.2 ==<br />
* Fix scripted rotation change on a passive fragment sometimes causing a jump in position<br />
<br />
== 1.7.1 ==<br />
* Draw wireframe checkbox for simulator preview<br />
* Numeric display of object size<br />
<br />
== 1.7.0 ==<br />
* Splinter fragment type<br />
<br />
== 1.6.1 ==<br />
* Allow shading/texturing to work on imported alembic archives. (Requires re-export of the alembic.)<br />
* Fixed paint tool not displaying map using correct UV set<br />
<br />
= 1.6.0 =<br />
* Option to propagate shaders to fragments, autoUV interior faces, or create selection sets. (New scenes only.)<br />
* Replaced blind data with intArray to identify interior faces. (New scenes only.)<br />
* Fixed convert selection to interior faces not working with split-plane mode<br />
* Fixed numeric overflow in point sample count leading to memory explosion, caused by the combination of a large scene scale with a small point separation.<br />
* Fixed cache file exists test failing on Windows. Mantis 218<br />
* Changed simulator defaults (gravity, point sep, solver)<br />
* Fixed listParams error sometimes occurring after playback is stopped, for non-unique object names. Mantis 196<br />
<br />
= 1.5.3 =<br />
* Allow localize event-driven mode to work with replace-with-keys in fragments-only mode<br />
<br />
=1.5.2=<br />
* Workaround paint tool sometimes failing when used on models with multiple UV sets<br />
<br />
= 1.5.1 =<br />
* Fixed crash when simulating without any objects connected to the simulator.<br />
<br />
= 1.5.0 = <br />
* Simulator GL preview now displays polygons by default rather than a triangle mesh<br />
* Fixed randomize color on break node sometimes failing<br />
* Fixed simulator window not closing when creating a new scene<br />
* Point sampling produces fewer points, and reduces further if too many would be introduced for large objects<br />
* Added button to data filter to grab data value from selected fragment, e.g. for cluster colors<br />
* Fixed assign modifier text field failing to focus on Mac when clicking on it<br />
* Force paint tool stamp profile to solid by default<br />
* Option to override voronoi pointSeed per object using the same break node. Set integer data fxBreak_pointSeed<br />
<br />
= 1.4.16 =<br />
* Link randomize colors flag to displayColors on the mesh shape, and hide the toggle color display button for new scenes<br />
<br />
= 1.4.15 = <br />
* Fixed cluster fragments jumping back when the cluster separates if the cluster was passive and activated later in the sim<br />
<br />
= 1.4.14 = <br />
* Remove inheritSurfaceTex option. It's now set automatically if a texture modifier is used in the event. Mantis 73<br />
* New file nodes created for painting now have filtering disabled by default<br />
* Reorganize crack-image UI, and disable image threshold by default. Mantis 112<br />
* Link enable flag for chained break node under cluster settings to the cluster preview mesh visibility<br />
* Fixed cluster volumes not working if input model was scaled prior to breaking. Mantis 127<br />
* Connect selected meshes as cluster volumes<br />
* Fixed cache write path tokens not expanded before the test as to whether or not the file exists. Mantis 131</div>Craighttp://wiki.fracture-fx.com/index.php?title=Shading_and_texturingShading and texturing2017-11-26T18:35:50Z<p>Craig: /* Interior shader */</p>
<hr />
<div>__TOC__<br />
<br />
This is meant to be run ''after'' your simulation is done, and the number of meshes under the fragmentGroup is finalised. (There is no automatic update if the contents of the fragmentGroup changes.)<br />
<br />
== Overview ==<br />
<br />
From the menu, choose '''Fracture -> Shading/texturing [options box]'''<br />
<br />
[[File:shading_dialog.png]]<br />
<br />
This gives the option to:<br />
* Propagate shaders from the '''unbroken''' input objects (including per-face attachments) to the fragments produced under the fragmentGroup<br />
* AutoUV the interior faces of fragments<br />
* Create a selection set per input object that holds the interior faces of all fragments derived from it<br />
<br />
This operates on all meshes under the current selection. If nothing is selected, '''all fragments will be modified'''.<br />
<br />
It is recommended to assign shaders '''before''' breaking and connection to the simulator, but it is still possible to change the unbroken object's shaders and re-propagate after baking.<br />
<br />
You can run the shading/texturing process at any stage, after a live-sim, after baking to keys or disk, or after running replace-with-keys. However, if you have already run the shading/texturing process, then subsequently run replace-with-keys, you will have to re-run shading/texturing afterwards.<br />
<br />
For scenes created with versions prior to 1.6.0, you will have to delete the fragmentGroup, disconnect and reconnect all input objects, and re-bake the simulation, before shading/texturing will work.<br />
<br />
== Interior shader ==<br />
<br />
The shader to assign to interior faces is specified under the inputs tab.<br />
<br />
Make sure the shader has a '''shadingGroup''' of its own, which it may not have if you duplicated it.<br />
<br />
[[File:shading_interior.png]]<br />
<br />
The widget displays the connection to the fxInteriorShader attribute on the intermediate shape node of the input object. This is also editable from the attribute editor, under Extra Attributes, which allows you to change the interior shader after running replace-with-keys, when the world node will have been removed.<br />
<br />
== Changing shaders after breaking ==<br />
<br />
Assume you've broken an object, with or without a simulation, and you now want to change the shader(s) on the input object. You can't simply drag-and-drop the shader on to the broken shape, it has to be attached to the unbroken (intermediate) shape.<br />
<br />
[[File:shading_before.png]]<br />
<br />
The graph for the cube is shown below. The cube has two shapes, a non-intermediate shape polySurfaceShape1 which displays the output of the breakGeo2 node (when you rewind to the start frame), and an intermediate shape pCubeShape1 which holds the original unbroken geometry. It is to that intermediate shape that the shaders were originally attached. You can see exterior faces are assigned the initialShadingGroup and interior faces get blinn1.<br />
<br />
[[File:shading_graph.png]]<br />
<br />
It is to pCubeShape1 NOT polySurfaceShape1 that you must attach new shaders.<br />
* Rewind to the start frame<br />
* Uncheck intermediateObject in the attribute editor for pCubeShape1<br />
* Assign a new shader (including per-face shaders)<br />
* Re-check intermediateObject for pCubeShape1<br />
<br />
[[File:shading_intermediate.png]]<br />
<br />
Now clear your selection and re-run shading/texturing from the menu. Assuming you assigned two phongs to pCubeShape1, they will propagate to the 4 fragment meshes, and in addition to the polySurfaceShape1, which is visible before the break occurs.<br />
<br />
[[File:shading_after.png]]<br />
<br />
There is a relevant thread about this on the tech support forum here: http://community.fracture-fx.com/viewtopic.php?f=13&t=1429<br />
== Alembic ==<br />
<br />
As of version 1.6.1, shaders can be reattached to Alembic archives imported into the scene. Use File->Import, not the Pipeline Cache menu.<br />
<br />
== Face materials and color sets ==<br />
<br />
This example assumes the meshes are not connected to a simulator.<br />
<br />
Face material assignments and color sets on the unbroken objects:<br />
<br />
[[File:facemtl_colorset.png]]<br />
<br />
After breaking using Fracture -> Break selected, the shaders will not automatically appear on the broken mesh. They have to be propagated to it, including after each change to the break node settings, as the number of polygons in the output mesh will change. (Maya keeps track of per-face shader assignments using those face IDs which will be meaningless after changing any attribute on the break node.)<br />
<br />
Select it and choose Fracture -> Shading/texturing (option box), then Apply.<br />
<br />
[[File:propagate_shaders.png]]<br />
<br />
The color sets are automatically propagated and just have to be displayed.<br />
<br />
The same automatic process cannot be applied for shaders because Maya plug-in nodes cannot assign shaders to the faces of meshes they produce; shader attachments are represented in Maya using DG connections to the mesh shape node, which is always downstream of the plug-in node that produces the mesh.<br />
<br />
[[File:colorset.png]]<br />
<br />
== Problems ==<br />
<br />
If you encounter problems, first make sure you're running the latest version. http://wiki.fracture-fx.com/index.php?title=Release_notes<br />
<br />
Sometimes Maya can get into a mess where it refuses to assign per-face shaders. To start over, set the shading/texturing options to:<br />
<br />
Interior face UVs = Remote polyAutoProj nodes<br />
Propagate shaders = Break connections (all layers)<br />
<br />
[[File:reset_shading.png]]<br />
<br />
Make sure you have '''nothing selected''' then click Apply and it will disconnect all the shaders and delete the projection nodes created for the interior faces.<br />
<br />
Then re-run it with automatic projection and propagate shaders on.</div>Craighttp://wiki.fracture-fx.com/index.php?title=Common_IssuesCommon Issues2017-11-25T11:44:20Z<p>Craig: /* How do I stop displacement on fragments before they're activated? */</p>
<hr />
<div>= Installation =<br />
<br />
=== Bullet doesn't load ===<br />
If you see the error "initializePlugin function could not be found in plug-in (bullet)", then the bullet plug-in is not installed correctly. It should remain inside the fracture_plugins directory, since it is a plug-in to fracture, not a separate plug-in to Maya. fracture_plugins should be placed alongside the fracture.mll/.bundle/.so. Once it's in the correct directory, bullet can be loaded from under the solver globals in the Edit Simulator window. See [[Installing_the_plug-in|Installing the plug-in]] for more information.<br />
<br />
=== What do I do with the devkit folder? ===<br />
You can ignore the devkit folder, it does not need to be installed to use the plug-in. The devkit is intended for developers at larger studios who wish to connect an in-house solver.<br />
<br />
=== Fracture doesn't load on the Mac ===<br />
If you see this error:<br />
<pre>// Error: line 1: Unable to dynamically load : /Users/Shared/Autodesk/maya/2013/plug-ins/fracture.bundle<br />
does not match the current architecture //</pre><br />
then the file is likely corrupted, and is not being identified as a 64-bit bundle. Reinstall the plug-in from the zip archive you downloaded.<br />
<br />
= Common problems =<br />
<br />
=== There's a large pyramid when I break something ===<br />
The object has to be closed, manifold (edges have no more than 2 adjacent polygons), with outward-facing normals, and no self-intersections. To check, you can try the following. You can display the polygon normals and check their outward facing. You can display border edges and check that there aren't any (meaning the mesh is closed). You can check for non-manifold geometry in the Cleanup window (edges should not have 3+ polygons sharing them, only 2.) There isn't a way to check for self-intersections yet.<br />
<br />
If the problem appears in a secondary break, set the internal offset under the voronoi options of the primary break node to 0. A small internal offset creates gaps between the fragments, but in some cases it can create small self-intersections where the offset takes the vertex through a thin part of the model.<br />
<br />
=== The scene is slow when I rewind or locks up when I connect a large object ===<br />
Increase the 'point separation' before connecting it. This is a world-space sampling distance used to convert all objects to a point-based representation. (Enable 'Draw points' to see the point cloud.)<br />
<br />
=== Baking or caching is extremely slow compared to live sim ===<br />
<br />
Make sure autokey is disabled.<br />
<br />
=== The sim looks wrong after baking to keys, objects are far apart ===<br />
Make sure the scene units are centimeters. Other units are currently not supported.<br />
<br />
=== The simulation suddenly stops ===<br />
Make sure the 'Playback speed' in the Maya preferences is set to 'Play every frame'.<br />
<br />
[[File:Playback_speed.png]]<br />
<br />
=== The fragments disappear after frame 1 ===<br />
This means your events are not configured to break anything. The fragments visible on the start frame are a ''preview'' of what will happen when the object eventually breaks during the sim. It's the unbroken object which is injected into the simulation when you hit play, which is why the fragments look as if they've disappeared. If none of your events are configured to break anything, the entire simulation will consist of only the unbroken objects, no fragments will be produced and the fragmentGroup will remain empty. This is correct and expected behavior.<br />
<br />
=== Crack image mode doesn't work ===<br />
The texture needs to be white lines on a black background to work, NOT black lines on a white background.<br />
<br />
=== The undamaged part of an object using crack image won't stay still ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?p=19509#p19509<br />
<br />
=== The simulation sometimes explodes using the internal solver ===<br />
Set a velocity limit. Use the numeric display (before or after baking to keys) to find a sensible maximum value.<br />
<br />
=== The simulation sometimes explodes immediately with Bullet ===<br />
Change the shape class to btGImpactMeshShape. Sometimes bullet has problems dealing with collision between convex and non-convex objects.<br />
<br />
=== I cannot animate things without the solver running ===<br />
Uncheck active on the simulator globals tab.<br />
<br />
=== Deformable collision objects don't work with Bullet ===<br />
These are only supported by the internal solver.<br />
<br />
=== Animating the transform scale doesn't work ===<br />
Animation for passive objects is only supported on translate and rotate. Mesh deformation is tracked by the internal solver, so you can workaround this by baking the scale into the point positions.<br />
<br />
=== How do I change the animation of a passive object? ===<br />
Disconnect it from the simulator using the button on the inputs tab. Change the animation. Reconnect it.<br />
<br />
=== I can't see the preview geometry, or any extra output from the break node ===<br />
Fracture is currently incompatible with Viewport 2.0 (which is the default in Maya 2015 and up), so all users using 2015 will have to switch the viewport back to legacy mode (renderer → legacy default viewport) to view simulator previews or any extra output from the break node (e.g. the the paths extracted from the crack image texture).<br />
<br />
=== How do I get better collisions in Bullet? ===<br />
* In the object's bullet section, increase the collision margin.<br />
* In the Globals --> Solver --> increase Fixed Time Step.<br />
<br />
=== The particles from the "emit particles on break" event don't work with fluids ===<br />
On the simulator globals tab, right at the bottom, under the meshes layout, there's an 'Update world' option menu. Switch that to 'before'. There's tooltip explaining the functionality more in depth.<br />
<br />
===Fracture FX in Maya 2016 crashes when I turn on parallel rig evaluation"===<br />
When you load fracture in Maya 2016, parallel rig evaluation will be disabled, because fracture is not compatible with it. Do not switch parallel evaluation back on, otherwise it will crash Maya.<br />
[http://static-dc.autodesk.net/content/dam/autodesk/www/Company/files/Parallel_Maya.pdf More info here.]<br />
<br />
[[File:Parallel_eval.png]]<br />
<br />
===Fragments fall through the ground with Bullet ===<br />
<br />
Try increasing the 'Fixed time step (Hz)' value on the solver globals. If the ground is a mesh (rather than the built-in ground plane) make it thicker (use a separate non-rendering object if necessary). Try raising the collision margin for the object on the inputs tab.<br />
<br />
=== Are face materials and color sets supported? ===<br />
<br />
Yes. See [[Shading_and_texturing#Face_materials_and_color_sets|this page]]<br />
<br />
=== Secondary breaking doesn't use the right break settings ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1705<br />
<br />
= Workflow Questions = <br />
<br />
=== How do I animate cracks? ===<br />
The breaking pattern produced by the voronoi/split-plane/crack-image fragment modes cannot be animated. You can only animate a mask applied to that pattern, in the form of an animated texture sequence, animated procedural texture or ramp, or an animated/deforming volume. Set the localize mode to event-driven, and connect a texture or volume. Alternatively, choose Add event -> Animated -> Texture driven, from the menu under the events tab. In any case, you may want to uncheck the active flag on the simulator while keyframing, in order to stop the solver evaluating when you jump around the timeline.<br />
<br />
If you don't need to see partially growing cracks inside an object, a faster alternative to the localize mode is to create an event that breaks the entire object on frame 2, but leaves the fragments passive (activate-on-break = off). Then activate the objects that touch an animated/deforming volume from a second event, e.g. Add event -> Animated -> Activate in volume.<br />
<br />
=== Keyframed objects won't break when they collide ===<br />
Make sure they're both connected to the simulator. (They're connected if they're listed under the inputs tab, and still appear in the viewport when you switch off the display of polygons.) If ''both'' objects are keyframed, also make sure 'passive collide' is enabled in the solver globals, otherwise the simulator will not check for collisions between two passive (non-simulated) objects.<br />
<br />
=== Are events tied to particular objects? ===<br />
No, by design events can break any number of objects, at different times and with different break properties per object. Some events may not break anything, and may only modify the dynamics properties or the custom attributes carried by objects. You can however choose to restrict events to particular objects using the ''object'' filter, or groups of objects using the ''object_set'' filter. Events are meant to be customisable. See [[Events_and_filters|Events and filters]] for more information.<br />
<br />
=== Should I scale units like mass and gravity depending on my Maya units? ===<br />
Units can be whatever you want them to be. The only unit that's fixed is time (seconds). If you decide the numbers you use for distance represent meters, then gravity is meters-per-second-per-second (ms^-2). If you decide your mass is kg, then your impact force becomes newtons, and so on. They're all linked.<br />
<br />
=== How do I vary the secondary break pattern? ===<br />
http://community.fracture-fx.com/viewtopic.php?t=1549&f=13<br />
<br />
=== How do I get custom data to drive a shader? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18989#p18989<br />
<br />
=== How do I get a character to activate fragments? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18782#p18782<br />
<br />
=== How do I locally break a wall then break the rest of it at a later frame? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=19001#p19001<br />
<br />
=== How do I edit fragment keyframes before exporting to Alembic? ===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1701&p=19875#p19875<br />
<br />
===How do I script the creation of attributes, filters, modifiers?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1720<br />
<br />
=== What does the update transform button do? ===<br />
It moves the break node's transform back to match the object's transform, if the object has been moved since it was broken, so the origins match again. The position of things like split planes are recorded relative to the break node so that the same node can be reused to break multiple objects (by setting their "breakWith" attribute). The objects may be nowhere near each other, so there has to be another point of reference, which is the origin of the break node.<br />
<br />
=== How do I stop displacement on fragments before they're activated? ===<br />
<br />
On the inputs tab, under the custom data section for the object, add a float called "dispScale", and set it to 0.<br />
<br />
[[File:dispScale0.png]]<br />
<br />
In the event that activates the fragments, add an assign modifier, setting "dispScale" to 1.<br />
<br />
[[File:dispScale1.png]]<br />
<br />
Now the fragments will have zero displacement until they're activated.<br />
<br />
Note: This doesn't work with 'replace with keys' because afterwards the node which recomputes the mesh with a time-varying displacement scale will be gone. You'd have to export to Alembic instead.<br />
<br />
=== How do I have two layers of breaking on one object? ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1768<br />
<br />
=== What's the difference between solver num steps and simulating subframes? ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1788</div>Craighttp://wiki.fracture-fx.com/index.php?title=Common_IssuesCommon Issues2017-11-24T20:17:46Z<p>Craig: </p>
<hr />
<div>= Installation =<br />
<br />
=== Bullet doesn't load ===<br />
If you see the error "initializePlugin function could not be found in plug-in (bullet)", then the bullet plug-in is not installed correctly. It should remain inside the fracture_plugins directory, since it is a plug-in to fracture, not a separate plug-in to Maya. fracture_plugins should be placed alongside the fracture.mll/.bundle/.so. Once it's in the correct directory, bullet can be loaded from under the solver globals in the Edit Simulator window. See [[Installing_the_plug-in|Installing the plug-in]] for more information.<br />
<br />
=== What do I do with the devkit folder? ===<br />
You can ignore the devkit folder, it does not need to be installed to use the plug-in. The devkit is intended for developers at larger studios who wish to connect an in-house solver.<br />
<br />
=== Fracture doesn't load on the Mac ===<br />
If you see this error:<br />
<pre>// Error: line 1: Unable to dynamically load : /Users/Shared/Autodesk/maya/2013/plug-ins/fracture.bundle<br />
does not match the current architecture //</pre><br />
then the file is likely corrupted, and is not being identified as a 64-bit bundle. Reinstall the plug-in from the zip archive you downloaded.<br />
<br />
= Common problems =<br />
<br />
=== There's a large pyramid when I break something ===<br />
The object has to be closed, manifold (edges have no more than 2 adjacent polygons), with outward-facing normals, and no self-intersections. To check, you can try the following. You can display the polygon normals and check their outward facing. You can display border edges and check that there aren't any (meaning the mesh is closed). You can check for non-manifold geometry in the Cleanup window (edges should not have 3+ polygons sharing them, only 2.) There isn't a way to check for self-intersections yet.<br />
<br />
If the problem appears in a secondary break, set the internal offset under the voronoi options of the primary break node to 0. A small internal offset creates gaps between the fragments, but in some cases it can create small self-intersections where the offset takes the vertex through a thin part of the model.<br />
<br />
=== The scene is slow when I rewind or locks up when I connect a large object ===<br />
Increase the 'point separation' before connecting it. This is a world-space sampling distance used to convert all objects to a point-based representation. (Enable 'Draw points' to see the point cloud.)<br />
<br />
=== Baking or caching is extremely slow compared to live sim ===<br />
<br />
Make sure autokey is disabled.<br />
<br />
=== The sim looks wrong after baking to keys, objects are far apart ===<br />
Make sure the scene units are centimeters. Other units are currently not supported.<br />
<br />
=== The simulation suddenly stops ===<br />
Make sure the 'Playback speed' in the Maya preferences is set to 'Play every frame'.<br />
<br />
[[File:Playback_speed.png]]<br />
<br />
=== The fragments disappear after frame 1 ===<br />
This means your events are not configured to break anything. The fragments visible on the start frame are a ''preview'' of what will happen when the object eventually breaks during the sim. It's the unbroken object which is injected into the simulation when you hit play, which is why the fragments look as if they've disappeared. If none of your events are configured to break anything, the entire simulation will consist of only the unbroken objects, no fragments will be produced and the fragmentGroup will remain empty. This is correct and expected behavior.<br />
<br />
=== Crack image mode doesn't work ===<br />
The texture needs to be white lines on a black background to work, NOT black lines on a white background.<br />
<br />
=== The undamaged part of an object using crack image won't stay still ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?p=19509#p19509<br />
<br />
=== The simulation sometimes explodes using the internal solver ===<br />
Set a velocity limit. Use the numeric display (before or after baking to keys) to find a sensible maximum value.<br />
<br />
=== The simulation sometimes explodes immediately with Bullet ===<br />
Change the shape class to btGImpactMeshShape. Sometimes bullet has problems dealing with collision between convex and non-convex objects.<br />
<br />
=== I cannot animate things without the solver running ===<br />
Uncheck active on the simulator globals tab.<br />
<br />
=== Deformable collision objects don't work with Bullet ===<br />
These are only supported by the internal solver.<br />
<br />
=== Animating the transform scale doesn't work ===<br />
Animation for passive objects is only supported on translate and rotate. Mesh deformation is tracked by the internal solver, so you can workaround this by baking the scale into the point positions.<br />
<br />
=== How do I change the animation of a passive object? ===<br />
Disconnect it from the simulator using the button on the inputs tab. Change the animation. Reconnect it.<br />
<br />
=== I can't see the preview geometry, or any extra output from the break node ===<br />
Fracture is currently incompatible with Viewport 2.0 (which is the default in Maya 2015 and up), so all users using 2015 will have to switch the viewport back to legacy mode (renderer → legacy default viewport) to view simulator previews or any extra output from the break node (e.g. the the paths extracted from the crack image texture).<br />
<br />
=== How do I get better collisions in Bullet? ===<br />
* In the object's bullet section, increase the collision margin.<br />
* In the Globals --> Solver --> increase Fixed Time Step.<br />
<br />
=== The particles from the "emit particles on break" event don't work with fluids ===<br />
On the simulator globals tab, right at the bottom, under the meshes layout, there's an 'Update world' option menu. Switch that to 'before'. There's tooltip explaining the functionality more in depth.<br />
<br />
===Fracture FX in Maya 2016 crashes when I turn on parallel rig evaluation"===<br />
When you load fracture in Maya 2016, parallel rig evaluation will be disabled, because fracture is not compatible with it. Do not switch parallel evaluation back on, otherwise it will crash Maya.<br />
[http://static-dc.autodesk.net/content/dam/autodesk/www/Company/files/Parallel_Maya.pdf More info here.]<br />
<br />
[[File:Parallel_eval.png]]<br />
<br />
===Fragments fall through the ground with Bullet ===<br />
<br />
Try increasing the 'Fixed time step (Hz)' value on the solver globals. If the ground is a mesh (rather than the built-in ground plane) make it thicker (use a separate non-rendering object if necessary). Try raising the collision margin for the object on the inputs tab.<br />
<br />
=== Are face materials and color sets supported? ===<br />
<br />
Yes. See [[Shading_and_texturing#Face_materials_and_color_sets|this page]]<br />
<br />
=== Secondary breaking doesn't use the right break settings ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1705<br />
<br />
= Workflow Questions = <br />
<br />
=== How do I animate cracks? ===<br />
The breaking pattern produced by the voronoi/split-plane/crack-image fragment modes cannot be animated. You can only animate a mask applied to that pattern, in the form of an animated texture sequence, animated procedural texture or ramp, or an animated/deforming volume. Set the localize mode to event-driven, and connect a texture or volume. Alternatively, choose Add event -> Animated -> Texture driven, from the menu under the events tab. In any case, you may want to uncheck the active flag on the simulator while keyframing, in order to stop the solver evaluating when you jump around the timeline.<br />
<br />
If you don't need to see partially growing cracks inside an object, a faster alternative to the localize mode is to create an event that breaks the entire object on frame 2, but leaves the fragments passive (activate-on-break = off). Then activate the objects that touch an animated/deforming volume from a second event, e.g. Add event -> Animated -> Activate in volume.<br />
<br />
=== Keyframed objects won't break when they collide ===<br />
Make sure they're both connected to the simulator. (They're connected if they're listed under the inputs tab, and still appear in the viewport when you switch off the display of polygons.) If ''both'' objects are keyframed, also make sure 'passive collide' is enabled in the solver globals, otherwise the simulator will not check for collisions between two passive (non-simulated) objects.<br />
<br />
=== Are events tied to particular objects? ===<br />
No, by design events can break any number of objects, at different times and with different break properties per object. Some events may not break anything, and may only modify the dynamics properties or the custom attributes carried by objects. You can however choose to restrict events to particular objects using the ''object'' filter, or groups of objects using the ''object_set'' filter. Events are meant to be customisable. See [[Events_and_filters|Events and filters]] for more information.<br />
<br />
=== Should I scale units like mass and gravity depending on my Maya units? ===<br />
Units can be whatever you want them to be. The only unit that's fixed is time (seconds). If you decide the numbers you use for distance represent meters, then gravity is meters-per-second-per-second (ms^-2). If you decide your mass is kg, then your impact force becomes newtons, and so on. They're all linked.<br />
<br />
=== How do I vary the secondary break pattern? ===<br />
http://community.fracture-fx.com/viewtopic.php?t=1549&f=13<br />
<br />
=== How do I get custom data to drive a shader? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18989#p18989<br />
<br />
=== How do I get a character to activate fragments? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18782#p18782<br />
<br />
=== How do I locally break a wall then break the rest of it at a later frame? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=19001#p19001<br />
<br />
=== How do I edit fragment keyframes before exporting to Alembic? ===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1701&p=19875#p19875<br />
<br />
===How do I script the creation of attributes, filters, modifiers?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1720<br />
<br />
=== What does the update transform button do? ===<br />
It moves the break node's transform back to match the object's transform, if the object has been moved since it was broken, so the origins match again. The position of things like split planes are recorded relative to the break node so that the same node can be reused to break multiple objects (by setting their "breakWith" attribute). The objects may be nowhere near each other, so there has to be another point of reference, which is the origin of the break node.<br />
<br />
=== How do I stop displacement on fragments before they're activated? ===<br />
<br />
On the inputs tab, under the custom data section for the object, add a float called "dispScale", and set it to 0.<br />
<br />
[[File:dispScale0.png]]<br />
<br />
In the event that activates the fragments, add an assign modifier, setting "dispScale" to 1.<br />
<br />
[[File:dispScale1.png]]<br />
<br />
Now the fragments will have zero displacement until they're activated.<br />
<br />
=== How do I have two layers of breaking on one object? ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1768<br />
<br />
=== What's the difference between solver num steps and simulating subframes? ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1788</div>Craighttp://wiki.fracture-fx.com/index.php?title=SpringsSprings2017-11-18T13:21:59Z<p>Craig: </p>
<hr />
<div>= Springs =<br />
<br />
Some examples of how to use the spring modifier in v2.<br />
<br />
== Creating springs ==<br />
<br />
The first modifier in the image below makes springs between fragments that were inside a volume in their initial position (at the start frame).<br />
<br />
The second modifier finds the fragments within a different volume, then makes the '''existing''' springs between them stronger (the red ones).<br />
This does NOT create new springs, it just edits the existing ones. The unchanged weaker springs are left in yellow.<br />
<br />
[[File:Spring_mod1.png]]<br />
<br />
== Destroying springs ==<br />
<br />
The event has a volume filter to isolate the green fragments. The modifier destroys springs that connect fragments inside the volume to fragments outside the volume, i.e. between fragments which are modified by the event and those which are NOT modified.<br />
<br />
This causes a chunk (green) to fall out, but keeps the springs between fragments within the chunk, only removing the ones connecting the chunk to the rest of the fragments (blue).<br />
<br />
[[File:Spring_mod2.png]]<br />
<br />
== Detach velocity ==<br />
<br />
The pink springs connect the fragments to a passive input object.<br />
<br />
The yellow springs connect the fragments to each other, as soon as they’re created (when the cube is broken).<br />
<br />
The last modifier finds fragments in the volume (the lower half) and edits the detach velocity of the springs connecting them to anything outside the volume. This weakens the link between fragments inside and outside the volume. The lower half is more likely to detach when it’s hit by the ball. (All the blue springs have detached and so don’t appear in the image.)<br />
<br />
[[File:Spring_mod3.png]]<br />
<br />
== Destroy springs after N frames ==<br />
<br />
This example creates springs when an object is broken then destroys them after a few frames.<br />
<br />
Break an object using the bomb anim event as a starting point, then reconfigure it as below to create springs.<br />
<br />
[[File:ds_anim0.png]]<br />
<br />
[[File:ds_initial.png]]<br />
<br />
On the modifier list of the event, add an assign modifier, choose a name for the custom attribute, e.g. "detachtime", then right click on the field and enter the expression: modify_operand1_float = frame;<br />
<br />
[[File:ds_expr.png]]<br />
<br />
This will store the frame number at which the fragment was created on the fragment as data called "detachtime". Then add a randomize modifier to add (+=) a random offset to it.<br />
<br />
[[File:ds_randomize.png]]<br />
<br />
Add a second event from animated->push fragments, then reconfigure it as below. Note the test for frame >= detachtime, which will make the event run at different times for different fragments.<br />
<br />
[[File:ds_detach.png]]<br />
<br />
Now the springs detach at a random time between 3 and 10 frames after creation/breaking.<br />
<br />
[[File:ds_result.png]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=SpringsSprings2017-11-18T13:20:00Z<p>Craig: </p>
<hr />
<div>= Springs =<br />
<br />
Some examples of how to use the spring modifier in v2.<br />
<br />
== Creating springs ==<br />
<br />
The first modifier in the image below makes springs between fragments that were inside a volume in their initial position (at the start frame).<br />
<br />
The second modifier finds the fragments within a different volume, then makes the '''existing''' springs between them stronger (the red ones).<br />
This does NOT create new springs, it just edits the existing ones. The unchanged weaker springs are left in yellow.<br />
<br />
[[File:Spring_mod1.png]]<br />
<br />
== Destroying springs ==<br />
<br />
The event has a volume filter to isolate the green fragments. The modifier destroys springs that connect fragments inside the volume to fragments outside the volume, i.e. between fragments which are modified by the event and those which are NOT modified.<br />
<br />
This causes a chunk (green) to fall out, but keeps the springs between fragments within the chunk, only removing the ones connecting the chunk to the rest of the fragments (blue).<br />
<br />
[[File:Spring_mod2.png]]<br />
<br />
== Detach velocity ==<br />
<br />
The pink springs connect the fragments to a passive input object.<br />
<br />
The yellow springs connect the fragments to each other, as soon as they’re created (when the cube is broken).<br />
<br />
The last modifier finds fragments in the volume (the lower half) and edits the detach velocity of the springs connecting them to anything outside the volume. This weakens the link between fragments inside and outside the volume. The lower half is more likely to detach when it’s hit by the ball. (All the blue springs have detached and so don’t appear in the image.)<br />
<br />
[[File:Spring_mod3.png]]<br />
<br />
== Destroy springs after N frames ==<br />
<br />
This example creates springs when an object is broken then destroys them after a few frames.<br />
<br />
Break an object using the bomb anim event as a starting point, then reconfigure it as below to create springs.<br />
<br />
[[File:ds_anim0.png]]<br />
<br />
[[File:ds_initial.png]]<br />
<br />
On the modifier list of the event, add an assign modifier, choose a name for the custom attribute, e.g. "detachtime", then right click on the field and enter the expression: modify_operand1_float = frame;<br />
<br />
[[File:ds_expr.png]]<br />
<br />
This will store the frame number at which the fragment was created on the fragment as data called "detachtime". Then add a randomize modifier to add (+=) a random offset to it.<br />
<br />
[[File:ds_randomize.png]]<br />
<br />
Add a second event from animated->push fragments, then reconfigure it as below. Note the test for frame >= detachtime, which will make the event run at different times for different fragments.<br />
<br />
[[File:ds_detach.png]]<br />
<br />
Now the springs detach at a random time between 3 and 6 frames after creation/breaking.<br />
<br />
[[File:ds_result.png]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Ds_detach.pngFile:Ds detach.png2017-11-18T13:19:11Z<p>Craig: Craig uploaded a new version of &quot;File:Ds detach.png&quot;</p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Ds_anim0.pngFile:Ds anim0.png2017-11-18T13:09:05Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Ds_initial.pngFile:Ds initial.png2017-11-18T13:08:55Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Ds_expr.pngFile:Ds expr.png2017-11-18T13:08:46Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Ds_detach.pngFile:Ds detach.png2017-11-18T13:08:31Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Ds_randomize.pngFile:Ds randomize.png2017-11-18T13:08:22Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Ds_result.pngFile:Ds result.png2017-11-18T13:08:11Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=Shading_and_texturingShading and texturing2017-11-12T17:44:35Z<p>Craig: </p>
<hr />
<div>__TOC__<br />
<br />
This is meant to be run ''after'' your simulation is done, and the number of meshes under the fragmentGroup is finalised. (There is no automatic update if the contents of the fragmentGroup changes.)<br />
<br />
== Overview ==<br />
<br />
From the menu, choose '''Fracture -> Shading/texturing [options box]'''<br />
<br />
[[File:shading_dialog.png]]<br />
<br />
This gives the option to:<br />
* Propagate shaders from the '''unbroken''' input objects (including per-face attachments) to the fragments produced under the fragmentGroup<br />
* AutoUV the interior faces of fragments<br />
* Create a selection set per input object that holds the interior faces of all fragments derived from it<br />
<br />
This operates on all meshes under the current selection. If nothing is selected, '''all fragments will be modified'''.<br />
<br />
It is recommended to assign shaders '''before''' breaking and connection to the simulator, but it is still possible to change the unbroken object's shaders and re-propagate after baking.<br />
<br />
You can run the shading/texturing process at any stage, after a live-sim, after baking to keys or disk, or after running replace-with-keys. However, if you have already run the shading/texturing process, then subsequently run replace-with-keys, you will have to re-run shading/texturing afterwards.<br />
<br />
For scenes created with versions prior to 1.6.0, you will have to delete the fragmentGroup, disconnect and reconnect all input objects, and re-bake the simulation, before shading/texturing will work.<br />
<br />
== Interior shader ==<br />
<br />
The shader to assign to interior faces is specified under the inputs tab.<br />
<br />
[[File:shading_interior.png]]<br />
<br />
The widget displays the connection to the fxInteriorShader attribute on the intermediate shape node of the input object. This is also editable from the attribute editor, under Extra Attributes. This allows you to change the interior shader after running replace-with-keys, when the world node will have been removed.<br />
<br />
== Changing shaders after breaking ==<br />
<br />
Assume you've broken an object, with or without a simulation, and you now want to change the shader(s) on the input object. You can't simply drag-and-drop the shader on to the broken shape, it has to be attached to the unbroken (intermediate) shape.<br />
<br />
[[File:shading_before.png]]<br />
<br />
The graph for the cube is shown below. The cube has two shapes, a non-intermediate shape polySurfaceShape1 which displays the output of the breakGeo2 node (when you rewind to the start frame), and an intermediate shape pCubeShape1 which holds the original unbroken geometry. It is to that intermediate shape that the shaders were originally attached. You can see exterior faces are assigned the initialShadingGroup and interior faces get blinn1.<br />
<br />
[[File:shading_graph.png]]<br />
<br />
It is to pCubeShape1 NOT polySurfaceShape1 that you must attach new shaders.<br />
* Rewind to the start frame<br />
* Uncheck intermediateObject in the attribute editor for pCubeShape1<br />
* Assign a new shader (including per-face shaders)<br />
* Re-check intermediateObject for pCubeShape1<br />
<br />
[[File:shading_intermediate.png]]<br />
<br />
Now clear your selection and re-run shading/texturing from the menu. Assuming you assigned two phongs to pCubeShape1, they will propagate to the 4 fragment meshes, and in addition to the polySurfaceShape1, which is visible before the break occurs.<br />
<br />
[[File:shading_after.png]]<br />
<br />
There is a relevant thread about this on the tech support forum here: http://community.fracture-fx.com/viewtopic.php?f=13&t=1429<br />
== Alembic ==<br />
<br />
As of version 1.6.1, shaders can be reattached to Alembic archives imported into the scene. Use File->Import, not the Pipeline Cache menu.<br />
<br />
== Face materials and color sets ==<br />
<br />
This example assumes the meshes are not connected to a simulator.<br />
<br />
Face material assignments and color sets on the unbroken objects:<br />
<br />
[[File:facemtl_colorset.png]]<br />
<br />
After breaking using Fracture -> Break selected, the shaders will not automatically appear on the broken mesh. They have to be propagated to it, including after each change to the break node settings, as the number of polygons in the output mesh will change. (Maya keeps track of per-face shader assignments using those face IDs which will be meaningless after changing any attribute on the break node.)<br />
<br />
Select it and choose Fracture -> Shading/texturing (option box), then Apply.<br />
<br />
[[File:propagate_shaders.png]]<br />
<br />
The color sets are automatically propagated and just have to be displayed.<br />
<br />
The same automatic process cannot be applied for shaders because Maya plug-in nodes cannot assign shaders to the faces of meshes they produce; shader attachments are represented in Maya using DG connections to the mesh shape node, which is always downstream of the plug-in node that produces the mesh.<br />
<br />
[[File:colorset.png]]<br />
<br />
== Problems ==<br />
<br />
If you encounter problems, first make sure you're running the latest version. http://wiki.fracture-fx.com/index.php?title=Release_notes<br />
<br />
Sometimes Maya can get into a mess where it refuses to assign per-face shaders. To start over, set the shading/texturing options to:<br />
<br />
Interior face UVs = Remote polyAutoProj nodes<br />
Propagate shaders = Break connections (all layers)<br />
<br />
[[File:reset_shading.png]]<br />
<br />
Make sure you have '''nothing selected''' then click Apply and it will disconnect all the shaders and delete the projection nodes created for the interior faces.<br />
<br />
Then re-run it with automatic projection and propagate shaders on.</div>Craighttp://wiki.fracture-fx.com/index.php?title=Common_IssuesCommon Issues2017-11-12T11:23:26Z<p>Craig: /* Workflow Questions */</p>
<hr />
<div>= Installation =<br />
<br />
=== Bullet doesn't load ===<br />
If you see the error "initializePlugin function could not be found in plug-in (bullet)", then the bullet plug-in is not installed correctly. It should remain inside the fracture_plugins directory, since it is a plug-in to fracture, not a separate plug-in to Maya. fracture_plugins should be placed alongside the fracture.mll/.bundle/.so. Once it's in the correct directory, bullet can be loaded from under the solver globals in the Edit Simulator window. See [[Installing_the_plug-in|Installing the plug-in]] for more information.<br />
<br />
=== What do I do with the devkit folder? ===<br />
You can ignore the devkit folder, it does not need to be installed to use the plug-in. The devkit is intended for developers at larger studios who wish to connect an in-house solver.<br />
<br />
=== Fracture doesn't load on the Mac ===<br />
If you see this error:<br />
<pre>// Error: line 1: Unable to dynamically load : /Users/Shared/Autodesk/maya/2013/plug-ins/fracture.bundle<br />
does not match the current architecture //</pre><br />
then the file is likely corrupted, and is not being identified as a 64-bit bundle. Reinstall the plug-in from the zip archive you downloaded.<br />
<br />
= Common problems =<br />
<br />
=== There's a large pyramid when I break something ===<br />
The object has to be closed, manifold (edges have no more than 2 adjacent polygons), with outward-facing normals, and no self-intersections. To check, you can try the following. You can display the polygon normals and check their outward facing. You can display border edges and check that there aren't any (meaning the mesh is closed). You can check for non-manifold geometry in the Cleanup window (edges should not have 3+ polygons sharing them, only 2.) There isn't a way to check for self-intersections yet.<br />
<br />
If the problem appears in a secondary break, set the internal offset under the voronoi options of the primary break node to 0. A small internal offset creates gaps between the fragments, but in some cases it can create small self-intersections where the offset takes the vertex through a thin part of the model.<br />
<br />
=== The scene is slow when I rewind or locks up when I connect a large object ===<br />
Increase the 'point separation' before connecting it. This is a world-space sampling distance used to convert all objects to a point-based representation. (Enable 'Draw points' to see the point cloud.)<br />
<br />
=== Baking or caching is extremely slow compared to live sim ===<br />
<br />
Make sure autokey is disabled.<br />
<br />
=== The sim looks wrong after baking to keys, objects are far apart ===<br />
Make sure the scene units are centimeters. Other units are currently not supported.<br />
<br />
=== The simulation suddenly stops ===<br />
Make sure the 'Playback speed' in the Maya preferences is set to 'Play every frame'.<br />
<br />
[[File:Playback_speed.png]]<br />
<br />
=== The fragments disappear after frame 1 ===<br />
This means your events are not configured to break anything. The fragments visible on the start frame are a ''preview'' of what will happen when the object eventually breaks during the sim. It's the unbroken object which is injected into the simulation when you hit play, which is why the fragments look as if they've disappeared. If none of your events are configured to break anything, the entire simulation will consist of only the unbroken objects, no fragments will be produced and the fragmentGroup will remain empty. This is correct and expected behavior.<br />
<br />
=== Crack image mode doesn't work ===<br />
The texture needs to be white lines on a black background to work, NOT black lines on a white background.<br />
<br />
=== The undamaged part of an object using crack image won't stay still ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?p=19509#p19509<br />
<br />
=== The simulation sometimes explodes using the internal solver ===<br />
Set a velocity limit. Use the numeric display (before or after baking to keys) to find a sensible maximum value.<br />
<br />
=== The simulation sometimes explodes immediately with Bullet ===<br />
Change the shape class to btGImpactMeshShape. Sometimes bullet has problems dealing with collision between convex and non-convex objects.<br />
<br />
=== I cannot animate things without the solver running ===<br />
Uncheck active on the simulator globals tab.<br />
<br />
=== Deformable collision objects don't work with Bullet ===<br />
These are only supported by the internal solver.<br />
<br />
=== Animating the transform scale doesn't work ===<br />
Animation for passive objects is only supported on translate and rotate. Mesh deformation is tracked by the internal solver, so you can workaround this by baking the scale into the point positions.<br />
<br />
=== How do I change the animation of a passive object? ===<br />
Disconnect it from the simulator using the button on the inputs tab. Change the animation. Reconnect it.<br />
<br />
=== I can't see the preview geometry, or any extra output from the break node ===<br />
Fracture is currently incompatible with Viewport 2.0 (which is the default in Maya 2015 and up), so all users using 2015 will have to switch the viewport back to legacy mode (renderer → legacy default viewport) to view simulator previews or any extra output from the break node (e.g. the the paths extracted from the crack image texture).<br />
<br />
=== How do I get better collisions in Bullet? ===<br />
* In the object's bullet section, increase the collision margin.<br />
* In the Globals --> Solver --> increase Fixed Time Step.<br />
<br />
=== The particles from the "emit particles on break" event don't work with fluids ===<br />
On the simulator globals tab, right at the bottom, under the meshes layout, there's an 'Update world' option menu. Switch that to 'before'. There's tooltip explaining the functionality more in depth.<br />
<br />
===Fracture FX in Maya 2016 crashes when I turn on parallel rig evaluation"===<br />
When you load fracture in Maya 2016, parallel rig evaluation will be disabled, because fracture is not compatible with it. Do not switch parallel evaluation back on, otherwise it will crash Maya.<br />
[http://static-dc.autodesk.net/content/dam/autodesk/www/Company/files/Parallel_Maya.pdf More info here.]<br />
<br />
[[File:Parallel_eval.png]]<br />
<br />
===Fragments fall through the ground with Bullet ===<br />
<br />
Try increasing the 'Fixed time step (Hz)' value on the solver globals. If the ground is a mesh (rather than the built-in ground plane) make it thicker (use a separate non-rendering object if necessary). Try raising the collision margin for the object on the inputs tab.<br />
<br />
=== Are face materials and color sets supported? ===<br />
<br />
Yes. See [[Shading_and_texturing#Face_materials_and_color_sets|this page]]<br />
<br />
=== Secondary breaking doesn't use the right break settings ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1705<br />
<br />
= Workflow Questions = <br />
<br />
=== How do I animate cracks? ===<br />
The breaking pattern produced by the voronoi/split-plane/crack-image fragment modes cannot be animated. You can only animate a mask applied to that pattern, in the form of an animated texture sequence, animated procedural texture or ramp, or an animated/deforming volume. Set the localize mode to event-driven, and connect a texture or volume. Alternatively, choose Add event -> Animated -> Texture driven, from the menu under the events tab. In any case, you may want to uncheck the active flag on the simulator while keyframing, in order to stop the solver evaluating when you jump around the timeline.<br />
<br />
If you don't need to see partially growing cracks inside an object, a faster alternative to the localize mode is to create an event that breaks the entire object on frame 2, but leaves the fragments passive (activate-on-break = off). Then activate the objects that touch an animated/deforming volume from a second event, e.g. Add event -> Animated -> Activate in volume.<br />
<br />
=== Keyframed objects won't break when they collide ===<br />
Make sure they're both connected to the simulator. (They're connected if they're listed under the inputs tab, and still appear in the viewport when you switch off the display of polygons.) If ''both'' objects are keyframed, also make sure 'passive collide' is enabled in the solver globals, otherwise the simulator will not check for collisions between two passive (non-simulated) objects.<br />
<br />
=== Are events tied to particular objects? ===<br />
No, by design events can break any number of objects, at different times and with different break properties per object. Some events may not break anything, and may only modify the dynamics properties or the custom attributes carried by objects. You can however choose to restrict events to particular objects using the ''object'' filter, or groups of objects using the ''object_set'' filter. Events are meant to be customisable. See [[Events_and_filters|Events and filters]] for more information.<br />
<br />
=== Should I scale units like mass and gravity depending on my Maya units? ===<br />
Units can be whatever you want them to be. The only unit that's fixed is time (seconds). If you decide the numbers you use for distance represent meters, then gravity is meters-per-second-per-second (ms^-2). If you decide your mass is kg, then your impact force becomes newtons, and so on. They're all linked.<br />
<br />
=== How do I vary the secondary break pattern? ===<br />
http://community.fracture-fx.com/viewtopic.php?t=1549&f=13<br />
<br />
=== How do I get custom data to drive a shader? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18989#p18989<br />
<br />
=== How do I get a character to activate fragments? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18782#p18782<br />
<br />
=== How do I locally break a wall then break the rest of it at a later frame? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=19001#p19001<br />
<br />
=== How do I edit fragment keyframes before exporting to Alembic? ===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1701&p=19875#p19875<br />
<br />
===How do I script the creation of attributes, filters, modifiers?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1720<br />
<br />
=== What does the update transform button do? ===<br />
It moves the break node's transform back to match the object's transform, if the object has been moved since it was broken, so the origins match again. The position of things like split planes are recorded relative to the break node so that the same node can be reused to break multiple objects (by setting their "breakWith" attribute). The objects may be nowhere near each other, so there has to be another point of reference, which is the origin of the break node.<br />
<br />
=== How do I stop displacement on fragments before they're activated? ===<br />
<br />
On the inputs tab, under the custom data section for the object, add a float called "dispScale", and set it to 0.<br />
<br />
[[File:dispScale0.png]]<br />
<br />
In the event that activates the fragments, add an assign modifier, setting "dispScale" to 1.<br />
<br />
[[File:dispScale1.png]]<br />
<br />
Now the fragments will have zero displacement until they're activated.<br />
<br />
=== How do I have two layers of breaking on one object? ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1768</div>Craighttp://wiki.fracture-fx.com/index.php?title=Installing_the_licenseInstalling the license2017-08-30T20:25:27Z<p>Craig: /* Multiple licenses */</p>
<hr />
<div>== Workflow ==<br />
<span style="color:red">'''These instructions are for the full version of Fracture FX.'''<br /><br />
'''For instructions on installing the trial version, please check the "Fracture FX Trial Download" email you received.'''</span><br />
<br /><br />
<br />
To get Fracture FX running on your machine, you need a valid license. At the time of writing, all our licenses are node-locked; this means that each license is only valid for the machine for which it was requested. Please read on for step-by-step instructions on how to install your license and get up and running. <br />
<br />
# Upon receipt of your payment you will be sent an email outlining how to request a node-locked license. Follow the instructions in the email to request a license. <br />
# A license will be sent to you in zip format. Use winzip or winrar to uncompress it. The license file is called "fxlcn". It has no file extension and should never be renamed. <br />
# Copy the license in your home directory. Please refer to the box below for more info about your home directory. <br />
<pre><br />
Windows XP: <root>\Documents and Settings\<username>\My Documents\<br />
Windows Vista: <root>\Users\<username>\Documents\<br />
OSX: /Users/<username><br />
Linux: /home/<username><br />
</pre><br />
<br />
== Common issues ==<br />
An error message (in the script editor) like the one below means that the license is not in the correct directory. The message tells you where FractureFX is expecting to see the license.<br />
<pre><br />
// Error: fracture : failed to open license file "C:/Users/Ed/Documents/fxlcn" // <br />
// Error: initializePlugin function failed (fracture) //<br />
</pre><br />
<br />
== Multiple licenses ==<br />
<br />
If you've purchased node-locked licenses for more than one machine, and have network shared user home directories, you can either:<br />
* Concatenate all the license files together into a single fxlcn file, and place it in the home directory, or<br />
* Place the license files somewhere other than the home directory and set the environment variable FX_LCN_FILE to the absolute path to the license file. Fracture will check this variable before falling back to the home directory.<br />
<br />
If you decide to concatenate the files, just copy/paste the lines in a plain text editor, one set after the other. If you're mixing v1 and v2 licenses in the same file, make sure the v2 licenses appear before the v1 licenses in the file, in order for both the v1 and v2 software to be able to read it.</div>Craighttp://wiki.fracture-fx.com/index.php?title=SpringsSprings2017-06-11T17:43:20Z<p>Craig: /* Creating springs */</p>
<hr />
<div>= Springs =<br />
<br />
Some examples of how to use the spring modifier in v2.<br />
<br />
== Creating springs ==<br />
<br />
The first modifier in the image below makes springs between fragments that were inside a volume in their initial position (at the start frame).<br />
<br />
The second modifier finds the fragments within a different volume, then makes the '''existing''' springs between them stronger (the red ones).<br />
This does NOT create new springs, it just edits the existing ones. The unchanged weaker springs are left in yellow.<br />
<br />
[[File:Spring_mod1.png]]<br />
<br />
== Destroying springs ==<br />
<br />
The event has a volume filter to isolate the green fragments. The modifier destroys springs that connect fragments inside the volume to fragments outside the volume, i.e. between fragments which are modified by the event and those which are NOT modified.<br />
<br />
This causes a chunk (green) to fall out, but keeps the springs between fragments within the chunk, only removing the ones connecting the chunk to the rest of the fragments (blue).<br />
<br />
[[File:Spring_mod2.png]]<br />
<br />
== Detach velocity ==<br />
<br />
The pink springs connect the fragments to a passive input object.<br />
<br />
The yellow springs connect the fragments to each other, as soon as they’re created (when the cube is broken).<br />
<br />
The last modifier finds fragments in the volume (the lower half) and edits the detach velocity of the springs connecting them to anything outside the volume. This weakens the link between fragments inside and outside the volume. The lower half is more likely to detach when it’s hit by the ball. (All the blue springs have detached and so don’t appear in the image.)<br />
<br />
[[File:Spring_mod3.png]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=SpringsSprings2017-06-11T17:42:40Z<p>Craig: /* Creating springs */</p>
<hr />
<div>= Springs =<br />
<br />
Some examples of how to use the spring modifier in v2.<br />
<br />
== Creating springs ==<br />
<br />
The first modifier in the image below makes springs between fragments that were inside a volume in their initial position (at the start frame).<br />
<br />
The second modifier finds the fragments within a different volume, then makes the '''existing''' springs (red) between them stronger.<br />
This does NOT create new springs, it just edits the existing ones. The unchanged weaker springs are left in yellow.<br />
<br />
[[File:Spring_mod1.png]]<br />
<br />
== Destroying springs ==<br />
<br />
The event has a volume filter to isolate the green fragments. The modifier destroys springs that connect fragments inside the volume to fragments outside the volume, i.e. between fragments which are modified by the event and those which are NOT modified.<br />
<br />
This causes a chunk (green) to fall out, but keeps the springs between fragments within the chunk, only removing the ones connecting the chunk to the rest of the fragments (blue).<br />
<br />
[[File:Spring_mod2.png]]<br />
<br />
== Detach velocity ==<br />
<br />
The pink springs connect the fragments to a passive input object.<br />
<br />
The yellow springs connect the fragments to each other, as soon as they’re created (when the cube is broken).<br />
<br />
The last modifier finds fragments in the volume (the lower half) and edits the detach velocity of the springs connecting them to anything outside the volume. This weakens the link between fragments inside and outside the volume. The lower half is more likely to detach when it’s hit by the ball. (All the blue springs have detached and so don’t appear in the image.)<br />
<br />
[[File:Spring_mod3.png]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=SpringsSprings2017-06-11T17:42:12Z<p>Craig: /* Creating springs */</p>
<hr />
<div>= Springs =<br />
<br />
Some examples of how to use the spring modifier in v2.<br />
<br />
== Creating springs ==<br />
<br />
The first modifier in the image below makes springs between fragments that were inside a volume in their initial position (at the start frame).<br />
<br />
The second modifier finds the fragments within a different volume, then makes the *existing* springs (red) between them stronger.<br />
This does NOT create new springs, it just edits the existing ones. The unchanged weaker springs are left in yellow.<br />
<br />
[[File:Spring_mod1.png]]<br />
<br />
== Destroying springs ==<br />
<br />
The event has a volume filter to isolate the green fragments. The modifier destroys springs that connect fragments inside the volume to fragments outside the volume, i.e. between fragments which are modified by the event and those which are NOT modified.<br />
<br />
This causes a chunk (green) to fall out, but keeps the springs between fragments within the chunk, only removing the ones connecting the chunk to the rest of the fragments (blue).<br />
<br />
[[File:Spring_mod2.png]]<br />
<br />
== Detach velocity ==<br />
<br />
The pink springs connect the fragments to a passive input object.<br />
<br />
The yellow springs connect the fragments to each other, as soon as they’re created (when the cube is broken).<br />
<br />
The last modifier finds fragments in the volume (the lower half) and edits the detach velocity of the springs connecting them to anything outside the volume. This weakens the link between fragments inside and outside the volume. The lower half is more likely to detach when it’s hit by the ball. (All the blue springs have detached and so don’t appear in the image.)<br />
<br />
[[File:Spring_mod3.png]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=SpringsSprings2017-06-11T17:41:05Z<p>Craig: </p>
<hr />
<div>= Springs =<br />
<br />
Some examples of how to use the spring modifier in v2.<br />
<br />
== Creating springs ==<br />
<br />
The first modifier in the image below makes springs (yellow) between fragments that were inside a volume in their initial position (at the start frame).<br />
<br />
The second modifier finds the fragments within a different volume, then makes the *existing* springs (red) between them stronger. This does NOT create new springs, it just modifies the existing ones.<br />
<br />
[[File:Spring_mod1.png]]<br />
<br />
== Destroying springs ==<br />
<br />
The event has a volume filter to isolate the green fragments. The modifier destroys springs that connect fragments inside the volume to fragments outside the volume, i.e. between fragments which are modified by the event and those which are NOT modified.<br />
<br />
This causes a chunk (green) to fall out, but keeps the springs between fragments within the chunk, only removing the ones connecting the chunk to the rest of the fragments (blue).<br />
<br />
[[File:Spring_mod2.png]]<br />
<br />
== Detach velocity ==<br />
<br />
The pink springs connect the fragments to a passive input object.<br />
<br />
The yellow springs connect the fragments to each other, as soon as they’re created (when the cube is broken).<br />
<br />
The last modifier finds fragments in the volume (the lower half) and edits the detach velocity of the springs connecting them to anything outside the volume. This weakens the link between fragments inside and outside the volume. The lower half is more likely to detach when it’s hit by the ball. (All the blue springs have detached and so don’t appear in the image.)<br />
<br />
[[File:Spring_mod3.png]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=SpringsSprings2017-06-11T17:40:07Z<p>Craig: Created page with "Some examples of how to use the spring modifier in v2. = Creating springs = The first modifier in the image below makes springs (yellow) between fragments that were inside a..."</p>
<hr />
<div>Some examples of how to use the spring modifier in v2.<br />
<br />
= Creating springs =<br />
<br />
The first modifier in the image below makes springs (yellow) between fragments that were inside a volume in their initial position (at the start frame).<br />
<br />
The second modifier finds the fragments within a different volume, then makes the *existing* springs (red) between them stronger. This does NOT create new springs, it just modifies the existing ones.<br />
<br />
[[File:Spring_mod1.png]]<br />
<br />
= Destroying springs =<br />
<br />
The event has a volume filter to isolate the green fragments. The modifier destroys springs that connect fragments inside the volume to fragments outside the volume, i.e. between fragments which are modified by the event and those which are NOT modified.<br />
<br />
This causes a chunk (green) to fall out, but keeps the springs between fragments within the chunk, only removing the ones connecting the chunk to the rest of the fragments (blue).<br />
<br />
[[File:Spring_mod2.png]]<br />
<br />
= Detach velocity =<br />
<br />
The pink springs connect the fragments to a passive input object.<br />
<br />
The yellow springs connect the fragments to each other, as soon as they’re created (when the cube is broken).<br />
<br />
The last modifier finds fragments in the volume (the lower half) and edits the detach velocity of the springs connecting them to anything outside the volume. This weakens the link between fragments inside and outside the volume. The lower half is more likely to detach when it’s hit by the ball. (All the blue springs have detached and so don’t appear in the image.)<br />
<br />
[[File:Spring_mod3.png]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Spring_mod3.pngFile:Spring mod3.png2017-06-11T17:28:20Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Spring_mod2.pngFile:Spring mod2.png2017-06-11T17:27:52Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:Spring_mod1.pngFile:Spring mod1.png2017-06-11T17:27:28Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=Main_PageMain Page2017-06-11T17:26:13Z<p>Craig: /* Using Fracture */</p>
<hr />
<div>'''FractureFX Wiki.'''<br />
__TOC__<br />
<br />
This wiki is currently under construction.<br />
<br />
<br />
= Installing Fracture=<br />
<span style="color:red">'''These instructions are for the full version of Fracture FX.'''<br /><br />
'''For instructions on installing the trial version, please check the "Fracture FX Trial Download" email you received.'''</span><br />
* [[Installing the license]]<br />
* [[Installing the plug-in]]<br />
* [[Common issues and where to find help]]<br />
<br />
= Getting started with Fracture = <br />
* [http://www.fracture-fx.com/tutorials Video tutorials]<br />
* [http://www.fracture-fx.com/key_features Key Features]<br />
* [[FAQ|FAQ]]<br />
<br />
= Using Fracture =<br />
* Workflow<br />
** [[Nodes]]<br />
*** [[fxWorld]]<br />
*** [[fxBreakGeometry]]<br />
** [[Events and filters]]<br />
** [[Takes and exporting]]<br />
** [[Shading and texturing]]<br />
** [[Springs]]<br />
<br />
= Reference =<br />
* Attributes<br />
** [[Inputs|Inputs]]<br />
*** [[Object_properties|Object properties]]<br />
**** [[Dynamics_parameters|Dynamics parameters]]<br />
**** [[Custom_data|Custom data]]<br />
*** [[Break_properties|Break properties]]<br />
**** [[Mesh_Attributes|Mesh]]<br />
**** [[Voronoi_Attributes|Voronoi]]<br />
**** [[Split_plane_Attributes|Split plane]]<br />
**** [[Crack_image_Attributes|Crack image]]<br />
**** [[Localized_Attributes|Localized]]<br />
** [[Events|Events]]<br />
*** [[Event_list|Event list]]<br />
*** [[Filter_panel|Filter panel]]<br />
*** [[Scripts_and_Modifiers_tabs|Scripts and Modifiers tabs]]<br />
** [[Globals|Globals]]<br />
*** [[Simulation_globals|Simulation globals]]<br />
*** [[Drawing|Drawing]]<br />
*** [[Meshes|Meshes]]<br />
** [[Takes|Takes]]<br />
<br />
* Commands<br />
**[[fxCmd]]<br />
<br />
= Release notes=<br />
* [[Release notes]]</div>Craighttp://wiki.fracture-fx.com/index.php?title=Release_notesRelease notes2017-06-03T12:14:45Z<p>Craig: </p>
<hr />
<div>== 2.0.2 ==<br />
* Fixed bakeToDisk crash in 2017 on Mac<br />
<br />
== 2.0.1 ==<br />
* Warn about input objects with no shaders (from 1.9.11)<br />
<br />
== 2.0 ==<br />
* Springs<br />
* Transfer break node between meshes<br />
* Volume filter can test initial state position of RB, instead of only the current world position<br />
* Upgrade to bullet 2.8.3<br />
<br />
== 1.9.12 ==<br />
* Fixed bakeToDisk crash in 2017 on Mac. (Backported from 2.0.2)<br />
<br />
== 1.9.11 ==<br />
* Warn about input objects with no shaders<br />
<br />
== 1.9.10 ==<br />
* Fixed chance filter above modifier not resetting and giving different results on rewind<br />
<br />
== 1.9.9 ==<br />
* Fixed input objects no longer connected to simulator after reference reload<br />
<br />
== 1.9.7 ==<br />
* Preset buttons for shading/texturing parameters<br />
* Choose UV set for interior faces polyAutoProj<br />
* Separate checkbox to remove groupParts nodes<br />
* Remove polyPlanarProj and polyTweakUV as well as polyAutoProj<br />
* Option to disconnect shaders from broken input object preview mesh<br />
<br />
== 1.9.6 ==<br />
* Apply pre/post-break transform to particles as well as mesh<br />
<br />
== 1.9.5 ==<br />
* Shading/texturing removes broken groupParts nodes when removing polyAutoProj<br />
* Pre-break and post-break transform for user scripts<br />
<br />
== 1.9.4 ==<br />
*Release for Maya 2017 (mac and windows only)<br />
<br />
== 1.9.3 ==<br />
*Dive post-sim displacement with float"dispScale" fragment attribute, so user can specify which fragments should be displaced using modifiers (eg only active fragments get displacement)<br />
<br />
== 1.9.2 ==<br />
* Fixed shaders sometimes reappearing on different polygons after scene open.<br />
WARNING: You need to re-run propagate shaders if upgrading to this version<br />
* Auto keyframe is now disabled before baking, to avoid slowdown<br />
<br />
== 1.9.1 ==<br />
* Fixed crash if volume localized produces zero polygons for inside-volume region<br />
* Fixed splinter pattern disappearing when rotated<br />
<br />
== 1.9.0 ==<br />
* Show event colors in the list of events. (Mantis 220,223)<br />
* Reorder events list<br />
<br />
== 1.8.23 ==<br />
* Fixed takes not displaying on scene open if the scene was saved on or before the start frame<br />
<br />
== 1.8.22 ==<br />
* Fixed visibility keyed off before the start frame for input objects when baking to keys<br />
* Fixed hypergraph close failing when lsUI sometimes returns a non-existent window<br />
<br />
== 1.8.21 ==<br />
* Replace-with-keys no longer loses shader attachments<br />
* Close hypergraph windows before replace-with-keys or shading/texturing runs, to avoid slowdown<br />
<br />
== 1.8.20 ==<br />
* Fixed fragment shader assignment failing with multiple simulators<br />
<br />
== 1.8.19 ==<br />
* Fixed secondary UV sets not created on fragments<br />
* Indicate which event templates are breaking/non-breaking<br />
<br />
== 1.8.18 ==<br />
* Check eno1 on Linux<br />
<br />
== 1.8.17 ==<br />
* Fixed cache files larger than 2Gb failing on Windows. Maya 2015+ only, due to a separate bug in Visual C++ 10.0 which is required for Maya 2014.<br />
* Check eth1/eth2 on Linux<br />
<br />
== 1.8.16 ==<br />
* Maya 2016 compatibility<br />
<br />
== 1.8.15 ==<br />
* Added voronoi seed/numPoint override attrs to modifier data menu<br />
<br />
== 1.8.14 ==<br />
* Fixed load failing in 2013 due to treeView -ams flag<br />
<br />
== 1.8.13 ==<br />
* Option to draw solid shaded simulator preview when viewport is in wireframe mode<br />
* Fixed clusters generating incorrect warning about bullet shapeClass change during sim<br />
* HUD display bodyId of selected fragment<br />
<br />
== 1.8.12 ==<br />
* Fixed shells that did not intersect a split-plane from behaving as one combined shell.<br />
<br />
== 1.8.11 ==<br />
* Delete rigid bodies in the same order each time. Workaround for Bullet sim variation.<br />
* Fixed rare sim variation over multiple takes with internal solver.<br />
<br />
== 1.8.10 ==<br />
* Support AbcExport -eulerFilter. (2014 and up)<br />
<br />
== 1.8.9 ==<br />
* Fixed combined shells not kept together for split-plane mode<br />
<br />
== 1.8.8 ==<br />
* Option to keep combined shells together during breaking<br />
* Fixed inside/outside custom data invalid for mesh shells that don't intersect the localized cutting volume. Mantis 247<br />
<br />
== 1.8.7 ==<br />
* Fixed transform above input object sometimes not updating when scrubbing timeline after baking to keys<br />
* Fixed error about inability to retrieve mesh if an object is added after the start frame and before the bullet sim world is created<br />
<br />
== 1.8.6 ==<br />
* Added HUD to display info about selected fragment<br />
* Fixed long cache filename limiting the movement of the left/right divider on the takes tab<br />
<br />
== 1.8.5 ==<br />
* Fixed displacement broken not applied if takes were deleted<br />
<br />
== 1.8.4 ==<br />
* Constrain displacement direction at cutting edges to be the same for all fragment vertices at the same position. (Requires rebake to work.)<br />
* Option to move selection up the object tree a level<br />
<br />
== 1.8.3 ==<br />
* Allow undo of object tree edit operations<br />
* Object tree can mirror scene DAG and reveal selection<br />
<br />
== 1.8.2 ==<br />
* Input object list is now a treeView, for collapsable groups<br />
<br />
== 1.8.1 ==<br />
* Fixed shading normals not recomputed after interior face displacement<br />
<br />
== 1.8.0 ==<br />
* Post-sim displacement on interior faces<br />
* Random number seed for particle emitter<br />
<br />
== 1.7.5 ==<br />
* Check WiFi adapters on Windows<br />
<br />
== 1.7.4 ==<br />
* Option to break all shader connections from fragments. Workaround for Maya sometimes failing with "Unable to update render layer adjustment"<br />
* Shading/texturing prints progress and is interruptable<br />
<br />
== 1.7.3 ==<br />
* Workaround 3D paint tool sometimes not producing a unique name per texture<br />
* Workaround for fluid not emitting from particles, unless the particles are cached. Set update world to before on globals. (Mantis 244)<br />
* Fixed geometry disappearing in Mac builds<br />
<br />
== 1.7.2 ==<br />
* Fix scripted rotation change on a passive fragment sometimes causing a jump in position<br />
<br />
== 1.7.1 ==<br />
* Draw wireframe checkbox for simulator preview<br />
* Numeric display of object size<br />
<br />
== 1.7.0 ==<br />
* Splinter fragment type<br />
<br />
== 1.6.1 ==<br />
* Allow shading/texturing to work on imported alembic archives. (Requires re-export of the alembic.)<br />
* Fixed paint tool not displaying map using correct UV set<br />
<br />
= 1.6.0 =<br />
* Option to propagate shaders to fragments, autoUV interior faces, or create selection sets. (New scenes only.)<br />
* Replaced blind data with intArray to identify interior faces. (New scenes only.)<br />
* Fixed convert selection to interior faces not working with split-plane mode<br />
* Fixed numeric overflow in point sample count leading to memory explosion, caused by the combination of a large scene scale with a small point separation.<br />
* Fixed cache file exists test failing on Windows. Mantis 218<br />
* Changed simulator defaults (gravity, point sep, solver)<br />
* Fixed listParams error sometimes occurring after playback is stopped, for non-unique object names. Mantis 196<br />
<br />
= 1.5.3 =<br />
* Allow localize event-driven mode to work with replace-with-keys in fragments-only mode<br />
<br />
=1.5.2=<br />
* Workaround paint tool sometimes failing when used on models with multiple UV sets<br />
<br />
= 1.5.1 =<br />
* Fixed crash when simulating without any objects connected to the simulator.<br />
<br />
= 1.5.0 = <br />
* Simulator GL preview now displays polygons by default rather than a triangle mesh<br />
* Fixed randomize color on break node sometimes failing<br />
* Fixed simulator window not closing when creating a new scene<br />
* Point sampling produces fewer points, and reduces further if too many would be introduced for large objects<br />
* Added button to data filter to grab data value from selected fragment, e.g. for cluster colors<br />
* Fixed assign modifier text field failing to focus on Mac when clicking on it<br />
* Force paint tool stamp profile to solid by default<br />
* Option to override voronoi pointSeed per object using the same break node. Set integer data fxBreak_pointSeed<br />
<br />
= 1.4.16 =<br />
* Link randomize colors flag to displayColors on the mesh shape, and hide the toggle color display button for new scenes<br />
<br />
= 1.4.15 = <br />
* Fixed cluster fragments jumping back when the cluster separates if the cluster was passive and activated later in the sim<br />
<br />
= 1.4.14 = <br />
* Remove inheritSurfaceTex option. It's now set automatically if a texture modifier is used in the event. Mantis 73<br />
* New file nodes created for painting now have filtering disabled by default<br />
* Reorganize crack-image UI, and disable image threshold by default. Mantis 112<br />
* Link enable flag for chained break node under cluster settings to the cluster preview mesh visibility<br />
* Fixed cluster volumes not working if input model was scaled prior to breaking. Mantis 127<br />
* Connect selected meshes as cluster volumes<br />
* Fixed cache write path tokens not expanded before the test as to whether or not the file exists. Mantis 131</div>Craighttp://wiki.fracture-fx.com/index.php?title=Release_notesRelease notes2017-06-03T11:55:53Z<p>Craig: </p>
<hr />
<div>== 2.0.2 ==<br />
* Fixed bakeToDisk crash in 2017 on Mac<br />
<br />
== 2.0.1 ==<br />
* Warn about input objects with no shaders (from 1.9.11)<br />
<br />
== 2.0 ==<br />
* Springs<br />
* Transfer break node between meshes<br />
* Volume filter can test initial state position of RB, instead of only the current world position<br />
* Upgrade to bullet 2.8.3<br />
<br />
== 1.9.11 ==<br />
* Warn about input objects with no shaders<br />
<br />
== 1.9.10 ==<br />
* Fixed chance filter above modifier not resetting and giving different results on rewind<br />
<br />
== 1.9.9 ==<br />
* Fixed input objects no longer connected to simulator after reference reload<br />
<br />
== 1.9.7 ==<br />
* Preset buttons for shading/texturing parameters<br />
* Choose UV set for interior faces polyAutoProj<br />
* Separate checkbox to remove groupParts nodes<br />
* Remove polyPlanarProj and polyTweakUV as well as polyAutoProj<br />
* Option to disconnect shaders from broken input object preview mesh<br />
<br />
== 1.9.6 ==<br />
* Apply pre/post-break transform to particles as well as mesh<br />
<br />
== 1.9.5 ==<br />
* Shading/texturing removes broken groupParts nodes when removing polyAutoProj<br />
* Pre-break and post-break transform for user scripts<br />
<br />
== 1.9.4 ==<br />
*Release for Maya 2017 (mac and windows only)<br />
<br />
== 1.9.3 ==<br />
*Dive post-sim displacement with float"dispScale" fragment attribute, so user can specify which fragments should be displaced using modifiers (eg only active fragments get displacement)<br />
<br />
== 1.9.2 ==<br />
* Fixed shaders sometimes reappearing on different polygons after scene open.<br />
WARNING: You need to re-run propagate shaders if upgrading to this version<br />
* Auto keyframe is now disabled before baking, to avoid slowdown<br />
<br />
== 1.9.1 ==<br />
* Fixed crash if volume localized produces zero polygons for inside-volume region<br />
* Fixed splinter pattern disappearing when rotated<br />
<br />
== 1.9.0 ==<br />
* Show event colors in the list of events. (Mantis 220,223)<br />
* Reorder events list<br />
<br />
== 1.8.23 ==<br />
* Fixed takes not displaying on scene open if the scene was saved on or before the start frame<br />
<br />
== 1.8.22 ==<br />
* Fixed visibility keyed off before the start frame for input objects when baking to keys<br />
* Fixed hypergraph close failing when lsUI sometimes returns a non-existent window<br />
<br />
== 1.8.21 ==<br />
* Replace-with-keys no longer loses shader attachments<br />
* Close hypergraph windows before replace-with-keys or shading/texturing runs, to avoid slowdown<br />
<br />
== 1.8.20 ==<br />
* Fixed fragment shader assignment failing with multiple simulators<br />
<br />
== 1.8.19 ==<br />
* Fixed secondary UV sets not created on fragments<br />
* Indicate which event templates are breaking/non-breaking<br />
<br />
== 1.8.18 ==<br />
* Check eno1 on Linux<br />
<br />
== 1.8.17 ==<br />
* Fixed cache files larger than 2Gb failing on Windows. Maya 2015+ only, due to a separate bug in Visual C++ 10.0 which is required for Maya 2014.<br />
* Check eth1/eth2 on Linux<br />
<br />
== 1.8.16 ==<br />
* Maya 2016 compatibility<br />
<br />
== 1.8.15 ==<br />
* Added voronoi seed/numPoint override attrs to modifier data menu<br />
<br />
== 1.8.14 ==<br />
* Fixed load failing in 2013 due to treeView -ams flag<br />
<br />
== 1.8.13 ==<br />
* Option to draw solid shaded simulator preview when viewport is in wireframe mode<br />
* Fixed clusters generating incorrect warning about bullet shapeClass change during sim<br />
* HUD display bodyId of selected fragment<br />
<br />
== 1.8.12 ==<br />
* Fixed shells that did not intersect a split-plane from behaving as one combined shell.<br />
<br />
== 1.8.11 ==<br />
* Delete rigid bodies in the same order each time. Workaround for Bullet sim variation.<br />
* Fixed rare sim variation over multiple takes with internal solver.<br />
<br />
== 1.8.10 ==<br />
* Support AbcExport -eulerFilter. (2014 and up)<br />
<br />
== 1.8.9 ==<br />
* Fixed combined shells not kept together for split-plane mode<br />
<br />
== 1.8.8 ==<br />
* Option to keep combined shells together during breaking<br />
* Fixed inside/outside custom data invalid for mesh shells that don't intersect the localized cutting volume. Mantis 247<br />
<br />
== 1.8.7 ==<br />
* Fixed transform above input object sometimes not updating when scrubbing timeline after baking to keys<br />
* Fixed error about inability to retrieve mesh if an object is added after the start frame and before the bullet sim world is created<br />
<br />
== 1.8.6 ==<br />
* Added HUD to display info about selected fragment<br />
* Fixed long cache filename limiting the movement of the left/right divider on the takes tab<br />
<br />
== 1.8.5 ==<br />
* Fixed displacement broken not applied if takes were deleted<br />
<br />
== 1.8.4 ==<br />
* Constrain displacement direction at cutting edges to be the same for all fragment vertices at the same position. (Requires rebake to work.)<br />
* Option to move selection up the object tree a level<br />
<br />
== 1.8.3 ==<br />
* Allow undo of object tree edit operations<br />
* Object tree can mirror scene DAG and reveal selection<br />
<br />
== 1.8.2 ==<br />
* Input object list is now a treeView, for collapsable groups<br />
<br />
== 1.8.1 ==<br />
* Fixed shading normals not recomputed after interior face displacement<br />
<br />
== 1.8.0 ==<br />
* Post-sim displacement on interior faces<br />
* Random number seed for particle emitter<br />
<br />
== 1.7.5 ==<br />
* Check WiFi adapters on Windows<br />
<br />
== 1.7.4 ==<br />
* Option to break all shader connections from fragments. Workaround for Maya sometimes failing with "Unable to update render layer adjustment"<br />
* Shading/texturing prints progress and is interruptable<br />
<br />
== 1.7.3 ==<br />
* Workaround 3D paint tool sometimes not producing a unique name per texture<br />
* Workaround for fluid not emitting from particles, unless the particles are cached. Set update world to before on globals. (Mantis 244)<br />
* Fixed geometry disappearing in Mac builds<br />
<br />
== 1.7.2 ==<br />
* Fix scripted rotation change on a passive fragment sometimes causing a jump in position<br />
<br />
== 1.7.1 ==<br />
* Draw wireframe checkbox for simulator preview<br />
* Numeric display of object size<br />
<br />
== 1.7.0 ==<br />
* Splinter fragment type<br />
<br />
== 1.6.1 ==<br />
* Allow shading/texturing to work on imported alembic archives. (Requires re-export of the alembic.)<br />
* Fixed paint tool not displaying map using correct UV set<br />
<br />
= 1.6.0 =<br />
* Option to propagate shaders to fragments, autoUV interior faces, or create selection sets. (New scenes only.)<br />
* Replaced blind data with intArray to identify interior faces. (New scenes only.)<br />
* Fixed convert selection to interior faces not working with split-plane mode<br />
* Fixed numeric overflow in point sample count leading to memory explosion, caused by the combination of a large scene scale with a small point separation.<br />
* Fixed cache file exists test failing on Windows. Mantis 218<br />
* Changed simulator defaults (gravity, point sep, solver)<br />
* Fixed listParams error sometimes occurring after playback is stopped, for non-unique object names. Mantis 196<br />
<br />
= 1.5.3 =<br />
* Allow localize event-driven mode to work with replace-with-keys in fragments-only mode<br />
<br />
=1.5.2=<br />
* Workaround paint tool sometimes failing when used on models with multiple UV sets<br />
<br />
= 1.5.1 =<br />
* Fixed crash when simulating without any objects connected to the simulator.<br />
<br />
= 1.5.0 = <br />
* Simulator GL preview now displays polygons by default rather than a triangle mesh<br />
* Fixed randomize color on break node sometimes failing<br />
* Fixed simulator window not closing when creating a new scene<br />
* Point sampling produces fewer points, and reduces further if too many would be introduced for large objects<br />
* Added button to data filter to grab data value from selected fragment, e.g. for cluster colors<br />
* Fixed assign modifier text field failing to focus on Mac when clicking on it<br />
* Force paint tool stamp profile to solid by default<br />
* Option to override voronoi pointSeed per object using the same break node. Set integer data fxBreak_pointSeed<br />
<br />
= 1.4.16 =<br />
* Link randomize colors flag to displayColors on the mesh shape, and hide the toggle color display button for new scenes<br />
<br />
= 1.4.15 = <br />
* Fixed cluster fragments jumping back when the cluster separates if the cluster was passive and activated later in the sim<br />
<br />
= 1.4.14 = <br />
* Remove inheritSurfaceTex option. It's now set automatically if a texture modifier is used in the event. Mantis 73<br />
* New file nodes created for painting now have filtering disabled by default<br />
* Reorganize crack-image UI, and disable image threshold by default. Mantis 112<br />
* Link enable flag for chained break node under cluster settings to the cluster preview mesh visibility<br />
* Fixed cluster volumes not working if input model was scaled prior to breaking. Mantis 127<br />
* Connect selected meshes as cluster volumes<br />
* Fixed cache write path tokens not expanded before the test as to whether or not the file exists. Mantis 131</div>Craighttp://wiki.fracture-fx.com/index.php?title=Common_IssuesCommon Issues2017-05-27T15:50:09Z<p>Craig: /* Workflow Questions */</p>
<hr />
<div>= Installation =<br />
<br />
=== Bullet doesn't load ===<br />
If you see the error "initializePlugin function could not be found in plug-in (bullet)", then the bullet plug-in is not installed correctly. It should remain inside the fracture_plugins directory, since it is a plug-in to fracture, not a separate plug-in to Maya. fracture_plugins should be placed alongside the fracture.mll/.bundle/.so. Once it's in the correct directory, bullet can be loaded from under the solver globals in the Edit Simulator window. See [[Installing_the_plug-in|Installing the plug-in]] for more information.<br />
<br />
=== What do I do with the devkit folder? ===<br />
You can ignore the devkit folder, it does not need to be installed to use the plug-in. The devkit is intended for developers at larger studios who wish to connect an in-house solver.<br />
<br />
=== Fracture doesn't load on the Mac ===<br />
If you see this error:<br />
<pre>// Error: line 1: Unable to dynamically load : /Users/Shared/Autodesk/maya/2013/plug-ins/fracture.bundle<br />
does not match the current architecture //</pre><br />
then the file is likely corrupted, and is not being identified as a 64-bit bundle. Reinstall the plug-in from the zip archive you downloaded.<br />
<br />
= Common problems =<br />
<br />
=== There's a large pyramid when I break something ===<br />
The object has to be closed, manifold (edges have no more than 2 adjacent polygons), with outward-facing normals, and no self-intersections. To check, you can try the following. You can display the polygon normals and check their outward facing. You can display border edges and check that there aren't any (meaning the mesh is closed). You can check for non-manifold geometry in the Cleanup window (edges should not have 3+ polygons sharing them, only 2.) There isn't a way to check for self-intersections yet.<br />
<br />
If the problem appears in a secondary break, set the internal offset under the voronoi options of the primary break node to 0. A small internal offset creates gaps between the fragments, but in some cases it can create small self-intersections where the offset takes the vertex through a thin part of the model.<br />
<br />
=== The scene is slow when I rewind or locks up when I connect a large object ===<br />
Increase the 'point separation' before connecting it. This is a world-space sampling distance used to convert all objects to a point-based representation. (Enable 'Draw points' to see the point cloud.)<br />
<br />
=== Baking or caching is extremely slow compared to live sim ===<br />
<br />
Make sure autokey is disabled.<br />
<br />
=== The sim looks wrong after baking to keys, objects are far apart ===<br />
Make sure the scene units are centimeters. Other units are currently not supported.<br />
<br />
=== The simulation suddenly stops ===<br />
Make sure the 'Playback speed' in the Maya preferences is set to 'Play every frame'.<br />
<br />
[[File:Playback_speed.png]]<br />
<br />
=== The fragments disappear after frame 1 ===<br />
This means your events are not configured to break anything. The fragments visible on the start frame are a ''preview'' of what will happen when the object eventually breaks during the sim. It's the unbroken object which is injected into the simulation when you hit play, which is why the fragments look as if they've disappeared. If none of your events are configured to break anything, the entire simulation will consist of only the unbroken objects, no fragments will be produced and the fragmentGroup will remain empty. This is correct and expected behavior.<br />
<br />
=== Crack image mode doesn't work ===<br />
The texture needs to be white lines on a black background to work, NOT black lines on a white background.<br />
<br />
=== The undamaged part of an object using crack image won't stay still ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?p=19509#p19509<br />
<br />
=== The simulation sometimes explodes using the internal solver ===<br />
Set a velocity limit. Use the numeric display (before or after baking to keys) to find a sensible maximum value.<br />
<br />
=== The simulation sometimes explodes immediately with Bullet ===<br />
Change the shape class to btGImpactMeshShape. Sometimes bullet has problems dealing with collision between convex and non-convex objects.<br />
<br />
=== I cannot animate things without the solver running ===<br />
Uncheck active on the simulator globals tab.<br />
<br />
=== Deformable collision objects don't work with Bullet ===<br />
These are only supported by the internal solver.<br />
<br />
=== Animating the transform scale doesn't work ===<br />
Animation for passive objects is only supported on translate and rotate. Mesh deformation is tracked by the internal solver, so you can workaround this by baking the scale into the point positions.<br />
<br />
=== How do I change the animation of a passive object? ===<br />
Disconnect it from the simulator using the button on the inputs tab. Change the animation. Reconnect it.<br />
<br />
=== I can't see the preview geometry, or any extra output from the break node ===<br />
Fracture is currently incompatible with Viewport 2.0 (which is the default in Maya 2015 and up), so all users using 2015 will have to switch the viewport back to legacy mode (renderer → legacy default viewport) to view simulator previews or any extra output from the break node (e.g. the the paths extracted from the crack image texture).<br />
<br />
=== How do I get better collisions in Bullet? ===<br />
* In the object's bullet section, increase the collision margin.<br />
* In the Globals --> Solver --> increase Fixed Time Step.<br />
<br />
=== The particles from the "emit particles on break" event don't work with fluids ===<br />
On the simulator globals tab, right at the bottom, under the meshes layout, there's an 'Update world' option menu. Switch that to 'before'. There's tooltip explaining the functionality more in depth.<br />
<br />
===Fracture FX in Maya 2016 crashes when I turn on parallel rig evaluation"===<br />
When you load fracture in Maya 2016, parallel rig evaluation will be disabled, because fracture is not compatible with it. Do not switch parallel evaluation back on, otherwise it will crash Maya.<br />
[http://static-dc.autodesk.net/content/dam/autodesk/www/Company/files/Parallel_Maya.pdf More info here.]<br />
<br />
[[File:Parallel_eval.png]]<br />
<br />
===Fragments fall through the ground with Bullet ===<br />
<br />
Try increasing the 'Fixed time step (Hz)' value on the solver globals. If the ground is a mesh (rather than the built-in ground plane) make it thicker (use a separate non-rendering object if necessary). Try raising the collision margin for the object on the inputs tab.<br />
<br />
=== Are face materials and color sets supported? ===<br />
<br />
Yes. See [[Shading_and_texturing#Face_materials_and_color_sets|this page]]<br />
<br />
=== Secondary breaking doesn't use the right break settings ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1705<br />
<br />
= Workflow Questions = <br />
<br />
=== How do I animate cracks? ===<br />
The breaking pattern produced by the voronoi/split-plane/crack-image fragment modes cannot be animated. You can only animate a mask applied to that pattern, in the form of an animated texture sequence, animated procedural texture or ramp, or an animated/deforming volume. Set the localize mode to event-driven, and connect a texture or volume. Alternatively, choose Add event -> Animated -> Texture driven, from the menu under the events tab. In any case, you may want to uncheck the active flag on the simulator while keyframing, in order to stop the solver evaluating when you jump around the timeline.<br />
<br />
If you don't need to see partially growing cracks inside an object, a faster alternative to the localize mode is to create an event that breaks the entire object on frame 2, but leaves the fragments passive (activate-on-break = off). Then activate the objects that touch an animated/deforming volume from a second event, e.g. Add event -> Animated -> Activate in volume.<br />
<br />
=== Keyframed objects won't break when they collide ===<br />
Make sure they're both connected to the simulator. (They're connected if they're listed under the inputs tab, and still appear in the viewport when you switch off the display of polygons.) If ''both'' objects are keyframed, also make sure 'passive collide' is enabled in the solver globals, otherwise the simulator will not check for collisions between two passive (non-simulated) objects.<br />
<br />
=== Are events tied to particular objects? ===<br />
No, by design events can break any number of objects, at different times and with different break properties per object. Some events may not break anything, and may only modify the dynamics properties or the custom attributes carried by objects. You can however choose to restrict events to particular objects using the ''object'' filter, or groups of objects using the ''object_set'' filter. Events are meant to be customisable. See [[Events_and_filters|Events and filters]] for more information.<br />
<br />
=== Should I scale units like mass and gravity depending on my Maya units? ===<br />
Units can be whatever you want them to be. The only unit that's fixed is time (seconds). If you decide the numbers you use for distance represent meters, then gravity is meters-per-second-per-second (ms^-2). If you decide your mass is kg, then your impact force becomes newtons, and so on. They're all linked.<br />
<br />
=== How do I vary the secondary break pattern? ===<br />
http://community.fracture-fx.com/viewtopic.php?t=1549&f=13<br />
<br />
=== How do I get custom data to drive a shader? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18989#p18989<br />
<br />
=== How do I get a character to activate fragments? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18782#p18782<br />
<br />
=== How do I locally break a wall then break the rest of it at a later frame? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=19001#p19001<br />
<br />
=== How do I edit fragment keyframes before exporting to Alembic? ===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1701&p=19875#p19875<br />
<br />
===How do I script the creation of attributes, filters, modifiers?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1720<br />
<br />
=== What does the update transform button do? ===<br />
It moves the break node's transform back to match the object's transform, if the object has been moved since it was broken, so the origins match again. The position of things like split planes are recorded relative to the break node so that the same node can be reused to break multiple objects (by setting their "breakWith" attribute). The objects may be nowhere near each other, so there has to be another point of reference, which is the origin of the break node.<br />
<br />
=== How do I stop displacement on fragments before they're activated? ===<br />
<br />
On the inputs tab, under the custom data section for the object, add a float called "dispScale", and set it to 0.<br />
<br />
[[File:dispScale0.png]]<br />
<br />
In the event that activates the fragments, add an assign modifier, setting "dispScale" to 1.<br />
<br />
[[File:dispScale1.png]]<br />
<br />
Now the fragments will have zero displacement until they're activated.</div>Craighttp://wiki.fracture-fx.com/index.php?title=File:DispScale1.pngFile:DispScale1.png2017-05-27T15:48:45Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=File:DispScale0.pngFile:DispScale0.png2017-05-27T15:48:26Z<p>Craig: </p>
<hr />
<div></div>Craighttp://wiki.fracture-fx.com/index.php?title=Common_IssuesCommon Issues2017-05-27T15:48:08Z<p>Craig: /* Workflow Questions */</p>
<hr />
<div>= Installation =<br />
<br />
=== Bullet doesn't load ===<br />
If you see the error "initializePlugin function could not be found in plug-in (bullet)", then the bullet plug-in is not installed correctly. It should remain inside the fracture_plugins directory, since it is a plug-in to fracture, not a separate plug-in to Maya. fracture_plugins should be placed alongside the fracture.mll/.bundle/.so. Once it's in the correct directory, bullet can be loaded from under the solver globals in the Edit Simulator window. See [[Installing_the_plug-in|Installing the plug-in]] for more information.<br />
<br />
=== What do I do with the devkit folder? ===<br />
You can ignore the devkit folder, it does not need to be installed to use the plug-in. The devkit is intended for developers at larger studios who wish to connect an in-house solver.<br />
<br />
=== Fracture doesn't load on the Mac ===<br />
If you see this error:<br />
<pre>// Error: line 1: Unable to dynamically load : /Users/Shared/Autodesk/maya/2013/plug-ins/fracture.bundle<br />
does not match the current architecture //</pre><br />
then the file is likely corrupted, and is not being identified as a 64-bit bundle. Reinstall the plug-in from the zip archive you downloaded.<br />
<br />
= Common problems =<br />
<br />
=== There's a large pyramid when I break something ===<br />
The object has to be closed, manifold (edges have no more than 2 adjacent polygons), with outward-facing normals, and no self-intersections. To check, you can try the following. You can display the polygon normals and check their outward facing. You can display border edges and check that there aren't any (meaning the mesh is closed). You can check for non-manifold geometry in the Cleanup window (edges should not have 3+ polygons sharing them, only 2.) There isn't a way to check for self-intersections yet.<br />
<br />
If the problem appears in a secondary break, set the internal offset under the voronoi options of the primary break node to 0. A small internal offset creates gaps between the fragments, but in some cases it can create small self-intersections where the offset takes the vertex through a thin part of the model.<br />
<br />
=== The scene is slow when I rewind or locks up when I connect a large object ===<br />
Increase the 'point separation' before connecting it. This is a world-space sampling distance used to convert all objects to a point-based representation. (Enable 'Draw points' to see the point cloud.)<br />
<br />
=== Baking or caching is extremely slow compared to live sim ===<br />
<br />
Make sure autokey is disabled.<br />
<br />
=== The sim looks wrong after baking to keys, objects are far apart ===<br />
Make sure the scene units are centimeters. Other units are currently not supported.<br />
<br />
=== The simulation suddenly stops ===<br />
Make sure the 'Playback speed' in the Maya preferences is set to 'Play every frame'.<br />
<br />
[[File:Playback_speed.png]]<br />
<br />
=== The fragments disappear after frame 1 ===<br />
This means your events are not configured to break anything. The fragments visible on the start frame are a ''preview'' of what will happen when the object eventually breaks during the sim. It's the unbroken object which is injected into the simulation when you hit play, which is why the fragments look as if they've disappeared. If none of your events are configured to break anything, the entire simulation will consist of only the unbroken objects, no fragments will be produced and the fragmentGroup will remain empty. This is correct and expected behavior.<br />
<br />
=== Crack image mode doesn't work ===<br />
The texture needs to be white lines on a black background to work, NOT black lines on a white background.<br />
<br />
=== The undamaged part of an object using crack image won't stay still ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?p=19509#p19509<br />
<br />
=== The simulation sometimes explodes using the internal solver ===<br />
Set a velocity limit. Use the numeric display (before or after baking to keys) to find a sensible maximum value.<br />
<br />
=== The simulation sometimes explodes immediately with Bullet ===<br />
Change the shape class to btGImpactMeshShape. Sometimes bullet has problems dealing with collision between convex and non-convex objects.<br />
<br />
=== I cannot animate things without the solver running ===<br />
Uncheck active on the simulator globals tab.<br />
<br />
=== Deformable collision objects don't work with Bullet ===<br />
These are only supported by the internal solver.<br />
<br />
=== Animating the transform scale doesn't work ===<br />
Animation for passive objects is only supported on translate and rotate. Mesh deformation is tracked by the internal solver, so you can workaround this by baking the scale into the point positions.<br />
<br />
=== How do I change the animation of a passive object? ===<br />
Disconnect it from the simulator using the button on the inputs tab. Change the animation. Reconnect it.<br />
<br />
=== I can't see the preview geometry, or any extra output from the break node ===<br />
Fracture is currently incompatible with Viewport 2.0 (which is the default in Maya 2015 and up), so all users using 2015 will have to switch the viewport back to legacy mode (renderer → legacy default viewport) to view simulator previews or any extra output from the break node (e.g. the the paths extracted from the crack image texture).<br />
<br />
=== How do I get better collisions in Bullet? ===<br />
* In the object's bullet section, increase the collision margin.<br />
* In the Globals --> Solver --> increase Fixed Time Step.<br />
<br />
=== The particles from the "emit particles on break" event don't work with fluids ===<br />
On the simulator globals tab, right at the bottom, under the meshes layout, there's an 'Update world' option menu. Switch that to 'before'. There's tooltip explaining the functionality more in depth.<br />
<br />
===Fracture FX in Maya 2016 crashes when I turn on parallel rig evaluation"===<br />
When you load fracture in Maya 2016, parallel rig evaluation will be disabled, because fracture is not compatible with it. Do not switch parallel evaluation back on, otherwise it will crash Maya.<br />
[http://static-dc.autodesk.net/content/dam/autodesk/www/Company/files/Parallel_Maya.pdf More info here.]<br />
<br />
[[File:Parallel_eval.png]]<br />
<br />
===Fragments fall through the ground with Bullet ===<br />
<br />
Try increasing the 'Fixed time step (Hz)' value on the solver globals. If the ground is a mesh (rather than the built-in ground plane) make it thicker (use a separate non-rendering object if necessary). Try raising the collision margin for the object on the inputs tab.<br />
<br />
=== Are face materials and color sets supported? ===<br />
<br />
Yes. See [[Shading_and_texturing#Face_materials_and_color_sets|this page]]<br />
<br />
=== Secondary breaking doesn't use the right break settings ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1705<br />
<br />
= Workflow Questions = <br />
<br />
=== How do I animate cracks? ===<br />
The breaking pattern produced by the voronoi/split-plane/crack-image fragment modes cannot be animated. You can only animate a mask applied to that pattern, in the form of an animated texture sequence, animated procedural texture or ramp, or an animated/deforming volume. Set the localize mode to event-driven, and connect a texture or volume. Alternatively, choose Add event -> Animated -> Texture driven, from the menu under the events tab. In any case, you may want to uncheck the active flag on the simulator while keyframing, in order to stop the solver evaluating when you jump around the timeline.<br />
<br />
If you don't need to see partially growing cracks inside an object, a faster alternative to the localize mode is to create an event that breaks the entire object on frame 2, but leaves the fragments passive (activate-on-break = off). Then activate the objects that touch an animated/deforming volume from a second event, e.g. Add event -> Animated -> Activate in volume.<br />
<br />
=== Keyframed objects won't break when they collide ===<br />
Make sure they're both connected to the simulator. (They're connected if they're listed under the inputs tab, and still appear in the viewport when you switch off the display of polygons.) If ''both'' objects are keyframed, also make sure 'passive collide' is enabled in the solver globals, otherwise the simulator will not check for collisions between two passive (non-simulated) objects.<br />
<br />
=== Are events tied to particular objects? ===<br />
No, by design events can break any number of objects, at different times and with different break properties per object. Some events may not break anything, and may only modify the dynamics properties or the custom attributes carried by objects. You can however choose to restrict events to particular objects using the ''object'' filter, or groups of objects using the ''object_set'' filter. Events are meant to be customisable. See [[Events_and_filters|Events and filters]] for more information.<br />
<br />
=== Should I scale units like mass and gravity depending on my Maya units? ===<br />
Units can be whatever you want them to be. The only unit that's fixed is time (seconds). If you decide the numbers you use for distance represent meters, then gravity is meters-per-second-per-second (ms^-2). If you decide your mass is kg, then your impact force becomes newtons, and so on. They're all linked.<br />
<br />
=== How do I vary the secondary break pattern? ===<br />
http://community.fracture-fx.com/viewtopic.php?t=1549&f=13<br />
<br />
=== How do I get custom data to drive a shader? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18989#p18989<br />
<br />
=== How do I get a character to activate fragments? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18782#p18782<br />
<br />
=== How do I locally break a wall then break the rest of it at a later frame? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=19001#p19001<br />
<br />
=== How do I edit fragment keyframes before exporting to Alembic? ===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1701&p=19875#p19875<br />
<br />
===How do I script the creation of attributes, filters, modifiers?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1720<br />
<br />
=== What does the update transform button do? ===<br />
It moves the break node's transform back to match the object's transform, if the object has been moved since it was broken, so the origins match again. The position of things like split planes are recorded relative to the break node so that the same node can be reused to break multiple objects (by setting their "breakWith" attribute). The objects may be nowhere near each other, so there has to be another point of reference, which is the origin of the break node.<br />
<br />
=== How do I stop displacement on fragments before they're activated ===<br />
<br />
On the input tabs, under the custom data section for the object, add a float called "dispScale", and set it to 0.<br />
<br />
[[File:dispScale0.png]]<br />
<br />
In the event that activates the fragments, add an assign modifier setting "dispScale" to 1.<br />
<br />
[[File:dispScale1.png]]<br />
<br />
Now the fragments will have zero displacement until they're activated.</div>Craighttp://wiki.fracture-fx.com/index.php?title=Common_IssuesCommon Issues2017-04-06T17:52:47Z<p>Craig: /* Workflow Questions */</p>
<hr />
<div>= Installation =<br />
<br />
=== Bullet doesn't load ===<br />
If you see the error "initializePlugin function could not be found in plug-in (bullet)", then the bullet plug-in is not installed correctly. It should remain inside the fracture_plugins directory, since it is a plug-in to fracture, not a separate plug-in to Maya. fracture_plugins should be placed alongside the fracture.mll/.bundle/.so. Once it's in the correct directory, bullet can be loaded from under the solver globals in the Edit Simulator window. See [[Installing_the_plug-in|Installing the plug-in]] for more information.<br />
<br />
=== What do I do with the devkit folder? ===<br />
You can ignore the devkit folder, it does not need to be installed to use the plug-in. The devkit is intended for developers at larger studios who wish to connect an in-house solver.<br />
<br />
=== Fracture doesn't load on the Mac ===<br />
If you see this error:<br />
<pre>// Error: line 1: Unable to dynamically load : /Users/Shared/Autodesk/maya/2013/plug-ins/fracture.bundle<br />
does not match the current architecture //</pre><br />
then the file is likely corrupted, and is not being identified as a 64-bit bundle. Reinstall the plug-in from the zip archive you downloaded.<br />
<br />
= Common problems =<br />
<br />
=== There's a large pyramid when I break something ===<br />
The object has to be closed, manifold (edges have no more than 2 adjacent polygons), with outward-facing normals, and no self-intersections. To check, you can try the following. You can display the polygon normals and check their outward facing. You can display border edges and check that there aren't any (meaning the mesh is closed). You can check for non-manifold geometry in the Cleanup window (edges should not have 3+ polygons sharing them, only 2.) There isn't a way to check for self-intersections yet.<br />
<br />
If the problem appears in a secondary break, set the internal offset under the voronoi options of the primary break node to 0. A small internal offset creates gaps between the fragments, but in some cases it can create small self-intersections where the offset takes the vertex through a thin part of the model.<br />
<br />
=== The scene is slow when I rewind or locks up when I connect a large object ===<br />
Increase the 'point separation' before connecting it. This is a world-space sampling distance used to convert all objects to a point-based representation. (Enable 'Draw points' to see the point cloud.)<br />
<br />
=== Baking or caching is extremely slow compared to live sim ===<br />
<br />
Make sure autokey is disabled.<br />
<br />
=== The sim looks wrong after baking to keys, objects are far apart ===<br />
Make sure the scene units are centimeters. Other units are currently not supported.<br />
<br />
=== The simulation suddenly stops ===<br />
Make sure the 'Playback speed' in the Maya preferences is set to 'Play every frame'.<br />
<br />
[[File:Playback_speed.png]]<br />
<br />
=== The fragments disappear after frame 1 ===<br />
This means your events are not configured to break anything. The fragments visible on the start frame are a ''preview'' of what will happen when the object eventually breaks during the sim. It's the unbroken object which is injected into the simulation when you hit play, which is why the fragments look as if they've disappeared. If none of your events are configured to break anything, the entire simulation will consist of only the unbroken objects, no fragments will be produced and the fragmentGroup will remain empty. This is correct and expected behavior.<br />
<br />
=== Crack image mode doesn't work ===<br />
The texture needs to be white lines on a black background to work, NOT black lines on a white background.<br />
<br />
=== The undamaged part of an object using crack image won't stay still ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?p=19509#p19509<br />
<br />
=== The simulation sometimes explodes using the internal solver ===<br />
Set a velocity limit. Use the numeric display (before or after baking to keys) to find a sensible maximum value.<br />
<br />
=== The simulation sometimes explodes immediately with Bullet ===<br />
Change the shape class to btGImpactMeshShape. Sometimes bullet has problems dealing with collision between convex and non-convex objects.<br />
<br />
=== I cannot animate things without the solver running ===<br />
Uncheck active on the simulator globals tab.<br />
<br />
=== Deformable collision objects don't work with Bullet ===<br />
These are only supported by the internal solver.<br />
<br />
=== Animating the transform scale doesn't work ===<br />
Animation for passive objects is only supported on translate and rotate. Mesh deformation is tracked by the internal solver, so you can workaround this by baking the scale into the point positions.<br />
<br />
=== How do I change the animation of a passive object? ===<br />
Disconnect it from the simulator using the button on the inputs tab. Change the animation. Reconnect it.<br />
<br />
=== I can't see the preview geometry, or any extra output from the break node ===<br />
Fracture is currently incompatible with Viewport 2.0 (which is the default in Maya 2015 and up), so all users using 2015 will have to switch the viewport back to legacy mode (renderer → legacy default viewport) to view simulator previews or any extra output from the break node (e.g. the the paths extracted from the crack image texture).<br />
<br />
=== How do I get better collisions in Bullet? ===<br />
* In the object's bullet section, increase the collision margin.<br />
* In the Globals --> Solver --> increase Fixed Time Step.<br />
<br />
=== The particles from the "emit particles on break" event don't work with fluids ===<br />
On the simulator globals tab, right at the bottom, under the meshes layout, there's an 'Update world' option menu. Switch that to 'before'. There's tooltip explaining the functionality more in depth.<br />
<br />
===Fracture FX in Maya 2016 crashes when I turn on parallel rig evaluation"===<br />
When you load fracture in Maya 2016, parallel rig evaluation will be disabled, because fracture is not compatible with it. Do not switch parallel evaluation back on, otherwise it will crash Maya.<br />
[http://static-dc.autodesk.net/content/dam/autodesk/www/Company/files/Parallel_Maya.pdf More info here.]<br />
<br />
[[File:Parallel_eval.png]]<br />
<br />
===Fragments fall through the ground with Bullet ===<br />
<br />
Try increasing the 'Fixed time step (Hz)' value on the solver globals. If the ground is a mesh (rather than the built-in ground plane) make it thicker (use a separate non-rendering object if necessary). Try raising the collision margin for the object on the inputs tab.<br />
<br />
=== Are face materials and color sets supported? ===<br />
<br />
Yes. See [[Shading_and_texturing#Face_materials_and_color_sets|this page]]<br />
<br />
=== Secondary breaking doesn't use the right break settings ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1705<br />
<br />
= Workflow Questions = <br />
<br />
=== How do I animate cracks? ===<br />
The breaking pattern produced by the voronoi/split-plane/crack-image fragment modes cannot be animated. You can only animate a mask applied to that pattern, in the form of an animated texture sequence, animated procedural texture or ramp, or an animated/deforming volume. Set the localize mode to event-driven, and connect a texture or volume. Alternatively, choose Add event -> Animated -> Texture driven, from the menu under the events tab. In any case, you may want to uncheck the active flag on the simulator while keyframing, in order to stop the solver evaluating when you jump around the timeline.<br />
<br />
If you don't need to see partially growing cracks inside an object, a faster alternative to the localize mode is to create an event that breaks the entire object on frame 2, but leaves the fragments passive (activate-on-break = off). Then activate the objects that touch an animated/deforming volume from a second event, e.g. Add event -> Animated -> Activate in volume.<br />
<br />
=== Keyframed objects won't break when they collide ===<br />
Make sure they're both connected to the simulator. (They're connected if they're listed under the inputs tab, and still appear in the viewport when you switch off the display of polygons.) If ''both'' objects are keyframed, also make sure 'passive collide' is enabled in the solver globals, otherwise the simulator will not check for collisions between two passive (non-simulated) objects.<br />
<br />
=== Are events tied to particular objects? ===<br />
No, by design events can break any number of objects, at different times and with different break properties per object. Some events may not break anything, and may only modify the dynamics properties or the custom attributes carried by objects. You can however choose to restrict events to particular objects using the ''object'' filter, or groups of objects using the ''object_set'' filter. Events are meant to be customisable. See [[Events_and_filters|Events and filters]] for more information.<br />
<br />
=== Should I scale units like mass and gravity depending on my Maya units? ===<br />
Units can be whatever you want them to be. The only unit that's fixed is time (seconds). If you decide the numbers you use for distance represent meters, then gravity is meters-per-second-per-second (ms^-2). If you decide your mass is kg, then your impact force becomes newtons, and so on. They're all linked.<br />
<br />
=== How do I vary the secondary break pattern? ===<br />
http://community.fracture-fx.com/viewtopic.php?t=1549&f=13<br />
<br />
=== How do I get custom data to drive a shader? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18989#p18989<br />
<br />
=== How do I get a character to activate fragments? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18782#p18782<br />
<br />
=== How do I locally break a wall then break the rest of it at a later frame? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=19001#p19001<br />
<br />
=== How do I edit fragment keyframes before exporting to Alembic? ===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1701&p=19875#p19875<br />
<br />
===How do I script the creation of attributes, filters, modifiers?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1720<br />
<br />
=== What does the update transform button do? ===<br />
It moves the break node's transform back to match the object's transform, if the object has been moved since it was broken, so the origins match again. The position of things like split planes are recorded relative to the break node so that the same node can be reused to break multiple objects (by setting their "breakWith" attribute). The objects may be nowhere near each other, so there has to be another point of reference, which is the origin of the break node.</div>Craighttp://wiki.fracture-fx.com/index.php?title=Common_IssuesCommon Issues2017-03-05T12:58:43Z<p>Craig: /* There's a large pyramid when I break something */</p>
<hr />
<div>= Installation =<br />
<br />
=== Bullet doesn't load ===<br />
If you see the error "initializePlugin function could not be found in plug-in (bullet)", then the bullet plug-in is not installed correctly. It should remain inside the fracture_plugins directory, since it is a plug-in to fracture, not a separate plug-in to Maya. fracture_plugins should be placed alongside the fracture.mll/.bundle/.so. Once it's in the correct directory, bullet can be loaded from under the solver globals in the Edit Simulator window. See [[Installing_the_plug-in|Installing the plug-in]] for more information.<br />
<br />
=== What do I do with the devkit folder? ===<br />
You can ignore the devkit folder, it does not need to be installed to use the plug-in. The devkit is intended for developers at larger studios who wish to connect an in-house solver.<br />
<br />
=== Fracture doesn't load on the Mac ===<br />
If you see this error:<br />
<pre>// Error: line 1: Unable to dynamically load : /Users/Shared/Autodesk/maya/2013/plug-ins/fracture.bundle<br />
does not match the current architecture //</pre><br />
then the file is likely corrupted, and is not being identified as a 64-bit bundle. Reinstall the plug-in from the zip archive you downloaded.<br />
<br />
= Common problems =<br />
<br />
=== There's a large pyramid when I break something ===<br />
The object has to be closed, manifold (edges have no more than 2 adjacent polygons), with outward-facing normals, and no self-intersections. To check, you can try the following. You can display the polygon normals and check their outward facing. You can display border edges and check that there aren't any (meaning the mesh is closed). You can check for non-manifold geometry in the Cleanup window (edges should not have 3+ polygons sharing them, only 2.) There isn't a way to check for self-intersections yet.<br />
<br />
If the problem appears in a secondary break, set the internal offset under the voronoi options of the primary break node to 0. A small internal offset creates gaps between the fragments, but in some cases it can create small self-intersections where the offset takes the vertex through a thin part of the model.<br />
<br />
=== The scene is slow when I rewind or locks up when I connect a large object ===<br />
Increase the 'point separation' before connecting it. This is a world-space sampling distance used to convert all objects to a point-based representation. (Enable 'Draw points' to see the point cloud.)<br />
<br />
=== Baking or caching is extremely slow compared to live sim ===<br />
<br />
Make sure autokey is disabled.<br />
<br />
=== The sim looks wrong after baking to keys, objects are far apart ===<br />
Make sure the scene units are centimeters. Other units are currently not supported.<br />
<br />
=== The simulation suddenly stops ===<br />
Make sure the 'Playback speed' in the Maya preferences is set to 'Play every frame'.<br />
<br />
[[File:Playback_speed.png]]<br />
<br />
=== The fragments disappear after frame 1 ===<br />
This means your events are not configured to break anything. The fragments visible on the start frame are a ''preview'' of what will happen when the object eventually breaks during the sim. It's the unbroken object which is injected into the simulation when you hit play, which is why the fragments look as if they've disappeared. If none of your events are configured to break anything, the entire simulation will consist of only the unbroken objects, no fragments will be produced and the fragmentGroup will remain empty. This is correct and expected behavior.<br />
<br />
=== Crack image mode doesn't work ===<br />
The texture needs to be white lines on a black background to work, NOT black lines on a white background.<br />
<br />
=== The undamaged part of an object using crack image won't stay still ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?p=19509#p19509<br />
<br />
=== The simulation sometimes explodes using the internal solver ===<br />
Set a velocity limit. Use the numeric display (before or after baking to keys) to find a sensible maximum value.<br />
<br />
=== The simulation sometimes explodes immediately with Bullet ===<br />
Change the shape class to btGImpactMeshShape. Sometimes bullet has problems dealing with collision between convex and non-convex objects.<br />
<br />
=== I cannot animate things without the solver running ===<br />
Uncheck active on the simulator globals tab.<br />
<br />
=== Deformable collision objects don't work with Bullet ===<br />
These are only supported by the internal solver.<br />
<br />
=== Animating the transform scale doesn't work ===<br />
Animation for passive objects is only supported on translate and rotate. Mesh deformation is tracked by the internal solver, so you can workaround this by baking the scale into the point positions.<br />
<br />
=== How do I change the animation of a passive object? ===<br />
Disconnect it from the simulator using the button on the inputs tab. Change the animation. Reconnect it.<br />
<br />
=== I can't see the preview geometry, or any extra output from the break node ===<br />
Fracture is currently incompatible with Viewport 2.0 (which is the default in Maya 2015 and up), so all users using 2015 will have to switch the viewport back to legacy mode (renderer → legacy default viewport) to view simulator previews or any extra output from the break node (e.g. the the paths extracted from the crack image texture).<br />
<br />
=== How do I get better collisions in Bullet? ===<br />
* In the object's bullet section, increase the collision margin.<br />
* In the Globals --> Solver --> increase Fixed Time Step.<br />
<br />
=== The particles from the "emit particles on break" event don't work with fluids ===<br />
On the simulator globals tab, right at the bottom, under the meshes layout, there's an 'Update world' option menu. Switch that to 'before'. There's tooltip explaining the functionality more in depth.<br />
<br />
===Fracture FX in Maya 2016 crashes when I turn on parallel rig evaluation"===<br />
When you load fracture in Maya 2016, parallel rig evaluation will be disabled, because fracture is not compatible with it. Do not switch parallel evaluation back on, otherwise it will crash Maya.<br />
[http://static-dc.autodesk.net/content/dam/autodesk/www/Company/files/Parallel_Maya.pdf More info here.]<br />
<br />
[[File:Parallel_eval.png]]<br />
<br />
===Fragments fall through the ground with Bullet ===<br />
<br />
Try increasing the 'Fixed time step (Hz)' value on the solver globals. If the ground is a mesh (rather than the built-in ground plane) make it thicker (use a separate non-rendering object if necessary). Try raising the collision margin for the object on the inputs tab.<br />
<br />
=== Are face materials and color sets supported? ===<br />
<br />
Yes. See [[Shading_and_texturing#Face_materials_and_color_sets|this page]]<br />
<br />
=== Secondary breaking doesn't use the right break settings ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1705<br />
<br />
= Workflow Questions = <br />
<br />
=== How do I animate cracks? ===<br />
The breaking pattern produced by the voronoi/split-plane/crack-image fragment modes cannot be animated. You can only animate a mask applied to that pattern, in the form of an animated texture sequence, animated procedural texture or ramp, or an animated/deforming volume. Set the localize mode to event-driven, and connect a texture or volume. Alternatively, choose Add event -> Animated -> Texture driven, from the menu under the events tab. In any case, you may want to uncheck the active flag on the simulator while keyframing, in order to stop the solver evaluating when you jump around the timeline.<br />
<br />
If you don't need to see partially growing cracks inside an object, a faster alternative to the localize mode is to create an event that breaks the entire object on frame 2, but leaves the fragments passive (activate-on-break = off). Then activate the objects that touch an animated/deforming volume from a second event, e.g. Add event -> Animated -> Activate in volume.<br />
<br />
=== Keyframed objects won't break when they collide ===<br />
Make sure they're both connected to the simulator. (They're connected if they're listed under the inputs tab, and still appear in the viewport when you switch off the display of polygons.) If ''both'' objects are keyframed, also make sure 'passive collide' is enabled in the solver globals, otherwise the simulator will not check for collisions between two passive (non-simulated) objects.<br />
<br />
=== Are events tied to particular objects? ===<br />
No, by design events can break any number of objects, at different times and with different break properties per object. Some events may not break anything, and may only modify the dynamics properties or the custom attributes carried by objects. You can however choose to restrict events to particular objects using the ''object'' filter, or groups of objects using the ''object_set'' filter. Events are meant to be customisable. See [[Events_and_filters|Events and filters]] for more information.<br />
<br />
=== Should I scale units like mass and gravity depending on my Maya units? ===<br />
Units can be whatever you want them to be. The only unit that's fixed is time (seconds). If you decide the numbers you use for distance represent meters, then gravity is meters-per-second-per-second (ms^-2). If you decide your mass is kg, then your impact force becomes newtons, and so on. They're all linked.<br />
<br />
=== How do I vary the secondary break pattern? ===<br />
http://community.fracture-fx.com/viewtopic.php?t=1549&f=13<br />
<br />
=== How do I get custom data to drive a shader? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18989#p18989<br />
<br />
=== How do I get a character to activate fragments? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18782#p18782<br />
<br />
=== How do I locally break a wall then break the rest of it at a later frame? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=19001#p19001<br />
<br />
=== How do I edit fragment keyframes before exporting to Alembic? ===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1701&p=19875#p19875<br />
<br />
===How do I script the creation of attributes, filters, modifiers?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1720</div>Craighttp://wiki.fracture-fx.com/index.php?title=Release_notesRelease notes2017-02-28T22:03:16Z<p>Craig: </p>
<hr />
<div>== 1.9.11 ==<br />
* Warn about input objects with no shaders<br />
<br />
== 1.9.10 ==<br />
* Fixed chance filter above modifier not resetting and giving different results on rewind<br />
<br />
== 1.9.9 ==<br />
* Fixed input objects no longer connected to simulator after reference reload<br />
<br />
== 1.9.7 ==<br />
* Preset buttons for shading/texturing parameters<br />
* Choose UV set for interior faces polyAutoProj<br />
* Separate checkbox to remove groupParts nodes<br />
* Remove polyPlanarProj and polyTweakUV as well as polyAutoProj<br />
* Option to disconnect shaders from broken input object preview mesh<br />
<br />
== 1.9.6 ==<br />
* Apply pre/post-break transform to particles as well as mesh<br />
<br />
== 1.9.5 ==<br />
* Shading/texturing removes broken groupParts nodes when removing polyAutoProj<br />
* Pre-break and post-break transform for user scripts<br />
<br />
== 1.9.4 ==<br />
*Release for Maya 2017 (mac and windows only)<br />
<br />
== 1.9.3 ==<br />
*Dive post-sim displacement with float"dispScale" fragment attribute, so user can specify which fragments should be displaced using modifiers (eg only active fragments get displacement)<br />
<br />
== 1.9.2 ==<br />
* Fixed shaders sometimes reappearing on different polygons after scene open.<br />
WARNING: You need to re-run propagate shaders if upgrading to this version<br />
* Auto keyframe is now disabled before baking, to avoid slowdown<br />
<br />
== 1.9.1 ==<br />
* Fixed crash if volume localized produces zero polygons for inside-volume region<br />
* Fixed splinter pattern disappearing when rotated<br />
<br />
== 1.9.0 ==<br />
* Show event colors in the list of events. (Mantis 220,223)<br />
* Reorder events list<br />
<br />
== 1.8.23 ==<br />
* Fixed takes not displaying on scene open if the scene was saved on or before the start frame<br />
<br />
== 1.8.22 ==<br />
* Fixed visibility keyed off before the start frame for input objects when baking to keys<br />
* Fixed hypergraph close failing when lsUI sometimes returns a non-existent window<br />
<br />
== 1.8.21 ==<br />
* Replace-with-keys no longer loses shader attachments<br />
* Close hypergraph windows before replace-with-keys or shading/texturing runs, to avoid slowdown<br />
<br />
== 1.8.20 ==<br />
* Fixed fragment shader assignment failing with multiple simulators<br />
<br />
== 1.8.19 ==<br />
* Fixed secondary UV sets not created on fragments<br />
* Indicate which event templates are breaking/non-breaking<br />
<br />
== 1.8.18 ==<br />
* Check eno1 on Linux<br />
<br />
== 1.8.17 ==<br />
* Fixed cache files larger than 2Gb failing on Windows. Maya 2015+ only, due to a separate bug in Visual C++ 10.0 which is required for Maya 2014.<br />
* Check eth1/eth2 on Linux<br />
<br />
== 1.8.16 ==<br />
* Maya 2016 compatibility<br />
<br />
== 1.8.15 ==<br />
* Added voronoi seed/numPoint override attrs to modifier data menu<br />
<br />
== 1.8.14 ==<br />
* Fixed load failing in 2013 due to treeView -ams flag<br />
<br />
== 1.8.13 ==<br />
* Option to draw solid shaded simulator preview when viewport is in wireframe mode<br />
* Fixed clusters generating incorrect warning about bullet shapeClass change during sim<br />
* HUD display bodyId of selected fragment<br />
<br />
== 1.8.12 ==<br />
* Fixed shells that did not intersect a split-plane from behaving as one combined shell.<br />
<br />
== 1.8.11 ==<br />
* Delete rigid bodies in the same order each time. Workaround for Bullet sim variation.<br />
* Fixed rare sim variation over multiple takes with internal solver.<br />
<br />
== 1.8.10 ==<br />
* Support AbcExport -eulerFilter. (2014 and up)<br />
<br />
== 1.8.9 ==<br />
* Fixed combined shells not kept together for split-plane mode<br />
<br />
== 1.8.8 ==<br />
* Option to keep combined shells together during breaking<br />
* Fixed inside/outside custom data invalid for mesh shells that don't intersect the localized cutting volume. Mantis 247<br />
<br />
== 1.8.7 ==<br />
* Fixed transform above input object sometimes not updating when scrubbing timeline after baking to keys<br />
* Fixed error about inability to retrieve mesh if an object is added after the start frame and before the bullet sim world is created<br />
<br />
== 1.8.6 ==<br />
* Added HUD to display info about selected fragment<br />
* Fixed long cache filename limiting the movement of the left/right divider on the takes tab<br />
<br />
== 1.8.5 ==<br />
* Fixed displacement broken not applied if takes were deleted<br />
<br />
== 1.8.4 ==<br />
* Constrain displacement direction at cutting edges to be the same for all fragment vertices at the same position. (Requires rebake to work.)<br />
* Option to move selection up the object tree a level<br />
<br />
== 1.8.3 ==<br />
* Allow undo of object tree edit operations<br />
* Object tree can mirror scene DAG and reveal selection<br />
<br />
== 1.8.2 ==<br />
* Input object list is now a treeView, for collapsable groups<br />
<br />
== 1.8.1 ==<br />
* Fixed shading normals not recomputed after interior face displacement<br />
<br />
== 1.8.0 ==<br />
* Post-sim displacement on interior faces<br />
* Random number seed for particle emitter<br />
<br />
== 1.7.5 ==<br />
* Check WiFi adapters on Windows<br />
<br />
== 1.7.4 ==<br />
* Option to break all shader connections from fragments. Workaround for Maya sometimes failing with "Unable to update render layer adjustment"<br />
* Shading/texturing prints progress and is interruptable<br />
<br />
== 1.7.3 ==<br />
* Workaround 3D paint tool sometimes not producing a unique name per texture<br />
* Workaround for fluid not emitting from particles, unless the particles are cached. Set update world to before on globals. (Mantis 244)<br />
* Fixed geometry disappearing in Mac builds<br />
<br />
== 1.7.2 ==<br />
* Fix scripted rotation change on a passive fragment sometimes causing a jump in position<br />
<br />
== 1.7.1 ==<br />
* Draw wireframe checkbox for simulator preview<br />
* Numeric display of object size<br />
<br />
== 1.7.0 ==<br />
* Splinter fragment type<br />
<br />
== 1.6.1 ==<br />
* Allow shading/texturing to work on imported alembic archives. (Requires re-export of the alembic.)<br />
* Fixed paint tool not displaying map using correct UV set<br />
<br />
= 1.6.0 =<br />
* Option to propagate shaders to fragments, autoUV interior faces, or create selection sets. (New scenes only.)<br />
* Replaced blind data with intArray to identify interior faces. (New scenes only.)<br />
* Fixed convert selection to interior faces not working with split-plane mode<br />
* Fixed numeric overflow in point sample count leading to memory explosion, caused by the combination of a large scene scale with a small point separation.<br />
* Fixed cache file exists test failing on Windows. Mantis 218<br />
* Changed simulator defaults (gravity, point sep, solver)<br />
* Fixed listParams error sometimes occurring after playback is stopped, for non-unique object names. Mantis 196<br />
<br />
= 1.5.3 =<br />
* Allow localize event-driven mode to work with replace-with-keys in fragments-only mode<br />
<br />
=1.5.2=<br />
* Workaround paint tool sometimes failing when used on models with multiple UV sets<br />
<br />
= 1.5.1 =<br />
* Fixed crash when simulating without any objects connected to the simulator.<br />
<br />
= 1.5.0 = <br />
* Simulator GL preview now displays polygons by default rather than a triangle mesh<br />
* Fixed randomize color on break node sometimes failing<br />
* Fixed simulator window not closing when creating a new scene<br />
* Point sampling produces fewer points, and reduces further if too many would be introduced for large objects<br />
* Added button to data filter to grab data value from selected fragment, e.g. for cluster colors<br />
* Fixed assign modifier text field failing to focus on Mac when clicking on it<br />
* Force paint tool stamp profile to solid by default<br />
* Option to override voronoi pointSeed per object using the same break node. Set integer data fxBreak_pointSeed<br />
<br />
= 1.4.16 =<br />
* Link randomize colors flag to displayColors on the mesh shape, and hide the toggle color display button for new scenes<br />
<br />
= 1.4.15 = <br />
* Fixed cluster fragments jumping back when the cluster separates if the cluster was passive and activated later in the sim<br />
<br />
= 1.4.14 = <br />
* Remove inheritSurfaceTex option. It's now set automatically if a texture modifier is used in the event. Mantis 73<br />
* New file nodes created for painting now have filtering disabled by default<br />
* Reorganize crack-image UI, and disable image threshold by default. Mantis 112<br />
* Link enable flag for chained break node under cluster settings to the cluster preview mesh visibility<br />
* Fixed cluster volumes not working if input model was scaled prior to breaking. Mantis 127<br />
* Connect selected meshes as cluster volumes<br />
* Fixed cache write path tokens not expanded before the test as to whether or not the file exists. Mantis 131</div>Craighttp://wiki.fracture-fx.com/index.php?title=Common_IssuesCommon Issues2017-01-23T23:36:29Z<p>Craig: /* Workflow Questions */</p>
<hr />
<div>= Installation =<br />
<br />
=== Bullet doesn't load ===<br />
If you see the error "initializePlugin function could not be found in plug-in (bullet)", then the bullet plug-in is not installed correctly. It should remain inside the fracture_plugins directory, since it is a plug-in to fracture, not a separate plug-in to Maya. fracture_plugins should be placed alongside the fracture.mll/.bundle/.so. Once it's in the correct directory, bullet can be loaded from under the solver globals in the Edit Simulator window. See [[Installing_the_plug-in|Installing the plug-in]] for more information.<br />
<br />
=== What do I do with the devkit folder? ===<br />
You can ignore the devkit folder, it does not need to be installed to use the plug-in. The devkit is intended for developers at larger studios who wish to connect an in-house solver.<br />
<br />
=== Fracture doesn't load on the Mac ===<br />
If you see this error:<br />
<pre>// Error: line 1: Unable to dynamically load : /Users/Shared/Autodesk/maya/2013/plug-ins/fracture.bundle<br />
does not match the current architecture //</pre><br />
then the file is likely corrupted, and is not being identified as a 64-bit bundle. Reinstall the plug-in from the zip archive you downloaded.<br />
<br />
= Common problems =<br />
<br />
=== There's a large pyramid when I break something ===<br />
The object has to be closed, manifold (edges have no more than 2 adjacent polygons), with outward-facing normals, and no self-intersections. To check, you can try the following. You can display the polygon normals and check their outward facing. You can display border edges and check that there aren't any (meaning the mesh is closed). You can check for non-manifold geometry in the Cleanup window (edges should not have 3+ polygons sharing them, only 2.) There isn't a way to check for self-intersections yet.<br />
<br />
=== The scene is slow when I rewind or locks up when I connect a large object ===<br />
Increase the 'point separation' before connecting it. This is a world-space sampling distance used to convert all objects to a point-based representation. (Enable 'Draw points' to see the point cloud.)<br />
<br />
=== Baking or caching is extremely slow compared to live sim ===<br />
<br />
Make sure autokey is disabled.<br />
<br />
=== The sim looks wrong after baking to keys, objects are far apart ===<br />
Make sure the scene units are centimeters. Other units are currently not supported.<br />
<br />
=== The simulation suddenly stops ===<br />
Make sure the 'Playback speed' in the Maya preferences is set to 'Play every frame'.<br />
<br />
[[File:Playback_speed.png]]<br />
<br />
=== The fragments disappear after frame 1 ===<br />
This means your events are not configured to break anything. The fragments visible on the start frame are a ''preview'' of what will happen when the object eventually breaks during the sim. It's the unbroken object which is injected into the simulation when you hit play, which is why the fragments look as if they've disappeared. If none of your events are configured to break anything, the entire simulation will consist of only the unbroken objects, no fragments will be produced and the fragmentGroup will remain empty. This is correct and expected behavior.<br />
<br />
=== Crack image mode doesn't work ===<br />
The texture needs to be white lines on a black background to work, NOT black lines on a white background.<br />
<br />
=== The undamaged part of an object using crack image won't stay still ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?p=19509#p19509<br />
<br />
=== The simulation sometimes explodes using the internal solver ===<br />
Set a velocity limit. Use the numeric display (before or after baking to keys) to find a sensible maximum value.<br />
<br />
=== The simulation sometimes explodes immediately with Bullet ===<br />
Change the shape class to btGImpactMeshShape. Sometimes bullet has problems dealing with collision between convex and non-convex objects.<br />
<br />
=== I cannot animate things without the solver running ===<br />
Uncheck active on the simulator globals tab.<br />
<br />
=== Deformable collision objects don't work with Bullet ===<br />
These are only supported by the internal solver.<br />
<br />
=== Animating the transform scale doesn't work ===<br />
Animation for passive objects is only supported on translate and rotate. Mesh deformation is tracked by the internal solver, so you can workaround this by baking the scale into the point positions.<br />
<br />
=== How do I change the animation of a passive object? ===<br />
Disconnect it from the simulator using the button on the inputs tab. Change the animation. Reconnect it.<br />
<br />
=== I can't see the preview geometry, or any extra output from the break node ===<br />
Fracture is currently incompatible with Viewport 2.0 (which is the default in Maya 2015 and up), so all users using 2015 will have to switch the viewport back to legacy mode (renderer → legacy default viewport) to view simulator previews or any extra output from the break node (e.g. the the paths extracted from the crack image texture).<br />
<br />
=== How do I get better collisions in Bullet? ===<br />
* In the object's bullet section, increase the collision margin.<br />
* In the Globals --> Solver --> increase Fixed Time Step.<br />
<br />
=== The particles from the "emit particles on break" event don't work with fluids ===<br />
On the simulator globals tab, right at the bottom, under the meshes layout, there's an 'Update world' option menu. Switch that to 'before'. There's tooltip explaining the functionality more in depth.<br />
<br />
===Fracture FX in Maya 2016 crashes when I turn on parallel rig evaluation"===<br />
When you load fracture in Maya 2016, parallel rig evaluation will be disabled, because fracture is not compatible with it. Do not switch parallel evaluation back on, otherwise it will crash Maya.<br />
[http://static-dc.autodesk.net/content/dam/autodesk/www/Company/files/Parallel_Maya.pdf More info here.]<br />
<br />
[[File:Parallel_eval.png]]<br />
<br />
===Fragments fall through the ground with Bullet ===<br />
<br />
Try increasing the 'Fixed time step (Hz)' value on the solver globals. If the ground is a mesh (rather than the built-in ground plane) make it thicker (use a separate non-rendering object if necessary). Try raising the collision margin for the object on the inputs tab.<br />
<br />
=== Are face materials and color sets supported? ===<br />
<br />
Yes. See [[Shading_and_texturing#Face_materials_and_color_sets|this page]]<br />
<br />
=== Secondary breaking doesn't use the right break settings ===<br />
<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1705<br />
<br />
= Workflow Questions = <br />
<br />
=== How do I animate cracks? ===<br />
The breaking pattern produced by the voronoi/split-plane/crack-image fragment modes cannot be animated. You can only animate a mask applied to that pattern, in the form of an animated texture sequence, animated procedural texture or ramp, or an animated/deforming volume. Set the localize mode to event-driven, and connect a texture or volume. Alternatively, choose Add event -> Animated -> Texture driven, from the menu under the events tab. In any case, you may want to uncheck the active flag on the simulator while keyframing, in order to stop the solver evaluating when you jump around the timeline.<br />
<br />
If you don't need to see partially growing cracks inside an object, a faster alternative to the localize mode is to create an event that breaks the entire object on frame 2, but leaves the fragments passive (activate-on-break = off). Then activate the objects that touch an animated/deforming volume from a second event, e.g. Add event -> Animated -> Activate in volume.<br />
<br />
=== Keyframed objects won't break when they collide ===<br />
Make sure they're both connected to the simulator. (They're connected if they're listed under the inputs tab, and still appear in the viewport when you switch off the display of polygons.) If ''both'' objects are keyframed, also make sure 'passive collide' is enabled in the solver globals, otherwise the simulator will not check for collisions between two passive (non-simulated) objects.<br />
<br />
=== Are events tied to particular objects? ===<br />
No, by design events can break any number of objects, at different times and with different break properties per object. Some events may not break anything, and may only modify the dynamics properties or the custom attributes carried by objects. You can however choose to restrict events to particular objects using the ''object'' filter, or groups of objects using the ''object_set'' filter. Events are meant to be customisable. See [[Events_and_filters|Events and filters]] for more information.<br />
<br />
=== Should I scale units like mass and gravity depending on my Maya units? ===<br />
Units can be whatever you want them to be. The only unit that's fixed is time (seconds). If you decide the numbers you use for distance represent meters, then gravity is meters-per-second-per-second (ms^-2). If you decide your mass is kg, then your impact force becomes newtons, and so on. They're all linked.<br />
<br />
=== How do I vary the secondary break pattern? ===<br />
http://community.fracture-fx.com/viewtopic.php?t=1549&f=13<br />
<br />
=== How do I get custom data to drive a shader? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18989#p18989<br />
<br />
=== How do I get a character to activate fragments? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=18782#p18782<br />
<br />
=== How do I locally break a wall then break the rest of it at a later frame? ===<br />
http://community.fracture-fx.com/viewtopic.php?p=19001#p19001<br />
<br />
=== How do I edit fragment keyframes before exporting to Alembic? ===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1701&p=19875#p19875<br />
<br />
===How do I script the creation of attributes, filters, modifiers?===<br />
http://community.fracture-fx.com/viewtopic.php?f=13&t=1720</div>Craig