创建和销毁物体
博客专区 > LIndieGS 的博客 > 博客详情
创建和销毁物体
LIndieGS 发表于8个月前
创建和销毁物体
  • 发表于 8个月前
  • 阅读 35
  • 收藏 0
  • 点赞 0
  • 评论 0

标题:腾讯云 新注册用户域名抢购1元起>>>   

原文链接:https://docs.unity3d.com/Manual/CreateDestroyObjects.html

    一些游戏场景中会保存有一定数量的物体,但是对角色,宝物和其他的物体在游戏过程中会被不断创建,和移除。在Unity中,一个GameObject能使用Instantiate函数来创建,它能创建一个现有物体的复制品。

public GameObject enemy;

void Start() {
    for (int i = 0; i < 5; i++) {
        Instantiate(enemy);
    }
}

    值得注意的是,那些复制品不用从场景中现有的物体来创建。更常用的方法是使用Prefab,从编辑器里的项目栏里中抓取一个到声明为public的变量里。同时,初始化一个GameObject ,会复制所有目前挂在它上面的Component。

    Destory()函数可以销毁一个物体,在一帧刷新结束之后或可以在一个短暂的延迟之后执行。

void OnCollisionEnter(Collision otherObj) {
    if (otherObj.gameObject.tag == "Missile") {
        Destroy(gameObject,.5f);
    }
}

    值得注意的是,Destroy函数可以单独销毁一个物体的组件而不影响物体本身。一个常见的错误地是写成下面这样:

Destroy(this);

     这只销毁那个调用它的脚本,而不会销毁这句话所在的脚本文件。

共有 人打赏支持
粉丝 0
博文 9
码字总数 6421
×
LIndieGS
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: