草庐IT

Collision

全部标签

ios - 仅用于碰撞检测的 Box2D

我仅将Box2D用于碰撞检测。我的代码类似于RayWenderlich教程中的代码here.我遇到了这个方法的问题。由于代码绕过了Box2D模拟,因此没有碰撞响应。因此,Sprite可以重叠。我知道Box2D碰撞API提供了一个单位法向量来帮助解决碰撞。然而,这个矢量传达的是方向而不是大小。因此,我无法确定应该将重叠的Sprite移动多远。有谁知道如何使用Box2D碰撞API手动解决重叠问题? 最佳答案 我不知道iOS的东西,但你想做的是使用扩展b2ContactListener并覆盖PreSolve。voidPreSolve(b2

IOS sprite 套件 didBeginContact 未调用

请帮助我,我已经尝试解决这个问题24小时了,我快要疯了:)我试图通过didBeginContact委托(delegate)方法检测SpriteKit中的碰撞,但是这个方法没有触发,网上的答案我都试过了#import"MyScene.h"#import"GameOverScene.h"staticconstuint32_tbasketCategory=1//@interfaceMyScene()@propertyBOOLcontentCreated;@property(nonatomic)SKSpriteNode*basket;@property(nonatomic)SKSpriteNo

ios - SpriteKit 物理体在与关节连接时不会发生碰撞

我正在评估iOSSpriteKit物理引擎,为了进行测试,我使用Xcode创建了一个包含两个圆形节点的简单场景:两个节点都有圆形的物理体和5公斤的质量。我用SKPhysicsJointSpring连接两个节点。这是整个设置(在viewDidLoad()中):letpath=NSBundle.mainBundle().pathForResource("MyScene",ofType:"sks")!letscene=NSKeyedUnarchiver.unarchiveObjectWithFile(path)as!SKSceneletborder=SKPhysicsBody(edgeLoo

java - 使用 Box2d(适用于 Android)的碰撞检测?

有人可以解释一下使用box2dforandroid进行碰撞检测的方式。我无法理解BBContactListener的工作方式。BBContactListenerlistener=newBBContactListener();world=newBBWorld(gravity,doSleep);world.SetContactListener(listener);如何使用那个监听器?我应该扩展标准来创建自己的标准还是如何创建? 最佳答案 我没有为android使用box2d,但我认为那里的想法是一样的。您必须实现联系人处理方法。这就是在

java - 二维球碰撞问题 : no conservation of energy

我正在尝试编写一个简单的物理模拟,其中具有不同半径和质量的球在完美弹性和无摩擦的环境中弹跳。我按照以下资源编写了自己的代码:http://www.vobarian.com/collisions/2dcollisions2.pdf我还测试了这里的代码:BalltoBallCollision-DetectionandHandling问题已编辑在RickGoldstein和Ralph的帮助下,我的代码可以正常工作(有一个错字……)。非常感谢你的帮助。但是,我仍然对为什么其他算法对我不起作用感到困惑。球在正确的方向反弹,但系统的总能量永远不会守恒。速度越来越快,直到球开始在屏幕上的静止位置闪烁

安卓游戏开发 : Collision Detection Failing

我目前正在为Android开发一款游戏,我希望您能就我一直遇到的问题提供专业知识。背景:我的游戏包含帧率独立运动,它考虑了在执行必要的速度之前考虑增量时间值计算。该游戏是一款传统的2D平台游戏。问题:这是我的问题(已简化)。假设我的角色是一个站在平台顶部的正方形(“重力”是characterVelocityDown的恒定向下速度)。我定义了碰撞检测如下(假设Y轴指向下方):给定characterFootY是我的方形角色底部的y坐标,platformSurfaceY是我平台的上部y坐标,platformBaseY是我平台的下y坐标:if(characterFootY+characterV

Unity常用方法-- Collision碰撞检测

LayerMask描述指定要在 Physics.Raycast 中使用的层。代码[SerializeField]protectedLayerMaskwhatIsGround;Physics2D.Raycast函数结构publicstatic RaycastHit2D Raycast (Vector2 origin, Vector2 direction,float distance=Mathf.Infinity,int layerMask=DefaultRaycastLayers,float minDepth=-Mathf.Infinity,float maxDepth=Mathf.Infini

java - 给定 75 : android 时条件不会触发

好吧,这可能是一个业余程序员提出的一个愚蠢的问题,他试图通过实验了解Android图形的基本使用,但就是这样。为了让自己熟悉2DAndroid图形以帮助我的一位friend希望我将他的想法用于他的游戏,我决定尝试制作一个简单版本的乒乓球。(简单的意思是我什至还没有让两个桨移动)离开AndroidAPIguides,我围绕具有3个ShapeDrawable对象(矩形)的自定义View对象(PongView)构建了实验性应用程序。两个桨(我称它们为棍子)和球。我在View中实现了一个MotionEventListener并使左摇杆随之移动(是的,我想通了:)。之后,我通过使用在调用自定义V

c++ - Windows 的 objcopy 等价物? (破解冲突库符号)

我正在寻找与GNU工具objcopy等效的Windows。我正在寻找实现suggestionpostedhere对于我的问题,但是我需要跨平台(Windows、Linux和Mac)进行。我在我的googlefriend上找不到答案,所以也许解决方案需要以不同的方式实现。谢谢! 最佳答案 默认MSVC工具的一部分:LIB/EXTRACT提取对象的拷贝;LIB/REMOVE然后将其从库中删除。我认为LIB/DEF/EXPORT:externalName=internalName在您将对象文件放回原处时也会对您有所帮助。

ios - 没有弹跳的 Sprite Kit 碰撞

我设置了一个英雄和一些从上到下移动的平台。有了这些,我有collisionBitMasks,如果英雄来自上方,它会检测英雄何时降落在平台上(让英雄跳过平台)if(_hero.physicsBody.velocity.dy>0){_hero.physicsBody.collisionBitMask=0;}else{_hero.physicsBody.collisionBitMask=platformCategory;}一切正常,除了英雄不断在平台上弹跳。有没有办法让他坐在上面,同时平台在下降?我尝试使用physicsBody.resting和physicsBody.friction,但没