ソースコード
using System; using UnityEngine; namespace Kogane { public sealed class SetPhysics2DSimulationModeScope : IDisposable { private readonly SimulationMode2D m_oldSimulationMode; private bool m_isDisposed; public SetPhysics2DSimulationModeScope( SimulationMode2D simulationMode ) { m_oldSimulationMode = Physics2D.simulationMode; Physics2D.simulationMode = simulationMode; } public void Dispose() { if ( m_isDisposed ) return; m_isDisposed = true; Physics2D.simulationMode = m_oldSimulationMode; } } }