问题标签 [jbox2d]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 用于 Box2d 的 LIBGDX 最新测试平台
我正在使用 Libgdx 测试最新的 Box2d 测试平台。他们似乎没有工作,需要知道其他人是否有同样的问题。第一个叫Conveyor Belt,https://github.com/ansman/box2d/blob/master/Testbed/Tests/ConveyorBelt.h
我转换为:
这是通过将它与其他 Box2D 测试一起工作的,但我注意到了一些事情。
Libgdx 在其 Contact.java 类中没有 setTangentSpeed 方法
设置必须使用 org.jbox2d.common 导入
测试无法解析为类型
我也尝试使用 Breakable,https://github.com/ansman/box2d/blob/master/Testbed/Tests/Breakable.h
哪个被转换为
我注意到:
Libgdx 在 Manifold.java 中没有 pointCount。一个快速解决方法是更改为 getWorldManifold 但没有任何好处
Vector2.java 不包含 crs(float x, Vector2 v),m_velocity 的向量不允许
设置不存在,除非我使用 com.jbox2d.common 导入
如果不包括这些方法,我如何让这些在 Libgdx 中工作?Libgdx 不再更新了吗?我想使用这些,但它们似乎落后于移植。我什至在 Contact.java 中注意到他在 setTangentSpeed 的代码之前停止了。我在测试中添加了 gwt jar,但没有任何好处。
box2d - box2d重力播放器下落速度更快
我正在使用 box2d 为移动设备开发游戏。我通过这些代码创建了一个世界:
它工作得很好。我有播放器对象。播放器像这样摔倒:
y轴:0、10、30、70..等。我的意思是它每秒钟下降得更快。但我希望它以相同的速度下降。比如:y轴:0、10、20、30..等
java - 如何使用 Java 显示/可视化 JBox2D 世界
我按照 FlashDevelop 教程编写了一个 JBox2D 应用程序。从命令行来看,一切似乎都运行良好,我现在的问题是如何在 JFrame 或其他可视化方法中显示世界。我尝试了 DebugDraw,但完全迷失了。提前致谢。
box2d - libgdx/jBox2d 在碰撞时添加幻体?
我是第一次使用 libgdx 和 jBox2D(虽然我之前在其他环境中使用过 Box2D)。
我创建了一个大的动态物体,和两个较小的静态物体让它着陆。我的身体似乎从来没有接触过。相反,似乎系统在我的身体之间创造了非常小的身体……我不知道为什么!
下图的上半部分显示了正在进行的碰撞(右侧)和即将发生的碰撞(左侧,未着色的形状)。
下图的下半部分是几步之后。大的阴影形状围绕第一个碰撞点旋转并与未着色的形状“碰撞”。
在每次碰撞的位置都有一个小红点,似乎阻止了形状的接触。我已经在多个尺度上尝试过,结果是相似的。我试过谷歌搜索并在这个网站上搜索有同样问题但没有运气的人。
java - 处理 / box2d - 使用 setTransform() 设置对象的位置未按预期工作
我正在使用处理和 box2d 制作 2d 游戏。在我的游戏中,我有一个对象targetBox
是Box
. 在游戏开始时targetBox
出现并停留在跷跷板上。游戏的目标是使用弹弓在跷跷板上发射其他盒子并将其发射targetBox
到窗台上。如果玩家错过了窗台,盒子将降落在一个区域,99% 的时间都不会是跷跷板。
我正在尝试实现允许玩家通过按“r”或“R”将盒子重置到其原始位置(在跷跷板上)的功能。
targetBox
最初在函数中添加到 box2d 世界中draw()
:targetBox.display(true);
如果按下“r”或“R”...
...调用类的重置功能Box
:
在游戏中,当“r”或“R”被按下时,targetBox
会消失并且不会回到原来的位置。我对处理或box2d不太熟悉。有谁知道为什么会这样?帮助表示赞赏。
编辑- 添加更多代码:
box2d - 逼真的 jumping box2d - 变量配置
我仍在研究我的 Jump 'n' Run 并且已经解决了“我可以跳跃”的问题。
我现在的问题是,我应该如何配置Gravity、Timesteps、Fixturesize、应用的 Impulse和Fixturedensity以获得最真实的结果?
Fixturesize 现在是 230x140 并且无法更改,因为我需要 pixelexact 大小进行调试。可以改变的是:
重力(10),
时间步长( Deltatime *4);
应用脉冲(1000000);
夹具密度( 0,002);
为什么我需要 1 (!) 百万的脉冲来移动当前 65 公斤的质量?
android - 如何从 Android 相机中找到框架的轮廓并将其转换为 box2d 主体?
使用 OpenFrameworks、OpenCV 和 Box2D,我能够以良好的帧速率实现它。使用 Android 似乎是一项复杂得多的任务(部分原因是我是 JAVA 新手)。
我是这样开始的:
使用“OpenCV 示例 - 图像操作”并删除除“canny”效果之外的所有内容,该效果会生成漂亮的黑白图像,非常适合查找轮廓。
/li>从“OpenCV Sample - color-blob-detection”中,我抓住了在 Mat 中找到轮廓的逻辑:
所以,我当前的功能看起来像这样,它不起作用:
/li>现在,这就是我卡住的地方。我不断收到异常,我认为我没有使用正确的尺寸或将 Mat 转换为正确的色彩空间。这篇文章有一些见解,但我不知道它是否正确:Android findContours 上的 OpenCV throws Exception
box2d - 将 JBox2D 库导入新项目
我想将 JBox2D 库导入一个新项目,我不熟悉使用外部库,所以我的怀疑看起来真的很愚蠢,但是哦,这就是你学习的方式。
所以我有点遵循 JBox2D 网站上的教程,我做到了这一点:
你可以看到我有 JBox2D 主干(我不太明白什么是主干......)我相信它们都是 Maven 项目,我的目标是能够在你可以看到打开的 PhysicTest 项目中使用引擎的库。
(可能是愚蠢的)我试图导入你在图像中看到的并且它不起作用,所以我请求你的帮助来解决一个对我来说并不那么简单的简单问题^^
感谢您的时间
box2d - 将外部物理引擎库添加到 Java 中的新项目 (JBox2D)
我想将 JBox2D 库导入一个新项目,我不熟悉使用外部库,所以我的怀疑看起来真的很愚蠢,但是哦,这就是你学习的方式。
所以我有点遵循 JBox2D 网站上的教程,我做到了这一点:
你可以看到我有 JBox2D 主干(我不太明白什么是主干......)我相信它们都是 Maven 项目,我的目标是能够在你可以看到打开的 PhysicTest 项目中使用引擎的库。
(可能是愚蠢的)我试图导入你在图像中看到的并且它不起作用,所以我请求你帮助解决一个对我来说并不那么简单的简单问题^^
cocos2d-iphone - 在形状上找到接触点
在 Box2D 项目中,我需要在用户双击的确切点处的两个 PolygonShaped 主体之间创建一个 RevoluteJoint。
我有接触点,以及两个形状中每一个的顶点列表(显然设置为不相互碰撞。)如果我理解正确,接触点是世界位置,顶点正在描述形状,它可以存在于任何世界。但是我如何从一个“翻译”到另一个?
例如,用户在 (3.63,5.07) 处双击。
形状1的顶点为:[(0.37485206,-0.17777264),(-0.2880008,-0.033603553),(-0.1609711,-0.2395713) 0.29765773)]
形状 2 的顶点:[(-0.015462875,0.24353802), (-0.13529873,0.31698608), (-0.36852637,0.4127499), (-0.4136281,0.17009032), (-0.2880008,-0.03)]
revoluteJoint:
任何帮助将不胜感激。
编辑:
我取得了一些进展,但仍然没有。我现在正在做的是根据形状的顶点找到一个“平均”位置。我取第一个条目,并且知道顶点逆时针计算哪个是中间顶点,并假设它离第一个顶点最远。所以我对两者进行平均,并将关节设置在那里。
这是代码:
以及关节的本地锚点:
我对关节的第二个身体做同样的事情。这找到了相当不错的接近度,但它并不完美,尤其是在形状较大的情况下。
知道如何更接近实际接触点吗?我需要的是 shape.getTouchedPoint() 之类的东西,但 API 似乎没有提供它。