Unity を C# を使ってゆっくりと学習し始めましたが、これまでのところとても楽しかったです!
私は小さな問題に遭遇し (小さな問題であることを願っています)、立ち往生してしまい、それ以来、私の正気を疑っています。
最初に実行されるメイン スクリプトには、オンザフライでプリミティブ (球体) を生成し、スクリプトをアタッチするコードがあります。スクリプトは、球体がトリガーされたかどうかを確認します。
メインスクリプト
bool createNav (Vector3 _start) {
GameObject nav = GameObject.CreatePrimitive(PrimitiveType.Sphere);
nav.AddComponent<NavTrigger>();
nav.collider.isTrigger = true;
nav.transform.localScale = new Vector3(1f,1f,1f);
nav.transform.position = _start;
return nav.GetComponent<NavTrigger>().Triggered;
}
私の他のスクリプト
private bool triggered = false;
void OnTriggerEnter() {
this.triggered = true;
}
public bool Triggered {
get { return this.triggered; }
}
悲しいことに、OnTriggerEnter コードを実行しているにもかかわらず、依然として false を返します。
誰かに何かアイデアや提案があれば、私はこの仕事をするために何でもしようとします.
ご助力ありがとうございます!:)