我想知道有什么方法可以让重力在编辑器模式下影响项目吗?通常,我将刚体设置到一个对象上并单击“播放”按钮,然后我可以看到该对象将根据重力而下落。但是,如何在不按“播放”按钮的情况下执行此操作?
我在Google上搜索了很多,但找不到任何文件向我展示如何操作。
谢谢
最佳答案
Unity Q&A网站上的This answer by ThePilgrim似乎回答了这个问题:
您可以通过设置
Physics.autoSimulation设置为false,并使用Physics.Simulate()设置为
逐帧推进物理过程,直到您的物体沉降。
这是一个示例编辑器窗口:
using UnityEditor;
using UnityEngine;
public class ScenePhysicsTool : EditorWindow {
private void OnGUI()
{
if (GUILayout.Button("Run Physics"))
{
StepPhysics();
}
}
private void StepPhysics()
{
Physics.autoSimulation = false;
Physics.Simulate(Time.fixedDeltaTime);
Physics.autoSimulation = true;
}
[MenuItem("Tools/Scene Physics")]
private static void OpenWindow()
{
GetWindow<ScenePhysicsTool>(false, "Physics", true);
}
}
关于c# - 如何在Unity3D中以重力在编辑器模式下工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58452586/