68得票5回答
如何将欧拉角转换为方向向量?

我有俯仰角、横滚角和偏航角。如何将它们转换为方向向量? 如果您能向我展示四元数和/或矩阵表示,那将非常酷!

66得票5回答
为什么要用模型视图矩阵的逆转置来变换法向量?

我正在处理一些着色器,需要转换法线向量。 我在一些教程中读到,转换法线的方法是用模型视图矩阵的逆矩阵的转置与法线相乘。但我找不到为什么这样做以及背后的逻辑的解释?

51得票4回答
如何在Android上创建一个简单的2D游戏?

我对游戏开发一窍不通,需要有人指点方向。 为了清晰起见,请参考以下动画。 基本上,我需要知道如何将上述动画模拟成Android游戏,但我不知道应该采取哪些步骤。我的问题可以总结如下: 对于这种简单的游戏,我需要使用游戏引擎吗? 还是可以在不使用任何特定框架的情况下完成? 我需要使用动画...

36得票3回答
二维碰撞检测的四叉树

我正在尝试使用四叉树进行2D碰撞检测,但我对如何实现它感到有些困惑。首先,我会有一个四叉树,其中包含四个子树(每个象限都代表一个),以及一组无法放入单个子树中的对象。 在树中检查碰撞物体时,我会像这样做(感谢QuadTree for 2D collision detection): 检查...

35得票4回答
太空船推进的人工智能:在位置=0和角度=0处着陆3D飞船

这是一个关于如何操纵一艘能够在三维空间中进行平移和旋转的宇宙飞船的非常困难的问题,用于太空游戏。 该飞船有n个喷气装置,位于各种位置和方向。 i号喷气装置相对于飞船质心的变换是恒定的=Ti。 变换是一个位置和方向的元组(四元数或3x3矩阵或不太优选的欧拉角)。 变换也可以用单个4x4矩...

30得票5回答
如何制作一个2D软体物理引擎?

在 Box2d 中,刚体的定义是: 一块物质,它的强度非常高,以至于块上任意两点之间的距离完全保持不变。 这正是我所不想要的,因为我希望制作出二维(也许最终会是三维)、有弹性、可变形、可破碎,甚至有粘性的物体。 我希望从这个社区得到的资源可以教给我物体弯曲、断裂和相互作用背后的数学原...

27得票2回答
Canvas旋转星场

我将采用以下方法来在屏幕上制作星空动画,但接下来的部分卡住了。 JS var c = document.getElementById('stars'), ctx = c.getContext("2d"), t = 0; // time c.width = 300; c.h...

26得票3回答
为什么Verlet积分比Euler积分更好?

有人能解释一下为什么Verlet积分比Euler积分更好吗?以及为什么RK4比Verlet更好?我不明白为什么它是一种更好的方法。

25得票2回答
根据旋转角度计算X和Y方向移动?

假设我有一个在二维空间内可以旋转并根据其旋转角度移动的对象。 例如: 如果角度为0(向上),则它应该按Y轴移动1个单位,X轴移动0个单位。 如果角度为45,则应该沿着Y轴和X轴各移动1个单位。 如果角度为90度,则按Y轴移动0个单位,按X轴移动1个单位。 如果角度为135度,则沿Y轴向负...

21得票8回答
如何防止碰撞体相互穿透?

我在控制游戏对象时遇到了一个问题,无法将它们保留在一个固定的空间内。当它们到达边缘时,会有一些瞬间的阻力,但然后它们就会穿过墙壁。 我正在使用玩家的 Box Collider 以及关卡墙壁的 Mesh Collider。我遇到了两个问题:一个是玩家角色(太空飞船)由玩家控制移动,另一个是由玩...