MagicaVoxelで作ったモデルをUnityで置いたのですが、スクリプトの値が共有されてしまいます。
具体的には、壁となる直方体オブジェクトを作成し、
c#
1public class Script2 : MonoBehaviour{ 2 void OnCollisionEnter(Collider collider){ 3 collider.gameObject.GetConponent<Script1>().TorF = true; 4 } 5}
これを貼り付けました。当たったらそのオブジェクトにアタッチされているScript1のTorFをtrueにする処理です。
今度は、Unity標準のキューブオブジェクト2つ"A1とA2"と、MagicaVoxelで作ったオブジェクト2つ"B1とB2"を作成し、下記のスクリプトを貼り付けました。
c#
1public class Script1 : MonoBehaviour{ 2 public bool TorF = false; 3}
Script1では各オブジェクトがそれぞれbool型のTorFを宣言していて、壁オブジェクト触れるとScript2によりTorFがtrueになるものです。
最初にA1を壁オブジェクトに衝突させました。
するとA1だけがTorFがtrueになりました。
次に、B1だけを壁オブジェクトに衝突させました。
するとB1とB2のTorFがtrueになりました。
これをB1とB2が独立してTorFを管理させたいのですがうまくできません。
どなたか回答お願いします。
A1・2もB1・2も同じ状況で、違いは作成元がUnity標準かMagicaVoxelかということだけです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/02/23 06:02
2019/02/23 06:02
2019/02/23 06:50
2019/02/23 06:53