分享

Unity的Prefab预置使用方法

 阿修罗之狮猿授 2015-12-17

对于需要频繁建立的一些重复物体,譬如子弹等,可以使用Prefab进行预先编辑,然后在脚本中实例化来进行动态创建

Prefab示例,建立一个球形prefab

1.

创建一个球形物体 命名:Ball,加入球形碰撞器和刚体属性。

2.

创建一个prefab 命名:BallPrefab

,将检视器中的Ball拖动到资源视图中的prefab:BallPrefab上,

这样预制件Prefab就编辑好了,需要使用的时候只需要在脚本中实例化就可以了,

脚本示例:

 1     public int i;
 2     public int j;
 3     public Rigidbody BallPrefabs;
 4     public float x, y, z;
 5     public float k;
 6     public int n;
 7 
 8     public int count = 0;
 9 
10     private Rigidbody[] BP;
11 
12     // Use this for initialization
13     void Start () {
14         BP=new Rigidbody[10];
15         count = 0;
16         for (i = 0; i <= n; ++i)
17         {
18             for (int j = 0; j < i; ++j)
19             {
20                 BP[count++] = (Rigidbody)Instantiate(BallPrefabs, new Vector3(x - 2.0F * k * i + 4 * j * k, 2.0F, z - 2 * 1.75F * k * i), BallPrefabs.rotation);
21             }
22         }
23     }

其中,这句就是实例化的脚本

BP[count++] = (Rigidbody)Instantiate(BallPrefabs, new Vector3(x - 2.0F * k * i + 4 * j * k, 2.0F, z - 2 * 1.75F * k * i), BallPrefabs.rotation);

之后将脚本挂载到主摄像机上设置好所有的参数就可以运行查看了:

效果:

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多