防止物体移动某些物体? [关闭]

问题描述 投票:-1回答:1

我认为这很简单,但我找不到解决方案。我希望我的播放器移动一些红盒子和其他蓝盒子。我试图在玩家碰撞时冻结X盒位置,但后来我移动了平台,所以它不起作用。我试图增加质量,但在某些情况下我也有问题。我能否知道玩家在框中施加的力量才能准确应用反向力?你觉得另一种方式吗?

c# unity3d game-development
1个回答
3
投票

Yous不应该冻结位置或改变质量以获得这种效果。

如果您不想移动任何对象以被另一个对象移动,请在该对象上启用Is Kinematic

来自Is Kinematicdoc描述:

如果启用,对象将不会被物理引擎驱动,并且只能通过其Transform进行操作

public Rigidbody redBoxes;
public Rigidbody blueBoxes;

不要将红色和蓝色框移动到另一个对象(播放器)

redBoxes.isKinematic = true;
blueBoxes.isKinematic = true;

允许其他对象移动红色和蓝色框(播放器)

redBoxes.isKinematic = false;
blueBoxes.isKinematic = false;
© www.soinside.com 2019 - 2024. All rights reserved.