summaryrefslogtreecommitdiff
path: root/scene/3d/soft_dynamic_body_3d.cpp
AgeCommit message (Collapse)Author
2021-11-30Don't return reference on copy assignment operatorsRĂ©mi Verschelde
We prefer to prevent using chained assignment (`T a = b = c = T();`) as this can lead to confusing code and subtle bugs. According to https://en.wikipedia.org/wiki/Assignment_operator_(C%2B%2B), C++ allows any arbitrary return type, so this is standard compliant. This could be re-assessed if/when we have an actual need for a behavior more akin to that of the C++ STL, for now this PR simply changes a handful of cases which were inconsistent with the rest of the codebase (`void` return type was already the most common case prior to this commit).
2021-11-23Rename `remove()` to `remove_at()` when removing by indexLightning_A
2021-10-21Fix SoftDynamicBody3D crash when setting disable modePouleyKetchoupp
Proper logic for changing physics state when disabled and disabled mode is changed (it was unnecessarily making calls to re-initialize physics). Extra error handling in soft body implementations to avoid crashes with invalid mesh.
2021-10-20Fix SoftDynamicBody3D memory corruption when switching mesh at runtimePouleyKetchoupp
When switching the mesh at runtime, the physics server wasn't properly updated with the new mesh. Now we keep track of the soft body mesh to make sure everything is properly initialized on pre-draw. Also cleaned a few things around private methods.
2021-10-06Re-prepare RenderingServer if SoftDynamicBody mesh changedHaoyu Qiu
2021-10-01Remove scene code in physics serversPouleyKetchoupp
Replaced Mesh with mesh RID in Godot Physics 3D and Bullet.
2021-09-16Rename RigidBody to RigidDynamicBody and SoftBody to SoftDynamicBodyPouleyKetchoupp