射击游戏开发:从子弹缓存到敌人设计
1. 射击游戏的核心需求
射击游戏需要有可射击的目标和躲避的子弹。在开发过程中,需要为游戏添加敌人,甚至是 boss 怪物。敌人和玩家都将使用新的 BulletCache 类从同一个池子里射击各种子弹,缓存类会重用非活动的子弹,避免不断从内存中分配和释放子弹。同样,敌人会使用自己的 EnemyCache 类,因为它们会大量出现在屏幕上。同时,还会引入基于组件的编程概念,以模块化的方式扩展游戏角色。
2. 添加 BulletCache 类
BulletCache 类是 ShootEmUp01 项目中创建新子弹的一站式解决方案。之前,所有相关代码都在 GameScene 类中,但管理和创建新子弹不应是 GameScene 的职责。
以下是 BulletCache 类的头文件:
#import <Foundation/Foundation.h>
#import "cocos2d.h"
@interface BulletCache : CCNode
{
CCSpriteBatchNode* batch;
int nextInactiveBullet;
}
-(void) shootBulletAt:(CGPoint)startPosition velocity:(CGPoint)velocit
超级会员免费看
订阅专栏 解锁全文

27

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



