问题标签 [bullet]

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.

0 投票
0 回答
536 浏览

android - 从错误的起点发射子弹

我在andengine中创建了一个赛车游戏。有一个大小为100x30px的玩家,像一个矩形。并且有fire()函数来射击子弹,代码如下。它工作正常。但问题是当玩家旋转时。玩家是汽车图像。所以它们通过方向按钮()旋转。当我射击子弹时,它从汽车的 0x0 像素开始。但我希望它必须像 100x15 像素的汽车一样开始在汽车前面移动。我该怎么办?

//屏幕控制按钮

0 投票
1 回答
1428 浏览

c# - 我怎样才能让我的物理对象安定下来?

我正在使用 BulletSharp,子弹库的 C# 发行版。我一直在一个据说恢复为 0.0f 的对象中出现一些弹跳。

我有一个动态圆柱体(即将成为网格)落在两个静态圆​​柱体上。像这样:

起始物体位置

顶部的圆柱体经常剧烈地弹跳,通常弹到一边。

这是我用来设置场景的代码:

以及我world.StepSimulation(0.05f, 100, 0.0005f);用来更新物理模拟的每一帧。

我是否缺少任何明显的设置?为什么我的模拟会这样做?

小更新:我已经成功地在 Blender 的 Bullet 中进行了类似的模拟。那里没有弹跳……我不知道那和这之间可能有什么区别。

0 投票
2 回答
1952 浏览

android - 子弹碰撞检测

我正在用andengine开发一个游戏。我有玩家。有一些敌人会随着MoveModifier随机出现,它们是精灵。我想要:plyer射出子弹,子弹接触敌人,敌人将是隐形的。如何我可不可以做?

子弹

敌人

0 投票
1 回答
1089 浏览

c++ - 如何使用具有网格三角形的绝对坐标和光线开始/结束的 rayTestSingle?

我创建了一个简单的btCollisionShape(从一个三角形制成的 triMesh):

我创造了ClosestRayResultCallback

如何btCollisionWorld::rayTestSinglebtCollisionShape我的光线开始和结束并且没有应用转换时执行?

同时,我在整个世界上尝试了 rayccast(实际上我不需要),但似乎我做错了 =( 因为我没有看到hasHit

0 投票
0 回答
518 浏览

2d - 如何使用 Playstation Mobile SDK 的 SpriteList 处理超过 200 个的精灵?

我正在开发包含数百颗子弹的 2D 射击游戏,并根据 PlayStation 移动 SDK 教程实现了一个简单的测试,而降低帧速率是我的主要问题。

场景计划生成继承自 SpriteUV 的子弹对象,并将每个生成的对象添加到 SpriteList 中,如下所示,结果是超过 200 的子弹显示 55~60 fps。以下是我上传到社区的问题和代码的链接。

用 200 颗子弹显示帧速率变慢是正常的,还是我在处理 SpriteUV 和 SpriteList 的方式完全错误?如果没有错,我该如何处理超过 200 个的精灵?(约300~500)

0 投票
1 回答
270 浏览

lua - 子弹的lua绑定

libbullet 是否有任何 lua 绑定?

尝试使用 swig 并简单地%include输入 BulletDynamicsCommon.h:

但这不起作用,因为它还只包含其他文件,这些文件被 swig 忽略:

我的 lua 文件是从http://bulletphysics.org/mediawiki-1.5.8/index.php/Hello_World移植的

0 投票
3 回答
9601 浏览

position - 在子弹物理中重新定位刚体

我正在编写一个使用 Bullet Physics 作为物理模拟引擎的角色动画渲染引擎。

一个序列将在屏幕上没有模型开始,然后将动画分配给该模型,模型将移动到动画的第 0 帧,引擎将开始使用动画渲染模型。

在第 0 帧初始化时,在角色模型上重新定位刚体的正确方法是什么?

目前我正在使用此代码,在将动画分配给模型并将骨骼移动到第 0 帧位置后立即调用该代码:

问题是有时这有效,有时则无效。以模特的裙子为例。有时它会出现在自然位置,有时会稍微错位并落入到位,有时它会完全穿过身体,好像碰撞已关闭,并且有一些力将它推向那个方向。这在大多数情况下确实有意义,因为在测试动画中,我使用模型的初始位置在屏幕中央,但动画从屏幕左侧开始。有谁知道如何解决这个问题?

我知道裙子上的骨骼不是问题,因为我关闭了物理并强制它在每一帧手动更新骨骼位置,并且在整个动画中一切都在正确的位置。

编辑:我也有限制,这可能是造成这种情况的原因吗?

0 投票
1 回答
2187 浏览

contact - BulletPhysic:接触力/脉冲

我想检测一个(球)何时接触到另一个物体(目标),我想知道那个接触的冲动。

我知道三种检测接触者的方法

或者

或者

检查线速度和角速度的变化。(不清楚是否有接触以及是什么物体改变了速度,是物体还是阻尼、重力还是一些力场。


我希望有联系信息,包括联系冲动。我注意到在 1 帧模拟中解决了一些接触,其他需要 2 帧并且脉冲低两倍。(我得到了它的调试代码。)我会很完美地获得 1 个完全冲动的联系通知。

我列出的所有方法都没有为我提供联系人的完整信息。有时它会在球飞到目标附近甚至没有碰到它时发射。

预期的方法是什么?

如果接触能量很高,这些信息可以用来播放撞击声或开始一些动画。

0 投票
3 回答
1227 浏览

c++ - 基于短整数的掩码在 C++ 库 Bullet 中如何工作?

基于 short int 的掩码如何在 c++ 中工作(例如Bullet中的掩码)?

看子弹

并看到所有值都是 2 的度数,我知道

short 是有符号整数,需要 2 个字节来存储,从 -32,768 到 +32,767。

但是如何创建我自己的组:如何计算掩码交叉点?

例如,除了 CollisionFilterGroups 之外,如何创建类似:

在哪里

  • 我们希望“planes”不与“planes”、“boxes”和“spheres”发生碰撞(“see”)
  • 我们希望“盒子”与其他“盒子”和“球体”发生碰撞
  • 我们希望“球体”不与“球体”碰撞,但与“盒子”碰撞
0 投票
1 回答
311 浏览

luabind - 使用 luabind 绑定返回 btVector3 的函数

我正在尝试使用 btVector3 绑定类。将 btVector3 与构造函数绑定可以正常工作。绑定函数如:

工作正常,但绑定这个:

给我以下错误:

错误 C2719:“未命名参数”:带有 __declspec(align('16')) 的形式参数不会对齐

我了解 btVector3 已对齐,如何修复/解决此问题?