Version: 2023.1
言語: 日本語
public void PublishTransform ();

説明

Applies the position and rotation of the Rigidbody to the corresponding Transform component.

This is more efficient than setting Transform.position and Transform.rotation manually.

Note: This method doesn't update the child Transforms. It should be called from the topmost Transform, down the hierarchy.

using UnityEngine;

public class PositionTracker : MonoBehaviour { private PhysicsScene m_SomeScene; private Rigidbody m_Rigidbody;

public void SimulateTrajectory(float totalTime) { m_SomeScene.RunSimulationStages(0f, SimulationStage.PrepareSimulation);

for (int i = 0; i < totalTime / Time.fixedDeltaTime; i++) m_SomeScene.RunSimulationStages(Time.fixedDeltaTime, SimulationStage.RunSimulation);

// Transform of the m_Rigidbody is still like it was at the start of the method m_Rigidbody.PublishTransform(); // Transform of the m_Rigidbody is now up to date and can be accessed to see where the body ended up after simulating for "totalTime" seconds } }

Simulate a PhysicsScene with a Rigidbody and use PublishTransform to read the information from the physics system to the Transform component.

Copyright © 2023 Unity Technologies
优美缔软件(上海)有限公司 版权所有
"Unity"、Unity 徽标及其他 Unity 商标是 Unity Technologies 或其附属机构在美国及其他地区的商标或注册商标。其他名称或品牌是其各自所有者的商标。
公安部备案号:
31010902002961