Unity开发之Destroy& DestroyImmediate

  1. DestroyImmediate立即销毁目标,并将目标置为null,且将目标的所有上层引用置空,如用DestroyImmediate销毁OBJ下的所子物体后 OBJ.childcount将变为0,见代码//22222222222

  2. Destroy则在本帧结束前,渲染之前销毁目标和上层引用。不会立即销毁,Destroy调用后,目标数据仍然存在,不为null,上层引用也正常。见代码//111111111处,因为销毁物体后,childcount仍然保持不变,这常会造成其它地方的逻辑出错,子结点已经销毁了却还能取到,因此,我们应该将子结点从父物体摘除,rootTrans.DetachChildren();这样其它地方代码再获取子结点及其数量时就不导致逻辑出错了。

  3. 基于上述原理,测试Destroy和DestroyImmediate的时间占用,发现后者几乎是前者的10倍。

推荐阅读更多精彩内容

  • 什么是气场? 昨天我在下班途中听到熊师付的《关系攻略》里讲气场,引起了我的思考。 什么是气场?就是不被别人所影响,...
    行动恋阅读 91评论 0 0
  • 那些弱小者被波及湮灭,东伯雪鹰看的瞳孔微微一缩,他想要救都来不及,毕竟敌人的领域一念间便施展了。 “别看这雪鹰公子...
    im喵小姐阅读 77评论 0 0
  • 1 昨天我的一篇文章,“朋友圈里的这类人让我很讨厌 ”。阅读量和留言数都比往常要高很多。我分析了一下,主要有2点:...
    非你莫属陈鹏飞阅读 251评论 0 0
  • 公司领导外出办事了,走之前交代,会有一位大姐过来拿东西,东西已经装好了在桌子上。 按照约定时间,大姐晚到了半小时。...
    风页数阅读 269评论 0 0
  • “谣儿,该你了!”爹爹见我出神,便催促着,一脸开怀的样子,不再叫我丫头。 素风这会姗姗来迟,我便问,“素风,你怎么...
    未慈阅读 71评论 0 2