问题标签 [rigid-bodies]

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 回答
546 浏览

unity3d - 球面刚体无论阻力如何都不会停止滚动

我的问题是我有一个带有球形对撞机的刚体,一旦它开始移动(滚动)它就永远不会停止。

我在这里阅读了其他答案,其中指出改变阻力(角度和正常)是解决这个问题的答案,但我必须在其他地方做错了什么。我已经尝试了几个小时,但找不到解决方案。

我已经将阻力移动到一百万,仍然移动但非常非常缓慢。我已将角度阻力移动到一百万,结果相似。我已将 sleepThreshold 设置为较高的数字。这似乎没有做任何事情。我尝试改变地形上的摩擦力。

在所有这些测试中,我将球放在一个平坦的水平面上,并施加一个推动力让它开始移动。它从未停止过。

有时它达到一定的速度,然后像要停止一样结结巴巴,然后它开始永远以恒定的速度移动,我想我可以明显地观察到从减速到恒定速度的转变。这对我来说根本没有任何意义。

我的假设是球最终应该停止,而团结如此先进,可以轻松处理这个问题,但我可能因为太新而错过了一些东西。

0 投票
2 回答
470 浏览

unity3d - Unity:如何处理复合对撞机 2D 物理

我正在制作一个小游戏,其中基本的游戏机制是在关卡中拖动东西。My Player GO 是在关卡周围拖动其他对象的人。这个GO(玩家GO)有一个rigidBody2D组件,为了拖动其他物体,我把被拖动的物体变成了player的一个child,这样我只通过rigidBody组件移动player,被拖动的物体沿着玩家对象。

问题是,只要本应通过接触杀死玩家的东西与被拖动的对象接触,玩家的死亡仍然会触发,即使玩家一开始并没有与危险对象发生接触。这显然不是预期的结果,如果想要杀死玩家的东西接触到被拖动的物体而不是玩家,那么玩家不应该被杀死。我怎样才能解决这个问题?

编辑:杀死我的意思是摧毁玩家GO。

0 投票
2 回答
492 浏览

c# - 在 Unity 3d 中限制 3d 模型的旋转

我想根据玩家在 x 和 y 方向上的触摸来旋转我的 3d 模型。所以我正在检测水平和垂直触摸。

但在这我想限制z方向的旋转。为此,我尝试了多个代码并在其他论坛中提出建议。目前没有任何建议对我有用。

基本上,我不希望 z 方向旋转。下图给你更多的想法,哪里出了问题。模型完全旋转到 z 方向。我想阻止这一切。

在此处输入图像描述

这是我多次尝试实现相同的目标。

上面的每个块都代表了限制 z 方向的独特努力。现在请给我一些建议来实现同样的目标。

以及我在 Unity 论坛上进行 的基于触摸的 3d 模型旋转的讨论

编辑:我尝试在 z 旋转中限制刚体。所以我的检查员看起来像这样。

在此处输入图像描述

编辑:在讨论游戏开发聊天室之后。我有以下类型的代码:

我刚刚接近解决方案,但现在我的高尔夫球球模型无法从顶部或底部侧阻力移动超过 180 度。我刚刚达到 180 度左右,它只是向任何其他方向旋转。

0 投票
1 回答
2491 浏览

unity3d - 如何阻止刚体在 Unity 3D 中对其他对象施加力

是否可以阻止两个对象/碰撞器/刚体相互施力,同时仍然检查它们之间的碰撞?

我知道您可以通过检查 Collider2D 组件上的“Is Trigger”属性来做到这一点,但如果我这样做,对象将不再站在平台上并跌倒。

我知道你可以使用 Physics.IgnoreCollision 但问题是我确实希望发生碰撞,我正在通过 OnTriggerEnter 方法检查它。我只是想让对象停止相互施加力量,就像用它拖着对方一样。

将其视为经典的街机平台游戏,敌人可以通过与它碰撞但穿过它来杀死玩家。或者在短时间内让它在游戏开始时无敌。

0 投票
1 回答
355 浏览

text - Unity2D:向rigidbody2D元素添加文本

我是 Unity 新手,我从Catch 游戏教程开始学习创建 2D 游戏。现在一切正常,但为了我的需要,我想为每个掉落的元素添加不同的文本框(在教程中是保龄球)这些文本应该随着对象移动。我知道我可以在代码中动态更改文本,但我不知道如何正确添加元素。

我尝试添加一个文本对象作为游戏对象的子对象,还尝试创建一个包含文本的新游戏对象,但我无法将元素定位在背景前面和我想要的元素上方(我无法选择为此的排序层)

想象一下这是必须收集的对象,我想显示这样的文本:

在此处输入图像描述

我的问题是:

1.如何添加要在正确位置显示的文本(GUIText,游戏对象中的文本,仅文本或其他内容?

2. 如何让这个文字随着坠落的物体动态移动?

3. 我可以为上面显示的文本设置背景吗?

先感谢您!

0 投票
1 回答
4349 浏览

c# - 如何将刚体添加到建模软件的导入游戏对象中?

我在我的游戏中导入了一个游戏对象,它是在 3d 建模软件中创建的。现在我想控制那个游戏对象的运动,这样一旦它碰到另一个游戏对象就应该停止他的运动。

我已经读过,为此,游戏对象需要一个刚体。那么如何以及在脚本中的何处向该游戏对象添加刚体?

0 投票
2 回答
697 浏览

c# - AddForce 方法不起作用

我正在为一个班级编写一个自上而下的砍杀游戏。我们想要一个机制,如果你被敌人击中,或者敌人击中你,你会被“击退”。不幸的是,无论我如何尝试,我都无法让敌人或玩家对力量做出反应。

以下是我检查过的其他问题中建议的事项列表:

  • 玩家/敌人不是运动学的
  • 尝试开启和关闭重力
  • 没有位置/旋转被冻结
  • 玩家/敌人附有刚体
  • 玩家/敌人附加了对撞机,一个有一个没有检查“isTrigger”功能。
  • 尝试了 OnCollisionEnter 和 OnTriggerEnter
  • 力值高,质量、阻力和角阻力低

我已经没有想法了。非常感谢您提供的任何和所有支持。

这是来自播放器对象的脚本的代码片段:

我可以证明(使用 Debug.Log)函数,代码到达那里,并计算了力。

0 投票
2 回答
56 浏览

c# - 我的子弹一直向上

我的子弹一直在发射我以以下方式实施了一个子弹,但它似乎只是向上,我做错了什么?

公共类 MoveBullet : MonoBehaviour {

0 投票
1 回答
93 浏览

unity3d - 如何将 3d 模型统一转换为纯色?

我有一个城市 3d 模型作为文件夹。该文件夹包括 .obj 文件、材质和纹理。

我尝试通过在路上行走来创建虚拟之旅。我将相机放在街道上。我的相机通过单击上下键来前进和后退。它通过单击左右键旋转 trun 和 left。我可以成功处理按键。

城市模型与地面的高度不同。它看起来像下图: 在此处输入图像描述

如果用户按下向上或向下键,我通过更新 transfrom.Translate data 仅更改 z 值:

但是我的相机进入了黑线,我无法正常看到这座城市。我怎样才能避免下线(道路)?制作固体物体能解决我的问题吗?

0 投票
1 回答
413 浏览

unity3d - 如何获得旋转物体的切向速度?

所以我有这个正在旋转的空游戏对象。现在这有一个球体对象作为它的孩子。因此,当父点对象旋转时,子球体似乎围绕它旋转。我想知道那个球体的速度,特别是它的切向速度。

当我调试时,我发现球体刚体速度/角速度的所有分量都是(0,0,0)。谁能告诉我我怎样才能做到这一点..