unity中关于预制体的生成

  • Post author:
  • Post category:其他


在场景中如果要大量生成某一个物体,就可以用Instantiate函数生成指定的预制体啦。

  • 首先把要生成的物体参数在Inspector面板上设置好,该加的组件、脚本都加上,将物体拖到Prefab文件夹中,即可变成预制体。
  • 然后就是写脚本的预制体生成逻辑(这个脚本不是预制体身上带的,而是生成预制体的脚本),使用Instantiate函数;

Instantiate函数我就不说了,主要是对生成预制体的位置、缩放、父物体、旋转等参数设置。

  • 重点要说一下,在场景中同时有三个该预制体生成,在预制体身上的脚本应该放三个预制体共有的方法,比如说动画播放、位置移动等。不能放只有一个能改变的参数,比如:

三个脚本都有这个碰撞函数,意义是发生碰撞isCollision就变为true,然后在其他脚本检测isCollision,如果发生碰撞了就debug。

public class Prefabs : MonoBehaviour {

    private gameManager manager;

	// Use this for initialization
	void Start () {
        manager = gameManager.instance;

    }
	
	// Update is called once per frame
	void Update () {
		
	}

    void OnCollisionEnter(Collision collision)
    {
        manager.isCollision = true;
    }
}




版权声明:本文为mine0928原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。