GPUを使用したメッシュ ブーリアン、破砕エンジン「 PRISM」を含む「tyFlow」v1.100がリリースされました。
以前使用していたオープンソースのCarveエンジンを置き換えて、既存のブーリアンの仕様的な制限をなくすために新規に開発したようです。ビデオのひび割れの形状がいい感じですね。
https://docs.tyflow.com/faq/prism/
PRISMとは?
PRISM(Polygon Refinment via InterSecting Meshes)は、tyFlowのために特別に作られた、メッシュのブーリアン演算とフラクチャリングエンジンです。メッシュに対して通常のブーリアン演算を行うだけでなく、メッシュの破砕や破壊に特化したより高度な演算を行うこともできます。PRISMは、tyBooleanモディファイア内のtyFlowの既存のブーリアンエンジンを完全に置き換えるものとして実装されています(以前はオープンソースのCarveエンジンが使用されていました)。また、PRISMはtyFlowの新しいMultifractureワークフロー(新しいtyMultifractureモディファイアとMultifractureパーティクル演算子で利用可能)を動かすエンジンでもあります。
tyFlowの以前のCarveエンジンのtyBooleanとtyCarveモディファイアへの実装も、これらの制限の例外ではありませんでした。さらに、tyFlowのレガシーな破砕演算子(Voronoi Fracture、Edge Fractureなど)は、完全に平らなスライス平面を使用してメッシュをスライスすることしかできません。つまり、ユーザーが破砕ジオメトリにディテールを追加したい場合、複雑で非効率的な回避策を講じなければなりません。したがって、課題は明確でした。tyFlowがVFXアーティストとそのワークフローにとって適切なツールであり続けるためには、これらの問題をすべて解決するソリューションを見つけなければなりません。
学術的なCSG研究に精通している人なら、これらの問題を軽減することを目的とした最近の開発について知っているかもしれない。QuickCSG、Interactive and Robust Mesh Booleans、EMBER、Mesh Arrangements for Solid Geometryなどの論文はすべて、任意のメッシュ上でCSG操作を行う際に遭遇する可能性のあるさまざまな問題に対する独自の解決策と、最適化の可能性を提示しています。しかし、それぞれ独自の制限や制約があり、最終的にtyFlowへの直接実装には不向きでした。伝統的なブーリアン演算(マージ、インターセクト、サブトラクト、ユニオンなど)も、tyFlowが(レガシーなフラクチャー演算子によって)よく使用されるフラクチャー中心のワークフローには特に適していません。したがって、PRISMを新しい独立したブーリアン/CSGエンジンとして開発することは、これらの問題を克服するために必要なことでした。
Info
PRISM が tyBoolean 修飾子、tyMultifracture 修飾子、Multifracture 粒子演算子の性能と機能の完全なアップグレードを提供するため、以下のレガシーモジュールは廃止されました: tyCarve 修飾子(Multifracture に置き換わりました: 「Bounds Fracture operator (Multifracture: "bounds fracture "モードに置き換え)、Edge Fracture (Multifracture: "edge fracture "モードに置き換え)、Voronoi Fracture (Multifracture: "voronoi fracture "モードに置き換え)。レガシーモジュールはtyFlowから削除されていませんが(後方互換性を確保するため)、ユーザーはPRISMベースの代替モジュールに頼ってください。
他のソリューションやソフトウェアパッケージと比較して、PRISMの利点は何ですか?
- PRISMはすべてのメッシュ演算にCUDA GPUアクセラレーションを利用しています。このため、十分に強力なGPUと組み合わせれば、他のソリューションに比べて圧倒的なスピードアドバンテージを得ることができます。
- PRISMは完全にマルチスレッド化されており、XPUアーキテクチャを採用しています。つまり、CPUバウンド機能はシステムコアの使用率を最大化し、互換性のあるGPUが見つからない場合は、すべての処理をCPU上で効率的に実行することができます。また、粒子の断片化のように多数の処理が同時に実行される場合、作業が効率的に分散されるように動的な負荷分散を利用します。
- PRISMは、すべてのブーリアン/フラクチャ演算において、自己交差するメッシュや、一致/重複する三角形を扱うことができます。これらのタイプのメッシュ縮退は、代替のCSGソリューションによって生成される出力に一般的に影響を与えますが、PRISMはそれらを潔く扱うことができます。
- PRISMのサーフェス/ボリュームスライスオペレータ(他のCSGエンジンでは通常使用できませんが、Houdiniのブール破砕ノードを使用したことがある人にはおなじみです)は、tyFlowユーザーに、もはや平坦な切断面を持つメッシュのスライスに限定されない、メッシュを破砕するためのまったく新しいアプローチを提供します。
- PRISMはtyFlowのtyBooleanモディファイア、tyMultifractureモディファイア、Multifractureパーティクルオペレータにシームレスに統合されているため、既存のブーリアン/フラクチャ/破壊ワークフローに驚くほど簡単に統合できます。
PRISM はどのように使用するのですか?
- tyFlow 1.100の時点で、PRISMはtyBooleanとtyMultifractureモディファイア、およびMultifractureパーティクル演算子のデフォルトのブーリアン/CSG/フラクチャエンジンとして統合されています。tyFlowに含まれているので、別のモジュールやDLLとしてインストールする必要はありません。
PRISMを使用するにはtyFlow PROライセンスが必要ですか?
- PRISMはtyFlow FREEを含むすべてのユーザーが使用できます。唯一の注意点は、tyFlow FREEでPRISMを使用する場合、マルチスレッドやGPUアクセラレーションを利用できないことです。しかしFREEユーザーは、PRISMが統合されている様々なモディファイア/オペレーターで、PRISMのすべての機能にアクセスできます。