1
0
mirror of https://gitlab.com/OpenMW/openmw.git synced 2025-01-07 12:54:00 +00:00
OpenMW/apps/openmw
fredzio 07fa1803f7 Use btCollisionObject* instead of MWWorld::Ptr inside of Projectile
collision handling and castRay() to avoid calling getPtr(). It is a step forward
removing the mutex inside of PtrHolder.

Do the same for DeepestNotMeContactTestResultCallback. It is used
only for not-ranged combat for now, but do it anyway for parity with all
other callback. This way, once the PtrHolder mutex is gone one will not
have to worry about wether it is safe to use the callback in a specific
context.

To avoid use-after-free with projectile / projectile collision, defer deletion of projectile.
Since instead of storing a copy of target Ptr we have a pointer to its collision object,
we can't delete projectiles until after we finished iterating over the loops.
2021-08-08 15:05:07 +02:00
..
mwbase Remove Lua command "self:setDirectControl" 2021-08-03 14:36:51 +03:00
mwclass
mwdialogue
mwgui refactor and fix wobbly shores 2021-08-04 17:49:57 -07:00
mwinput Change rotateObject() to take a osg::Vec3f argument instead of 3 floats 2021-07-30 23:24:53 +02:00
mwlua Lua command core.quit 2021-08-04 19:14:24 +03:00
mwmechanics Merge branch 'schneller' into 'master' 2021-08-08 12:27:53 +00:00
mwphysics Use btCollisionObject* instead of MWWorld::Ptr inside of Projectile 2021-08-08 15:05:07 +02:00
mwrender Don't use FreezeOnCull for any particle system (#4744) 2021-08-08 03:36:35 +03:00
mwscript Don't stack cast packages 2021-08-07 10:06:56 +02:00
mwsound
mwstate
mwworld Use btCollisionObject* instead of MWWorld::Ptr inside of Projectile 2021-08-08 15:05:07 +02:00
android_main.cpp
CMakeLists.txt initial reverse-z depth implementation 2021-08-04 17:39:11 -07:00
doc.hpp
engine.cpp
engine.hpp
main.cpp Abort on duplicate content file 2021-08-01 03:04:12 +01:00