射击游戏开发:从敌人缓存到组件应用与碰撞检测
1. 敌人缓存类(EnemyCache Class)
1.1 基本概念
敌人缓存类(EnemyCache)是射击游戏开发中的重要部分,它的作用类似于子弹缓存类(BulletCache),用于存储预初始化的对象,避免在游戏运行过程中频繁创建和释放对象,从而减少性能波动。特别是对于动作游戏,这些小的性能问题可能会对玩家体验产生严重影响。
1.2 类的定义与初始化
以下是 EnemyCache 类的接口定义:
#import <Foundation/Foundation.h>
#import "cocos2d.h"
@interface EnemyCache : CCNode
{
CCSpriteBatchNode* batch;
NSMutableArray* enemies;
int updateCount;
}
@end
在初始化方法中,会创建一个包含所有敌人精灵的 CCSpriteBatchNode,并调用 initEnemies 方法初始化敌人池:
-(id) init
{
if ((self = [super init]))
{
// get any image from the texture atlas we're using
CCSpriteFrame* frame = [[CCSpriteF
超级会员免费看
订阅专栏 解锁全文
61

被折叠的 条评论
为什么被折叠?



