環境メモ
⭐️Mac OS Mojave バージョン10.14
⭐️Blender v2.79.6
⭐️Mac Book
⭐️Unity 2018.2.15f1
↓↓↓実際に動かした内容
https://twitter.com/nonnonkapibara/status/1138793284648620032
🌈Unity🌈
— non (@nonnonkapibara) June 12, 2019
Blenderで作った「cell fracture」の破片をUnityに取り込んで🌸Unity側で⛱️Collider⛱️と💗Rigdbody💗を設定してボールを当ててみたよぉ😍
ちゃんと弾けた‼️めっちゃ気持ちいい〜👍
O(≧∇≦)Oイェェ~イ♪#unity #Unity3D #blender pic.twitter.com/NdF2gqN1k0
詳細は下記のページを参照
【Unity】[パート1]Blenderで作った「cell fracture」の破片をUnityに取り込む
https://qiita.com/nonkapibara/items/4ce52d6bf58ccd486a6a

5.破壊前のCubeに、Mesh CollideとRigdbodyを設定する
6.破壊後のCubeにも、破片全てにMesh CollideとRigdbodyを設定する
破壊前と破壊後のオブジェクトを、非表示、表示の切り替えをする。
ボールが破壊前のオブジェクトに当たったら、破壊前を非表示にし、破壊後のオブジェクトを表示するようにした。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class ballScript : MonoBehaviour {
# pragma warning disable 0649
[SerializeField] GameObject nomal_cube;
[SerializeField] GameObject break_cube;
// Use this for initialization
void Start () {
// 破壊キューブ 非表示
break_cube.SetActive(false);
// 破壊前のノーマルキューブ 表示
nomal_cube.SetActive(true);
}
/// <summary>
/// オブジェクト同士が衝突した瞬間に呼び出される
/// Ons the collision enter.
/// </summary>
/// <param name="collision">Collision.</param>
private void OnCollisionEnter(Collision collision)
{
// ボールと接触したらCubeを破壊
if (collision.gameObject.tag == "normalCube")
{
Debug.Log("nomalCube");
// 破壊前のノーマルキューブ
nomal_cube.SetActive(false);
// 破壊キューブ
break_cube.SetActive(true);
}
}
}
9.新しいゲームオブジェクトを作って、ボールを投げるスクリプトを設定する
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PinkBreakScript : MonoBehaviour
{
# pragma warning disable 0649
[SerializeField] GameObject ball;
Rigidbody rig;
float speed = 100f; //速度[m/s]
void Start()
{
float x = ball.transform.position.x;
float y = ball.transform.position.y;
float z = ball.transform.position.z;
// 右から左ボールを投げる
x = x - speed;
var velocity = new Vector3(x, y, z);
// ボールのRigidbodyコンポーネントを取得する
var rigid = ball.GetComponent<Rigidbody>();
// Rigidbodyコンポーネントを使って初速を与える
rigid.AddForce(velocity, ForceMode.VelocityChange);
}
}
完成!!
類似内容
【Blender】Blenderのアドオン「cell fracture」で石がバラバラ〜ってなる物、作ってみたよぉ。
https://qiita.com/nonkapibara/items/f135a3e1a4fcb9f388a9
【Blender】衝突で勢いよく飛び散るシミュレーション(cell fracture)
https://qiita.com/nonkapibara/items/9df0d86762a7fb170946
【Unity】[パート1]Blenderで作った「cell fracture」の破片をUnityに取り込む
https://qiita.com/nonkapibara/items/4ce52d6bf58ccd486a6a