FAQ: PRISM


•  What is PRISM?

PRISM (Polygon Refinment via InterSecting Meshes) is a novel mesh boolean and fracturing engine, created specifically for tyFlow. It can be used to perform regular boolean operations on meshes, as well as more advanced operations specifically tailored towards mesh fracturing and destruction. PRISM is implemented as a complete replacement for tyFlow’s existing boolean engine within the tyBoolean modifier (previously the open-source Carve engine was used). PRISM is also the engine which now powers tyFlow’s new Multifracture workflow (available in the new tyMultifracture modifier and Multifracture particle operator).

The driving force behind PRISM’s inception was simple: existing publicly-available mesh boolean and/or constructive solid geometry (CSG) engines (both open and closed source), are either riddled with bugs, are frustratingly slow, can only take very limited inputs, or often produce very degenerate results. tyFlow’s previous implementation of the Carve engine into the tyBoolean and tyCarve modifiers was no exception to these limitations. Furthermore, tyFlow’s legacy fracture operators (Voronoi Fracture, Edge Fracture, etc) are only capable of slicing meshes using perfectly flat slice planes. This means that if users want to add more detail to their fractured geometry, they must undertake complicated and inefficient workarounds to do so. Therefore, the challenge was clear: a solution must be found to solve all of these problems, if tyFlow is going to remain a relevant tool for VFX artists and their workflows.

Those familiar with academic CSG research may be aware of recent developments which aim to alleviate these problems. Papers like QuickCSG, Interactive and Robust Mesh Booleans, EMBER, Mesh Arrangements for Solid Geometry, etc, all present unique solutions to the various problems that may be encountered when performing CSG operations on arbitrary meshes, as well as potential optimizations. However, they each have their own limitations and restrictions which ultimately made them unsuitable for direct implementation into tyFlow. Traditional boolean operations (merge, intersect, subtract, union, etc), are also not particularly amenable to a fracture-centric workflow, which is what tyFlow is often used for (by way of its legacy fracture operators). Thus, development of PRISM as a new, independent boolean/CSG engine became a necessity in order to overcome all of these issues.

Due to PRISM providing a full upgrade of performance and functionality in the tyBoolean modifier, tyMultifracture modifier and Multifracture particle operator, the following legacy modules are now obsolete: tyCarve modifier (replaced with Multifracture: “paint fracture” mode), Bounds Fracture operator (replaced with Multifracture: “bounds fracture” mode), Edge Fracture (replaced with Multifracture: “edge fracture” mode) and Voronoi Fracture (replaced with Multifracture: “voronoi fracture” mode). The legacy modules have not been removed from tyFlow (to ensure backwards compatibility), but users should rely on the PRISM-based alternative modules moving forward.

•  What are PRISM’s advantages over other solutions or software packages?

  • PRISM utilizes CUDA GPU-acceleration for all of its mesh operations. This gives it a huge speed advantage over alternative solutions, when paired with a sufficiently powerful GPU.

  • PRISM is fully multi-threaded and features XPU architecture, meaning that its CPU-bound functions will maximize system core usage, and all of its operations can run efficiently on the CPU if a compatible GPU is not found. It also utilizes dynamic load balancing to ensure work is spread out efficiently when a large number of operations are performed simultaneously, like in the case of particle fragmentation.

  • PRISM can handle self-intersecting meshes and coincident/overlapping triangles for all boolean/fracture operations. Those types of mesh degeneracies commonly wreck the outputs generated by alternative CSG solutions, but PRISM can handle them gracefully.

  • PRISM’s surface/volume slice operators (not typically available in other CSG engines, but familiar to those who have used Houdini’s Boolean Fracture node) offer tyFlow users a brand new approach to fracturing meshes that is no longer limited to slicing meshes with flat cutting planes.

  • PRISM’s seamless integration into tyFlow’s tyBoolean modifier, tyMultifracture modifier and Multifracture particle operator make it incredibly easy to integrate into existing boolean/fracture/destruction workflows.

•  How do I use PRISM?

As of tyFlow 1.100, PRISM is integrated as the default boolean/CSG/fracture engine within the tyBoolean and tyMultifracture modifiers, as well as within the Multifracture particle operator. It is included in tyFlow and does not need to be installed as a separate module or DLL.

•  Do I need a tyFlow PRO license to use PRISM?

PRISM is available to all users, including those using tyFlow FREE. The only caveat is that when using PRISM within tyFlow FREE, you will not have access to its multithreading or GPU acceleration - so it will run considerably slower than it would in a fully licensed version of tyFlow. But FREE users will have access to all of its features in the various modifiers/operators where it is integrated.

•  Can I use PRISM outside of tyFlow or 3ds Max?

Currently PRISM is only available as part of tyFlow, within 3ds Max.

•  Is tyFlow’s PRISM engine associated with Prism Pipeline?

No, PRISM is not associated with Prism Pipeline. Prism Pipeline is an independent piece of software developed by Prism Software GmbH, which automates and simplifies the workflow of animation and VFX projects. You can find more information about Prism Pipeline here.