mirror of
https://github.com/godotengine/godot.git
synced 2025-12-07 22:00:10 +00:00
Merge pull request #108114 from lawnjelly/fti_multimesh_reset_all
`FTI` - Add `multimesh_instances_reset_physics_interpolation()`
This commit is contained in:
commit
822fd083c4
9 changed files with 36 additions and 0 deletions
|
|
@ -329,6 +329,17 @@ void RendererMeshStorage::multimesh_instance_reset_physics_interpolation(RID p_m
|
|||
}
|
||||
}
|
||||
|
||||
void RendererMeshStorage::multimesh_instances_reset_physics_interpolation(RID p_multimesh) {
|
||||
MultiMeshInterpolator *mmi = _multimesh_get_interpolator(p_multimesh);
|
||||
if (mmi && mmi->_data_curr.size()) {
|
||||
// We don't want to invoke COW here, so copy the data directly.
|
||||
ERR_FAIL_COND(mmi->_data_prev.size() != mmi->_data_curr.size());
|
||||
float *w = mmi->_data_prev.ptrw();
|
||||
const float *r = mmi->_data_curr.ptr();
|
||||
memcpy(w, r, sizeof(float) * mmi->_data_curr.size());
|
||||
}
|
||||
}
|
||||
|
||||
void RendererMeshStorage::multimesh_set_visible_instances(RID p_multimesh, int p_visible) {
|
||||
return _multimesh_set_visible_instances(p_multimesh, p_visible);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -152,6 +152,7 @@ public:
|
|||
virtual void multimesh_set_physics_interpolated(RID p_multimesh, bool p_interpolated);
|
||||
virtual void multimesh_set_physics_interpolation_quality(RID p_multimesh, RS::MultimeshPhysicsInterpolationQuality p_quality);
|
||||
virtual void multimesh_instance_reset_physics_interpolation(RID p_multimesh, int p_index);
|
||||
virtual void multimesh_instances_reset_physics_interpolation(RID p_multimesh);
|
||||
|
||||
virtual void multimesh_set_visible_instances(RID p_multimesh, int p_visible);
|
||||
virtual int multimesh_get_visible_instances(RID p_multimesh) const;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue