关于一个Destroy销毁的使用问题,很纠结,有图有真相!
using UnityEngine;
using System.Collections;
public class CollisionEffects : MonoBehaviour {
public GameObject particleSystem;
public GameObject body;
public GameObject bomb;//这行代码是我加进去的,为了子弹能在碰撞时候触发这个爆炸效果,这个爆炸效果是个预制物体prefabs。
private Component emitter;
void Awake()
{
Destroy(gameObject,2);
}
void OnCollisionEnter(Collision collisionInfo)
{
Instantiate(bomb,transform.position,transform.rotation);//这行代码是我加进去的,检测碰撞正在进行中就触发bomb炸弹效果在当前位置
StartCoroutine(End());
}
IEnumerator End()
{
gameObject.rigidbody.velocity = Vector3.zero;
yield return new WaitForSeconds(0.2f);
Destroy(gameObject);
}
}
子弹可以被Destroy掉,可是爆炸物体bomb却无法销毁,这样下来,时间长了,内存岂不是被撑爆?请大神指点,跪谢!
你不会给爆炸也destroy呀 我刚做了一个飞机游戏,我的处理是将爆炸离子作为子弹的子物体,当子弹需要销毁时将子弹进行隐藏,然后激活离子爆炸等离子爆炸完后再将子弹Destroy;这样只要子弹销毁,离子系统也将销毁。 liujufu 发表于 2014-12-1 10:31 static/image/common/back.gif
你不会给爆炸也destroy呀
谢谢,发帖完了后我就想到了,已经解决这个问题了。。。。 whqydcg2007 发表于 2014-12-1 13:16 static/image/common/back.gif
我刚做了一个飞机游戏,我的处理是将爆炸离子作为子弹的子物体,当子弹需要销毁时将子弹进行隐藏,然后激活 ...
呵呵 也不错 只不过我觉得直接碰撞后销毁更直接,子弹挂爆炸,子弹和爆炸都是预制物体,各自带销毁即可。 好帖就是要顶 真心顶 很好哦 不错不错 LZ真是人才
页:
[1]