游戏中多个对象的处理
mingkg21
2007-05-31
譬如射击游戏中,出现大量的子弹,敌人。
看到很多代码都是为每个子弹实例一个对象,它们的处理方法都是构建对象池来管理。 我想到的处理方法是,子弹类里面的属性都是数组,游戏中只实例一个对象就可以实现很多子弹。这样就可以减少产生大量的对象。 各位觉得这样好吗?会不会比每个子弹实例一个对象的性能更差呢? 你们的处理方法是怎样的? |
|
crazestone
2007-06-05
我两种方法都用过。不过最后还是回归到对象池的方法,并用链表的方式管理满天飞舞的子弹,并建立实例化对象和释放对象回到对象池的机制.如果你单用一个对象,同样需要用数组或vector的方式存储子弹的位置.类别等相关信息.同样需要占用内存.而且遍历数组和vector的效率并没有采用链表形式管理的对象池效率高!
|