游戏中经常会用到一些变换:
游戏中武器和角色在一个layer上,为了效率,会考虑将bullet, effect和 PhysicsParticle分别放到不用的层上,对应的层上使用batchnode来提高效率
武器和PhysicsParticleLauncher(粒子发射器)绑定,发射的时候,会向PhysicsParticleLayer的武器相同的位置上生成一个物理粒子特效
会经常用到convertToNodeSpace和convertToWorldSpace转换坐标
我们加三个sprite,r0,r1,r2,
r0的父节点是layer, 父节点下坐标(0,0,100,100)
r1的父节点是r0,父节点下坐标(0,0,100,100)
r2的父节点是r1,父节点下坐标(0,0,100,20)
bool HelloWorld::init()
{
//
// 1. super init first
if ( !Layer::init() ) {
return false;
}
// r0加入到根节点上(Layer) 坐标(0,0)
Sprite* r0 = Sprite::create("data/pic/gun.png");