feat(physics): dispatch PhysX simulation events to scene scripts

This commit is contained in:
2026-04-15 13:36:39 +08:00
parent 077786e4c7
commit 51aea47c83
20 changed files with 955 additions and 7 deletions

View File

@@ -33,6 +33,10 @@ public:
void OnFixedUpdate(float fixedDeltaTime);
void OnUpdate(float deltaTime);
void OnLateUpdate(float deltaTime);
void DispatchPhysicsMessage(
Components::GameObject* gameObject,
ScriptPhysicsMessage message,
Components::GameObject* other);
void OnScriptComponentEnabled(ScriptComponent* component);
void OnScriptComponentDisabled(ScriptComponent* component);
@@ -140,6 +144,10 @@ private:
bool ShouldScriptRun(const ScriptInstanceState& state) const;
bool EnsureScriptReady(ScriptInstanceState& state, bool invokeEnableIfNeeded);
void InvokeLifecycleMethod(ScriptInstanceState& state, ScriptLifecycleMethod method, float deltaTime = 0.0f);
void InvokePhysicsMessage(
ScriptInstanceState& state,
ScriptPhysicsMessage message,
Components::GameObject* other);
void StopTrackingScript(ScriptInstanceState& state, bool runtimeStopping);
NullScriptRuntime m_nullRuntime;