キャラクターのボーン移動と頂点変形による最新のポリゴン位置を毎フレーム追従させてパーティクルを放出する手順です。
\n\n具体的な解決方法
\n- \n
- 対象となる Particle System の Shape モジュールを展開します。 \n
- Shape タイプに **`Skinned Mesh Renderer`** を選択します。 \n
- **`Update Details`** を **`ON`** にチェックします。➔ **最も重要** \n
キャラクターの体や剣の振り(ボーンアニメーション)に合わせて「Skinメッシュの表面」から火の粉や煙(Particle System)を放出する設定を行ったが、ゲーム中にキャラクターが走ったりアニメーションしても、パーティクルが原点の初期ポーズ(Tポーズなど)の位置から取り残されて虚空に放出される。
Particle Systemの「Shape」モジュールで「Skinned Mesh Renderer」を指定しているものの、アニメーション変形後の最新の頂点座標を毎フレームCPUで再計算して吸着する設定(Meshの更新オプション)がOFFになっているためです。
Particle SystemのShapeモジュールで、対象のSkinned Mesh Rendererを登録し、「Single Mesh」を選択します。さらに、その下にある「Update Details」を有効化、またはメッシュ自体のBones/Vertex変形に同期するように設定します。
キャラクターのボーン移動と頂点変形による最新のポリゴン位置を毎フレーム追従させてパーティクルを放出する手順です。
\n\nA. はい、毎フレームCPU側でスキン頂点を再計算するため、キャラクターのポリゴン数やエフェクト数が多い場合は顕著なCPU負荷になります。