コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】2D のソフトボディを使用できる「SoftBodyDemo」紹介

はじめに

「SoftBodyDemo」を Unity プロジェクトに導入することで
2D のソフトボディを使用できるようになります

使用例

f:id:baba_s:20190428111121g:plain

使い方

f:id:baba_s:20190428111230p:plain

Demo シーンを開いて「Blob」プレハブをシーンに配置すると使用できるようになります

注意

そのままだと正常に動作しないのでいくつか修正を行う必要があります

f:id:baba_s:20190428111242p:plain

「Blob」プレハブから「Grow」コンポーネントを削除します

using UnityEngine;
using System.Collections;

public class Blob : MonoBehaviour {
    private class PropagateCollisions : MonoBehaviour {
        void OnCollisionEnter2D(Collision2D collision) {
            // ★
            //transform.parent.SendMessage("OnCollisionEnter2D", collision);
        }
    }

「Blob.cs」の OnCollisionEnter2D 関数内の処理をコメントアウトします

fixed4 transparent = float4(float3(_Color.r, _Color.g, _Color.b),0);

「Circle.shader」の 22 行目を上記のように修正します