问题标签 [physics]

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 投票
2 回答
420 浏览

c# - 计算盒子上的力

故事:我正在开发一种木箱构造工具。一个盒子由一组板组成,每个板表示为 3 个 3D 向量和一个放置向量。每个框都使用 OpenGL 进行可视化。

现在,这些箱子将用叉车移动,这将对它们施加一些力。我想计算盒子里每块木板上的力,这样我就可以看到一个给定的结构是否比另一个更坚固,是否有任何木板压力太大等等。

我应该如何解决这个问题?有没有我可以使用的库?我应该阅读哪些书来指导我做这件事?我可以使用现有的 CAD 工具进行物理实验吗?

我正在使用 C# 来计算所有内容,但这不是必需的(尽管它会很好)。

编辑:ODE 和 Bullet 等库呢?他们不能回答我的问题吗?

0 投票
3 回答
5779 浏览

2d - 用于地形碰撞检测的简单 2d 物理教程

我正在寻找一个教程,它将向我展示如何做简单的 2d 物理,就像这里( http://www.teagames.com/games/tgmotocross/play.php ) 中的那些。我最感兴趣的部分是角色/玩家与地形之间如何进行碰撞检测,以及如何存储/生成地形。
教程的语言无关紧要——我只是对如何做这件事感兴趣。
非常感谢。


编辑:澄清一下,我已经知道如何在两个精灵之间执行碰撞检测,以及足够的物理来编写 2d 游戏 - 我正在专门寻找关于如何实现可以碰撞的平滑地形的教程/示例(我明白可破坏的景观是如何完成的,我认为这会以某种方式相关)。此外,我知道 N 个教程,但它们使用离散的形状,而我对平滑的景观感兴趣。

0 投票
2 回答
2262 浏览

c++ - 如何在 Ogre3d 和 PhysX 中使用 16 位高度图

我正在使用 Ogre3D 和 PhysX。

当我从 8 位高度图加载地形时,它在 Visual Debugger 上看起来很正常。

看第一张图片: http://img44.imageshack.us/gal.php?g= 44927650.jpg

但是当我将高度图保存为 16 位图像时,我得到了您在第二张图像上看到的内容。

这是代码,这适用于 8bit PNG:

我应该改变什么才能让 16 位或更高的图像加载工作?

PS:抱歉英语不好

0 投票
3 回答
297 浏览

emacs - 在 emacs 中为文件系统以外的东西实现一个 dired 接口?

高能物理中常用的ROOT数据分析框架使用二进制文件格式,其内部结构类似于真实的文件系统(即文件夹和文件)。程序的 ls() 方法输出如下所示:

其中“TH1D”和“TH2D”等只是对象类型。在 emacs 中类似 dired 的界面中浏览文件真是太好了。我当然没有精力/时间从头开始为此编写一个 dired 接口(即使在 dired.el 源的帮助下)。我的问题是:如果可能的话,我怎样才能通过重新实现一些函数来为上面的输出制作一个类似于 dired 的界面来将其带入 dired 界面?

我当然不期望这里有完整的解决方案,而是指向示例、教程和其他有用信息的指针。

0 投票
6 回答
21513 浏览

physics - 如何计算在一定距离内达到一定速度所需的减速度?

我已经为此尝试了典型的物理方程,但它们都没有真正起作用,因为方程处理恒定加速度,而我的需要改变才能正常工作。基本上,我有一辆可以在很大范围内行驶的汽车,当它到达路径的尽头时,需要在给定的距离和时间内减速和停车。

所以,我有:
V0,或者当前速度
Vf,或者我想要达到的速度(通常为 0)
t,或者我想要到达路径尽头的时间
d,或者当我改变时我想要走的距离从 V0 到 Vf

我想计算
a,或者从 V0 到 Vf 所需的加速度

这成为特定于编程的问题的原因是因为a随着汽车不断停止,需要在每个时间步重新计算。因此,V0不断更改为V0从上一个时间步开始plus计算a上一个时间步。所以本质上它会开始慢慢停止,然后最终会更突然地停止,有点像现实生活中的汽车。

编辑:
好的,感谢您的出色回应。我需要的很多东西只是思考这个问题的一些帮助。现在让我更具体一些,因为我从你们那里得到了更多的想法:

c我有一辆车64 pixels从目的地出发,所以d=64。它正在行驶2 pixels per timestep,在哪里timestep is 1/60 of a second。我想找到它的加速度,让它在它经过时a达到 100 的速度。0.2 pixels per timestepd
d = 64 //distance
V0 = 2 //initial velocity (in ppt)
Vf = 0.2 //final velocity (in ppt)

同样因为这发生在游戏循环中,所以delta每个动作都会传递一个变量,即multiple of 1/60s that the last timestep took. 换句话说,如果花费了 1/60s,delta则为 1.0,如果花费了 1/30s,delta则为 0.5。在实际应用加速度之前,它乘以这个增量值。同样,在汽车再次移动之前,它的速度乘以 delta 值。这是非常标准的东西,但它可能是导致我的计算出现问题的原因。

0 投票
7 回答
6440 浏览

physics - 两个移动四面体之间的连续碰撞检测

我的问题很简单。我有两个四面体,每个四面体都有一个当前位置、一个空间线速度、一个角速度和一个质心(实际上是旋转中心)。

有了这些数据,我试图找到一种(快速)算法,它可以精确地确定(1)它们是否会在某个时间点发生碰撞,如果是这样,(2)在它们碰撞多长时间后和(3 ) 碰撞点。

大多数人会通过进行三角形-三角形碰撞检测来解决这个问题,但这会在冗余操作上浪费几个 CPU 周期,例如在检查不同的三角形时检查一个四面体的同一边与另一个四面体的同一边。这只是意味着我会稍微优化一下。没什么好担心的。

问题是我不知道任何考虑自旋转的公共 CCD(连续碰撞检测)三角形三角形算法。

因此,我需要一个输入以下数据的算法:

  • 三个三角形的顶点数据
  • 位置和旋转中心/质量
  • 线速度和角速度

并会输出以下内容:

  • 是否有碰撞
  • 碰撞发生多长时间后
  • 碰撞发生在空间的哪个点

在此先感谢您的帮助。

0 投票
4 回答
931 浏览

iphone - Iphone GUI 物理代码

当您拖动一个 iphone GUI 元素(如列表)时,它会以物理正确的方式滚动,并且最后还有一个很好的反弹效果。我想在我的游戏中编写一个 GUI 元素,而不使用 UIKit。我想知道实现这个的代码在哪里,如果我可以使用它而不是尝试编写类似的东西。有任何想法吗?

0 投票
4 回答
1889 浏览

python - 是否有标准的pythonic方法来处理python中的物理单位/数量?

是否有标准的pythonic方法来处理python中的物理单位/数量?我看到了来自不同领域(如物理学或神经科学)的不同模块特定解决方案。但我宁愿使用标准方法而不是“孤岛”解决方案,因为其他人应该能够轻松阅读我的代码。

0 投票
5 回答
8576 浏览

physics - 如何为游戏打造“拦截导弹”?

我正在开发一款游戏,其中包含寻的导弹。此刻他们只是转向他们的目标,这产生了一个相当愚蠢的结果,所有的导弹都在跟踪目标。

我想制造一种更致命的导弹,当它到达那里时,它会瞄准目标“将在”的地方,我对如何做到这一点有点卡住和困惑。

我猜我需要弄清楚我的目标在未来的某个时间点会在哪里(无论如何都是猜测),但我无法弄清楚要向前看多远。它需要基于导弹离目标的距离,但它也在移动目标。

我的导弹有一个恒定的推力,但转向能力很弱。希望他们会快速而令人兴奋,但像牛一样驾驶(即,对于那里的非 HitchHiker 粉丝来说,这很糟糕)。

无论如何,对于 Stack Overflow 来说,这似乎是一个可以帮助我解决的有趣问题,因此任何关于更好或更“有趣”导弹的想法或建议都将不胜感激。

接下来是躲避他们的人工智能......

0 投票
2 回答
1572 浏览

physics - carmageddon 2 中的汽车物理是如何实现的?

有可能将这些汽车砸成碎片,甚至将它们分开。一边想一边想,他们是怎么做到的?他们使用的基本算法是什么?有谁知道?

我只记得这款游戏有一种非常有弹性的感觉,并且在 pentium 2 上运行良好。而且它看起来一点也不准确,只是很有趣。报废那些车很有趣。

我猜这是某种弹簧物理结合一些顶点碰撞和变换算法。你能给我提供细节吗?