CCParallaxNode parallaxRatio(解释)

Aar*_*lin 6 cocos2d-iphone ios

我觉得这个问题很愚蠢,但我无法在任何地方找到一个明确的答案(或者说很多答案)所以我觉得我必须要问.有没有人可以清楚地解释CCParallaxNode的视差比如何工作?

我检查了CCParallaxNode的来源,但根本没有解释它.我已经广泛搜索了互联网和stackOverflow.我试图做好旧的反复试验.我还是很困惑.

[parallaxLayer addChild:backgroundEffect_subtleRed z:100 parallaxRatio:ccp(0.5, 0.5) positionOffset:backgroundEffect_subtleRed.position];
Run Code Online (Sandbox Code Playgroud)

在这段代码中,我试图将一个粒子发射器添加到parallaxLayer并使其移动有点像你期望视差层上的一个物体移动.不幸的是,我根本看不到颗粒.当我想要移动时,我尝试向parallaxNode添加任何内容时,我遇到了这个问题.我一直在使用CCParallaxNode创建静态UI图层,但是无法将它们用于构建它们的内容.

综上所述:

parallaxRatio采用CGPoint.CGPoint中的浮点数适用于什么?它们是x和y相对于窗口的比率吗?他们(parallaxLayerMovementInRelationTo,parentNode)?一段工作的示例代码将非常有用.

谢谢.

Eri*_*ard 14

引用我拥有的cocos2d书:

[paraNode addChild:para1 z:1 parallaxRatio:CGPointMake(0.5f, 0) positionOffset:topOffset];
    [paraNode addChild:para2 z:2 parallaxRatio:CGPointMake(1, 0) positionOffset:topOffset];
    [paraNode addChild:para3 z:4 parallaxRatio:CGPointMake(2, 0) positionOffset:midOffset];
    [paraNode addChild:para4 z:3 parallaxRatio:CGPointMake(3, 0) positionOffset:downOffset];
Run Code Online (Sandbox Code Playgroud)

"CCParallaxNode的创建方式与任何其他节点一样,但它的子节点是使用特殊的初始化程序添加的.用它来指定视差比率,这是一个CGPoint用作CCParallaxNode运动的乘数.在这种情况下,para1将移动到速度的一半,在正常速度下的para2,在CCParallaxNode的速度的两倍时的para3,依此类推

所以基本上,它是各个层移动的比率与整个CCParallaxNode的移动的关系.

  • 它只是说不沿y轴移动任何子节点.在此示例中,应允许的唯一移动是x轴上的移动.它说,即使主CCParallaxNode沿y轴移动,子节点也不应沿y轴移动.你可以自由改变它. (3认同)