リアルなピザを作成し、ユーザーがそれを操作できるようにします。
私が欲しいもの:
私が作成したもの:
Blenderでピザのモデル(8個)を作成し、Unityにインポートしました。ピザのピースは非常に人工的に見えますが、その主な理由は「堅い三角形」です。
ユーザーがピースを動かしたときにチーズを伸ばしたり壊したりするにはどうすればよいですか?
リアルなピザを作成し、ユーザーがそれを操作できるようにします。
私が欲しいもの:
私が作成したもの:
Blenderでピザのモデル(8個)を作成し、Unityにインポートしました。ピザのピースは非常に人工的に見えますが、その主な理由は「堅い三角形」です。
ユーザーがピースを動かしたときにチーズを伸ばしたり壊したりするにはどうすればよいですか?
回答:
隣接するスライスを互いに接続するクワッドを追加します。これに、穴のあるすてきな溶けたチーズの質感を与えます。スライスが遠ざかると、クワッドが自然に引き伸ばされ、テクスチャが引き伸ばされてゆがみます。
これは合理的に見えるはずですが、休憩はありません。ここでやるべきことは、そのテクスチャをアニメーション化することです。時間の代わりに、四角形の領域(またはスライス間の距離)に基づいてアニメーションを反復処理します。さらに引き離されると、アニメーションが進行するため、より多くの穴が表示されます。
最終的に距離のしきい値に達したら、クワッドを2つに分割し、2つのクワッドをアタッチされたスライスの方向にプログラムで縮小して少し縮小し、スナップを示すアニメーションを再生し続けます。最後にアニメーションをフリーズします。
もう少しダイナミクスについては、物理エンジンのジョイントを使用して2つのスライスにクワッドをアタッチできます。
ソフトボディ物理エンジンを使用するか、それを記述します。スライス間の布部分を定義し、チーズでテクスチャリングします。物理エンジンがマテリアルのストレッチとスナップのダイナミクスをモデル化できるようにします。
これははるかに集中的ですが、より一般的に適用可能な方法です。また、非常に制御しにくいかもしれませんが、全体的に説得力のある効果になる可能性があります。
プリセットアニメーションの使用:
そのため、Maya / Blenderのような3Dモデリングソフトウェアでプリセットアニメーションを作成します。これには、ピザの引き裂きをシミュレートするのに適したソフトボディや布などの機能があります。ピザテクスチャとモデルアニメーションの両方をUnityにエクスポートします(おそらく.objモデルのセットまたはそのようなものとして)。
モデルアニメーションは、多数の三角形を使用してチーズが引き伸ばされて引き裂かれていることを表します。三角形は、トライメッシュのセットとしてUnityにロードできます。それらは多くのメッシュ状態のコレクションであり、それぞれが異なるストレッチ位置でのチーズピザを表します。ユーザーがピザのスライスを配置する場所に基づいて、その「メッシュ状態」にジャンプし、それらの三角形を表示します。
もちろん、いくつかの問題があります。ユーザーの操作は少し制限されています。チーズがすでに少し引き裂かれている場合、そのチーズの領域について「元の状態」に戻ることはできません。プリセットアニメーションがスライス1を削除してから2を削除すると、ユーザーはスライスをこの順序で強制的に削除します。エクスポートされるデータのサイズは、メッシュの粒度とティアリングアニメーションの持続時間に基づいて、かなり大きくなる可能性があります。
しかし、モデルアーティストがプリセットアニメーションを作成する際に良い仕事をすれば、非常にリアルに見えます。また、ソフトボディシミュレータを実装する必要はありません。
Unityの使用:
ただし、Unityが独自のスキンクロスコンポーネントとインタラクティブクロスコンポーネントを実装することに興味がある場合に備えてください。インタラクティブクロスは引き裂きをサポートします。しかし、それらのサポートはごく少数のプラットフォームに制限されています、最後にチェックしました。
あなたを使用して:
最終的には、いつでも独自のソフトボディシミュレータを実装できます。これは非常に人気のある研究論文のサンプルです。とても楽しいです:)。がんばろう。
@originalDaemonの答えは良いです!可能性のある中間的な方法があると思います最初のアプローチよりも良い結果得があり、合理的な労力を要する(「ハードウェイ」アプローチとは異なります)。
私が提案しているのは、あまりにも実際にチーズの「ウェブ」をモデル化したもので、私にとってはstal乳石によく似ています。伸縮性のあるチーズを数個作ります。おいしさの三角形の端にそれらをランダムに配置し、それらを0にスケーリングします。y-axis
三角形がその仲間から削除されたら、y軸でゆっくりとスケーリングして必要なサイズに戻します。
代わりに別の軸を選択する必要がある場合があります y
三角形を少し引き離す場合、。いずれにせよ、平らなテクスチャははるかに簡単で費用対効果が高いと思いますが、チーズをモデル化すると、テクスチャも機能するかもしれませんが、クローズアップにより現実的になる可能性があります。テクスチャを選択する場合は、複数のレイヤーを使用してよりリアルな感触を得ることができます。また、ショットのピザの辛さを強調するために、少しスチームを追加することを忘れないでください。
もう一つ気づいたのは、ペパロニはただのテクスチャーであるように見えることです。私はそれをモデル化するか、既存のモデルにその領域の詳細を追加することを明確に検討します。伸縮性のあるチーズと一緒に滑り込ませて、さらにリアルに仕上げることができます。