我将如何去创建一个随机路径,并有一个精灵跟着它?
只要它到达路径的末端,暂停并开始一条新路径,并且如果我需要,还有多个路径?
我想在屏幕上生成随机坐标,并使用CCMoveTo,但这会使一条直线,并会很无聊。我想复制周围飞行的昆虫的行为。任何人都可以将我指向正确的方向吗?CCSprite遵循随机路径
0
A
回答
0
这个简单的食谱怎么样:有一个永久性的速度矢量float vx, vy;
,你sqrtf((vx * vx) + (vy * vy))
正常化之前更换您的CCMoveTo
行动,以确保恒定的速度。然而,在归一化之前,添加小的以零为中心的随机值,例如,在-0.3f
和0.3f
到vx
和vy
之间。随机值的非常小的范围会给你平稳的持续路径,更大的范围会使路径不那么持久,像一只昆虫一样紧张。另一种选择是在每次更新时再次掷骰子,并且以极低的概率在归一化之前对vx
和vy
进行非常大的更改,使得昆虫在随机情况下突然改变其路径。
0
您可以使用CCBeizierTo
或CCBezierBy
例如:
#define randomPoint ccp(CCRANDOM_0_1()*[[CCDirector sharedDirector] winSize].width,CCRANDOM_0_1()*[[CCDirector sharedDirector] winSize].height)
ccBezierConfig bezier;
bezier.controlPoint_1 = randomPoint;
bezier.controlPoint_2 = randomPoint;
bezier.endPosition = randomPoint;
CCBezierBy* bez = [CCBezierBy actionWithDuration:5.0f bezier:bezier];
[sprite runAction:bez];
+0
精灵关闭屏幕:/ – iamruskie
相关问题
- 1. CCSprite跟随随机路径? (Cocos 2D)
- 2. CCSprite遵循CGPoints序列
- 3. 遵循的路径逆
- 4. 遵循Java的路径
- 5. ios MapKit,遵循路径
- 6. cocos2d/box2d iPhone - 随机循环路径
- 7. 如何让对象遵循路径
- 8. 动画文本遵循路径
- 9. 操作QGradient以遵循路径
- 10. SKSpriteNode遵循bezier路径旋转
- 11. 组Eclipse遵循系统类路径
- 12. d3过渡不遵循路径
- 13. JavaScript制作实体遵循路径
- 14. 使Box2d对象遵循预定路径
- 15. Cocos2d - 拖动图像时遵循路径
- 16. 算法遵循路径的概率
- 17. PHP卷曲 - 遵循相对路径
- 18. 如何设置遵循圆形路径的摄像机?
- 19. D3随机色线路径
- 20. 随机拷贝CCSprite动画和位置
- 21. 在路径上随机包含带点的路径
- 22. 随机路径产生 - Java的
- 23. 生成随机文件路径Java
- 24. iPhone:为动画生成随机路径
- 25. 随机捆绑器安装路径
- 26. 如何创建一个随机路径?
- 27. Android:在路径中随机绘制框
- 28. 如何让精灵在圆圈内遵循随机模式?
- 29. NavMeshAgent不遵循新的重新计算的路径
- 30. 遵循具有一定惯性的路径的算法
你能提供一个例子吗?我的小精灵很紧张,但一般都遵循同样的道路。 – iamruskie