今天做一个kinect的项目突然发现脚本互调不会
现在我已知的两种方法是:
第一种:
static 被调用脚本函数为static类型,调用时直接用 脚本名.函数名()
第二种
find GameObject.Find(“脚本所在的物体的名字”).GetComponent<脚本名>().函数名(); //只能调用public类型函数
但是我们要注意 find的方法效率非常低
第三种 我们可以继承自我们需要调用的脚本
第四种
public class ScriptA : MonoBehaviour {
public ScriptB other;
}
ScriptA有一个ScriptB类型的公共变量,这是一个绝妙的小技巧,如此一来你便可以通过编辑器拖拽任何含有ScriptB这一脚本的GameObject至该变量上(因为是public的,所以暴露于编辑器界面中),Unity会自动识别你需要赋值的不是那个GameObject,而是它所包含的ScriptB脚本。