Tag: libgdx box2d

在libGDX中删除和创建正文

我在libGDX(box2d)中删除/创建实体时遇到问题。 我得到一个致命的错误。 日志: http://pastebin.com/fXWXpe8N 碰撞后我试图摧毁尸体。 ~90%的遗体被删除良好,没有错误和崩溃。 但有时它会发生。 我该如何解决这个错误? 我不知道。 联系: private void bulletGround(Contact contact) { Body bodyA = null; Body bodyB = null; if(contact.getFixtureA() != null && contact.getFixtureA().getUserData() != null && contact.getFixtureA().getUserData().equals(Ground.USERDATA)) bodyA = contact.getFixtureA().getBody(); if(contact.getFixtureB() != null && contact.getFixtureB().getUserData() != null && contact.getFixtureB().getUserData().equals(Bullet.USERDATA)) bodyB = contact.getFixtureB().getBody(); if(bodyA != null && bodyB != null) { […]

Box2D – 无法破坏多个灯具

我正在使用box2d和libgdx来处理我正在进行的项目。 我在摧毁身体/身体的固定装置时遇到了轻微的问题。 基本上,我想彻底摧毁身体,我通过摧毁身体的固定装置来做。 一个装置的身体一切都很完美,但是当我使用两个装置时,只有一个装置被摧毁,而另一个装置则保持身体完好无损。 这是两张图片来展示我的意思: 两个夹具: 只有一个夹具: 这是我创建身体的方式: BodyDef bodyDef = new BodyDef(); bodyDef.type = BodyType.DynamicBody; bodyDef.position.set(level.character.position); Body body = b2world.createBody(bodyDef); body.setUserData(level.character); level.character.body = body; CircleShape polygonShapeHead = new CircleShape(); origin.x = level.character.circleBoundOrigin.x * 2.0f; origin.y = level.character.circleBoundOrigin.y * 3.0f; //polygonShapeHead.setAsBox(level.character.circleBoundOrigin.x, //level.character.circleBoundOrigin.y, origin, 0); polygonShapeHead.setPosition(origin); polygonShapeHead.setRadius(level.character.circleBoundOrigin.x); FixtureDef fixtureDefHead = new FixtureDef(); fixtureDefHead.shape = polygonShapeHead; fixtureDefHead.friction […]

无法为libgdx加载共享库box2d

我有一个使用maven构建的libGDX项目。 它在过去运行良好,但最近由于libGDX将box2d作为扩展而停止工作。 我将扩展作为依赖项添加到我的项目的核心,就像我将任何其他依赖项: com.badlogicgames.gdx gdx-box2d ${gdx.version} compile 但是,当我尝试运行桌面项目(或其他任何东西,真的)时,我收到以下错误: [java] Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Couldn’t load shared library ‘gdx-box2d64.dll’ for target: Windows 7, 64-bit [java] at com.badlogic.gdx.utils.SharedLibraryLoader.load(SharedLibraryLoader.java:115) [java] at com.badlogic.gdx.physics.box2d.World.(World.java:185) [java] … 11 more [java] Caused by: com.badlogic.gdx.utils.GdxRuntimeException: Unable to read file for extraction: gdx-box2d64.dll [java] at com.badlogic.gdx.utils.SharedLibraryLoader.readFile(SharedLibraryLoader.java:124) [java] at com.badlogic.gdx.utils.SharedLibraryLoader.loadFile(SharedLibraryLoader.java:245) [java] at com.badlogic.gdx.utils.SharedLibraryLoader.load(SharedLibraryLoader.java:113) [java] … 12 […]

Box2D中的ChainShape

我最近开始学习libgdx,我遇到了Box2D的CainShape问题。 我的第一个目标是简单地创建一个带有ChainShape的盒子。 为了实现这一点,我在数组中添加了四个Vector2并使用它们来创建循环。 结果取决于arrays中的排列或沙漏形物体(左上方连接右下方,右上方连接左下方)或错误 表达式:b2DistanceSquared(v1,v2)> 0.005f * 0.005f 这是我到目前为止使用的代码: Vector2[] box = new Vector2[4]; box[1] = new Vector2(0 – bounds.getWidth() / 2 / Main.PPM, 0 – bounds.getHeight() / 2 / Main.PPM); box[0] = new Vector2( bounds.getWidth() / 2 / Main.PPM, 0 – bounds.getHeight() / 2 / Main.PPM); box[2] = new Vector2(0 – bounds.getWidth() / 2 […]

在libgdx中渲染box2d

我有一个大小为800×480的游戏世界,使用FitViewport并且最初使用像素渲染box2d的身体+灯具,所以所有物理都显得浮动和缓慢。 看看文档,我意识到box2d使用了度量单位,所以我经历了将box2d的位置和大小转换为32倍因此我得到了一个25×15米的box2d世界。 我遇到的问题是现在box2d对象渲染得非常小。 如何缩放它们以使它们在屏幕上显示常规尺寸?

BodyEditorLoader – noSuchMethod

所以,我开始使用Physics Body Editor作为libgdx的扩展。 我还使用Android Studio编译我的代码,因此我可以在真实设备上运行应用程序。 但是,不幸的是,当我创建一个新的加载器时,像这样: BodyEditorLoader loader = new BodyEditorLoader(Gdx.files.internal(“tnkA.json”)); logcat给我以下错误: java.lang.NoSuchMethodError: No virtual method parse(Ljava/lang/String;)Ljava/lang/Object; 显然, 物理主体编辑器有问题 。 有没有什么办法解决这一问题? 谢谢! 有完整的错误: 02-12 13:39:15.406 2372-2387/com.tynibattles04.game.android E/AndroidRuntime﹕ FATAL EXCEPTION: GLThread 172 Process: com.tynibattles04.game.android, PID: 2372 java.lang.NoSuchMethodError: No virtual method parse(Ljava/lang/String;)Ljava/lang/Object; in class Lcom/badlogic/gdx/utils/JsonReader; or its super classes (declaration of ‘com.badlogic.gdx.utils.JsonReader’ appears in /data/app/com.tynibattles04.game.android-1/base.apk) at aurelienribon.bodyeditor.BodyEditorLoader.readJson(BodyEditorLoader.java:179) […]

Libgdx光没有box2d

我刚开始使用libgdx创建游戏。 这是一个使用scene2d ui的自上而下的2D射击游戏。 现在我想,我可以在一定程度上添加黑暗和光明,但我不想用box2d重写所有内容。 我不需要真实的阴影只是某种环境光和我的角色周围的光环,它不受墙壁和其他障碍物的影响。 所以我想知道libgdx中是否有任何一种灯光系统? 或者我可以使用box2dlights而不使用box2d body / world ……? 谢谢