Open
Description
We should add a section to the Physics manual to show how to subscribe to the physics tick events in order to mimic what people are used to for FixedUpdate
.
- This section should get the simulation
- subscribe to both PostTick and PreTick
- add some comments as to how they run
Example:
using Stride.Engine;
using Stride.Physics;
public class FixedUpdate : StartupScript
{
public override void Start()
{
var sim = this.GetSimulation();
sim.PreTick += Sim_PreTick;
sim.PostTick += Sim_PostTick;
}
private void Sim_PreTick(Simulation sender, float tick)
{
// Run before the Simulation is updated
}
private void Sim_PostTick(Simulation sender, float tick)
{
// Run after the Simulation is updated
}
public override void Cancel()
{
var sim = this.GetSimulation();
sim.PreTick -= Sim_PreTick;
sim.PostTick -= Sim_PostTick;
}
}
This should be a pretty simple manual page I think but we should also add it to the Stride for Unity® developers somewhere that would mention FixedUpdate
from Unity.
more things to think about:
- The Bepu physics implementation does not have these events. This will be a Bullet physics doc.
- C# events kind of suck for performance apparently. Maybe we should give an example on how to make a single event call that can call multiple scripts with some sort of custom processor?
- Maybe for Bepu we can show how to use the
SimulationUpdateComponent
which works very similar to Unitys Monobehaviour with theFixedupdate
replaced bySimulationUpdate
andAfterSimulationUpdate
methods.
Metadata
Metadata
Assignees
Labels
No labels