在 Box2D 中如何防止球粘在墙上?

2023-11-23

我正在尝试 box2d。 我似乎遇到了人们描述为粘墙的问题

我有一个球和一个桨

我正在使用我能找到的所有基本推荐尺度,10m 世界,1m 球

该球具有以下特性:

shape: circle (.5f radius)
size: 1.0f
density: 1.0f
restitution: 1.0f
friction: 0.0f

用于移动球的桨长为1.5m,它具有以下特性: 形状:

circle (.75f radius)
size: 1.5f
density: 10.0f
restitution: 0.1f
friction: 0.0f

如您所见,所有物体的摩擦力均为 0。

球不断地沿着墙壁滚动或完全卡在 90 度角

我想我可以检测到与墙壁的碰撞并触发 applyLinearImpulse 将球移离墙壁。


您需要降低弹性碰撞的最小速度阈值。

通过减少来做到这一点b2Settings::b2_velocityThreshold接近于0。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Box2D 中如何防止球粘在墙上? 的相关文章

  • Box2D C++ 教程-查询 World

    声明 本文翻译自Box2D C tutorial World querying 仅供学习参考 查询World 通常你可能想知道在给定的场景中都有哪些实体 例如有一个炸弹爆炸了 周围的所有实物都会受到不同程度的破坏 那么在RTS 译者注 Re
  • Libgdx |场景2d |设置表格的背景颜色?

    我正在创建一个菜单 就像 flappybird 中的菜单一样 当你死时它会在播放屏幕上弹出 我创建了一个扩展表格的类 我想将表格的背景设置为白色 有没有办法做到这一点 你可以这样做 Pixmap bgPixmap new Pixmap 1
  • 在 Box2D 中如何防止球粘在墙上?

    我正在尝试 box2d 我似乎遇到了人们描述为粘墙的问题 我有一个球和一个桨 我正在使用我能找到的所有基本推荐尺度 10m 世界 1m 球 该球具有以下特性 shape circle 5f radius size 1 0f density
  • 如何使用更少的 import 语句导入 Java 中的多个类? [复制]

    这个问题在这里已经有答案了 我对在 Java 中使用包还很陌生 我想知道是否有一种更简单的方法来使用更少的 import 语句导入类 我正在使用处理并且我已经开始使用用于处理的 Box2D创建一些游戏 为了使用该库 我必须将以下内容添加到我
  • 计算特定撞击角度的 box2d 冲量

    我有一个球 圆形的动态物体 它在重力条件下作用在表面 蹦床 上 当球撞击蹦床 图中从 A 点到 B 点绘制 时 我想向球施加一个脉冲 垂直于蹦床表面 问题是现在我使用 b2Vec2 impulse b2Vec2 0 self fullMas
  • 恢复0的SKPhysicsBody仍然会反弹

    我正在尝试以恒定速度掉落 SKSpriteNode 并且不会弹跳 这是我正在使用的代码 SKSpriteNode floor SKSpriteNode spriteNodeWithColor UIColor clearColor size
  • 何时在 Libgdx 中使用 ShapeRenderer、Mesh + SpriteBatch、Box2D 和 Scene2D?

    我是 Android 游戏开发的新手 在我开始使用 libgdx ShapeRenderer 并做了更多搜索后 我开始困惑是否从右脚开始 所以 我真正想知道的是我什么时候应该使用ShapeRenderer Mesh SpriteBatch
  • 在 Cocos2d 和 Box2d 中获取物体上的接触点

    我很new对于 Cocos2d 和 Box2d 我 一直在关注教程 http www raywenderlich com 和 一般是黑客攻击 不过 我有一个 我无法解决的问题 我创建了 2 个主体和固定装置 在 Box2d 世界中 并创建了
  • 如何在box2d中动态更改主体的组索引

    我是 box2d 的新手 我在 box2d 中开始了一个新游戏 并在世界上创建了 5 个动态物体 最初我需要防止它们之间发生碰撞 所以我将所有物体的组指数设置为负值 触摸身体后 我想允许与该身体发生碰撞 如何重置组索引 请帮忙 听起来你正在
  • 如何制作双向平台box2d主体?

    我使用 box2d 创建了平台 我想要 box2d 身体检测而不是动态检测 Box2d 形状将执行以下操作 在某些条件下检测碰撞 在某些情况下不检测碰撞 两种条件都适用于同一 box2d 对象中的不同条件 任何想法都会有很大帮助 提前致谢
  • 绕着正方形滚动一个圆

    近一个月后 我仍然停留在这个问题上 我设法决定圆圈 或我所说的行人 是否应该向左 向右或向上 向下移动 但我需要有可能移动行人around一座建筑物 这意味着他们必须转角 基本上无论方向如何 他们只需要转90度 非常感谢 import nu
  • 使 Box2d 对象遵循预定路径

    我正在制作一个游戏 其中某个对象 建模为 box2d 主体 必须遵循固定路径 有没有一种方法可以指定路径坐标并使对象在每个 dt 上前进 Thanks 另外一个选择 将鼠标关节连接到您的身体上 使用鼠标关节的setTarget方法来移动身体
  • Xcode C++ 和 Objective-C 重构

    有没有办法refactorXcode 中的混合 C Objective C 代码 我正在使用 Cocos2D 和 Box2D 编写游戏 而 Box2D 是用 C 编写的 因此我编写的每个类都应该具有 mm 扩展名 因此当我尝试例如重命名变量
  • 为什么 Box2D 不应该使用像素作为单位?

    手册中说我应该使用小单位 0 1 10米 不鼓励使用像素作为测量单位 但是为什么 Box2D 比我使用小单位时工作得更好 并且具有更好的模拟效果呢 Box2D 是一个模拟框架 内部使用MKS 单位制 http en wikipedia or
  • Box2d 自定义多边形和精灵不匹配

    我正在使用物理编辑器在 Box2d 中创建多边形 它生成多边形并在非视网膜显示器中工作正常 但在视网膜显示器中不起作用 我已附上两个显示器的屏幕截图 现在 当谈到视网膜显示器时 未设置多边形在汽车上方 这是该图像 这是我在项目中使用的代码
  • 在 box2d 主体顶部绘制字体

    如何在静态 box2d 主体顶部绘制文本 字体 背景 我能够正确地在身体顶部绘制精灵 我通过拥有一个来做到这一点box2dSpriteBatch像这样投影在 box2dCamera 上box2dSpriteBatch setProjecti
  • AndEngine Sprite/Box2D Body 删除使我的程序崩溃,没有错误/异常信息?

    我正在制作一个滑板游戏 其中有障碍 你必须使用 box2D 和 AndEngine 跳过 我试图做到这一点 以便当玩家与物体碰撞时 该物体被移除 并在物体的旧位置放置爆炸 但是精灵移除代码中的某些内容冻结了我的程序 导致它结束 甚至没有强制
  • 如何在Sprite Kit中实现鼠标关节?

    我已经在 iOS 上用 Cocos2d Box2d 编写了拖放功能的工作实现 我需要将它移植到 Sprite Kit 逻辑非常基本 当用户触摸屏幕时 找到手指下的精灵 在找到的精灵和场景的物理体之间创建鼠标关节 将关节的目标设置为触摸位置
  • 不同 Android 设备上 box2D 中出现奇怪的“口吃”

    我正在用 C 同时开发引擎和游戏 并使用 box2D 作为物理后端 我正在不同的 Android 设备上进行测试 在三分之二的设备上 游戏运行良好 物理效果也很好 然而 在我的 Galaxy Tab 10 1 上 我偶尔会遇到某种 口吃 的
  • 如何订阅设备方向(非界面方向)事件?

    在我的应用程序中 我想在设备旋转 方向更改 的情况下调用 CCScene myscene 中的某些方法 我禁用了自动旋转 因为我希望它不会发生 问题是 我想根据我的设备方向改变场景中的重力 我的代码 void onEnter super o

随机推荐