9
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

破壊系のAssetを試す (Shatter Toolkit)

Last updated at Posted at 2015-11-17

今回はこやつ。

インポートしたところ

Unity5対応と書いていないので不安があるかもしれないですがUnity5でも普通に動きます。

デモの感じ

好きな位置でスライスできます 割れたところのUVも指定できます
こちらは同じマテリアルでUV位置を指定するタイプ
また事前に割るタイプではないので意図した形に分割できる。
explode10.gifexplode11.gif

ぶつかったら壊れる系をつくってみる

前に作成したボールを
スクリーンショット 2015-11-17 13.34.52.png

UVはこれ

ボールのインスペクタ

RIgidBodyとmeshColliderを追加。
MeshColliderのConvexにチェックをいれること!
ShatterTool.csを追加
ShatterOnCollision.csを追加。これがぶつかったときに割れるScript
TargetUvMapper.csを追加。これが割れた部分のUV。
今回のUVの場合はこんな感じに指定。開始位置終了位置をしていするのではなく
開始位置とそこからのサイズを指定する形。

手っ取り早くボールを投げる

Helpers/Mouse/MouseInstantiate.csを空のオブジェクトなどにアタッチすればクリックした位置からオブジェクトを飛ばすことができます。

出来上がり。
explode12.gif

便利なScript

便利なScriptがそろっているので簡単に操作周りが作成できます。

HierarcheHandler.cs:modelに親子階層があるときなどに使用する
SHatterOnCollision.cs:何かかぶつかったら割れる

MouseForce.cs :クリックドラッグでつんで移動できる
MouseInstantiate.cs: オブジェクトを投げる
MouseShatter.cs:クリックした位置でオブジェクトを割る
MouseSprite:ドラッグした線でオブジェクトを切る

explode13.gif

ステーキのカットだってこの通りw

触った感想

できること
ユーザーの操作によるカット
クリック位置、ぶつかった位置での破壊。
割れた部分のUV指定(同じマテリアル)

できないこと:
複雑な形状なものでは動作しない。
そもそもMeshColliderのConverxをチェック入れる時点で、
Convex オンの MeshCollider は三角形面数の上限 255 に制限されています。という制約がつくためポリゴン数が多いものは対応できない
SkinnedMeshにはつかえない。

9
10
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
10

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?