Commit graph

258 commits

Author SHA1 Message Date
Andrew Meadows
6eb177091b overhaul of MotionState cleanup
Moved MotionState deletes out of PhysicsEngine.
EntityMotionStates are deleted by the PhysicsEntitySimulation.
AvatarMotionStates are deleted in the Avatar dtor.
2016-01-07 10:19:46 -08:00
Andrew Meadows
4208380d1c namechange 2016-01-07 10:19:46 -08:00
Seth Alves
d3c57821c0 call a method on actions before each physics simulation step. use this to attempt to dejitter held objects 2015-12-16 14:00:04 -08:00
Andrew Meadows
5135c9dded whitespace cleanup 2015-11-24 10:20:19 -08:00
Howard Stearns
79f05c63e5 Merge branch 'master' of https://github.com/highfidelity/hifi into dont-use-other-avatar-sounds 2015-10-31 11:23:18 -07:00
Seth Alves
944f0965c0 some refactoring and a bug fix -- grab script can throw things again 2015-10-30 16:35:50 -07:00
Howard Stearns
28246c1951 Merge branch 'master' of https://github.com/highfidelity/hifi into dont-use-other-avatar-sounds 2015-10-30 13:21:56 -07:00
Ryan Huffman
84869c512b Fix mis-renamed method names 2015-10-30 09:30:22 -07:00
Ryan Huffman
7a4787a79c Rename stepSimulation to stepSimulationWithSubstepCallback to fix warning 2015-10-30 09:21:13 -07:00
Howard Stearns
c2873ef720 Merge branch 'master' of https://github.com/highfidelity/hifi into dont-use-other-avatar-sounds 2015-10-29 22:17:31 -07:00
Andrew Meadows
0c5b4115ed Merge pull request #6221 from huffman/physics-substep-fix
Physics substep fix
2015-10-29 12:39:15 -07:00
Ryan Huffman
49877c2dff Move _hasOutgoingChanges in onSubStep to previous location 2015-10-29 10:19:18 -07:00
Howard Stearns
8e83943efd Don't play other avatar's collision sounds.
https://app.asana.com/0/32622044445063/61104546898252
2015-10-28 15:43:36 -07:00
Andrew Meadows
c9cd336400 fix for bad contacts after changing avatar models 2015-10-27 15:01:48 -07:00
Andrew Meadows
a1f1e50431 split CharacterController btw phys and interface 2015-10-27 13:15:38 -07:00
Ryan Huffman
837430329b Fix collision start/end in single physics simulation to be lost 2015-10-26 13:02:17 -07:00
Brad Davis
9b81842850 Merge branch 'master' into homer
Conflicts:
	assignment-client/src/octree/OctreeSendThread.cpp
	interface/src/Application.cpp
	libraries/entities-renderer/src/EntityTreeRenderer.cpp
	libraries/entities/src/EntityItem.cpp
	libraries/entities/src/EntityTree.cpp
	libraries/entities/src/EntityTreeElement.cpp
	libraries/entities/src/EntityTreeElement.h
	libraries/entities/src/EntityTreeHeadlessViewer.cpp
	libraries/entities/src/RecurseOctreeToMapOperator.cpp
	libraries/octree/src/Octree.h
	libraries/physics/src/EntityMotionState.cpp
2015-09-11 16:31:18 -07:00
Brad Davis
aa989c3687 Fixing some entity race condition crashes 2015-09-10 20:53:17 -07:00
Seth Alves
31fcd55d47 octree uses shared pointers 2015-09-08 11:59:48 -07:00
Seth Alves
92b5fe3457 fix thinko -- if the changes didn't happen, put them back on the list and don't clear their dirty flags 2015-08-28 10:31:28 -07:00
Seth Alves
6db0442fda allow for asynchronous building of collision shape 2015-08-21 10:48:26 -07:00
Seth Alves
e8a6acd65b responses to code review 2015-07-01 10:42:04 -07:00
Seth Alves
1d122060a6 merge andrew's sim-ownership branch 2015-06-29 09:50:38 -07:00
Seth Alves
c0c1116c69 attempt some clean-ups in edge/unexpected situations 2015-06-27 11:09:28 -07:00
Andrew Meadows
e18506c77f promote volunteer priority
also remove some cruft
change uint8_t to be quint8
2015-06-26 22:00:43 -07:00
Andrew Meadows
40f6ecd936 fix crash for dereference null pointer 2015-06-26 21:58:40 -07:00
Andrew Meadows
cf74dbe1dc partial progress toward sim ownership negotiations
works well for just a few objects but fails for piles
committing some debug stuff that will have to be torn out later
2015-06-26 21:57:04 -07:00
Seth Alves
31a3ca641d clean up left-over action if it's re-added 2015-06-26 16:54:46 -07:00
Andrew Meadows
8d41960cc3 reset simulation bid counters on object activation 2015-06-10 12:40:14 -07:00
Seth Alves
b425cc6491 merge from upstream 2015-06-05 11:56:33 -07:00
Seth Alves
b0480af040 Merge pull request #5053 from AndrewMeadows/isothermal
fix crash during bogus reconnect on login
2015-06-05 11:38:23 -07:00
Seth Alves
4e10c28b41 merge from upstream 2015-06-05 10:31:13 -07:00
Seth Alves
edb3622c85 Merge pull request #5037 from AndrewMeadows/inertia
collision groups for physical objects
2015-06-05 10:26:28 -07:00
Andrew Meadows
911baee8b8 fix for crash during bogus reconnect on login 2015-06-04 16:57:29 -07:00
Seth Alves
66ab3d455f use shared pointers to keep track of action objects 2015-06-04 12:29:05 -07:00
Andrew Meadows
6b03e671d8 remove comment cruft 2015-06-04 11:28:07 -07:00
Andrew Meadows
b0ca2df3aa move API from PhysicsEngine to ObjectMotionState 2015-06-03 14:56:04 -07:00
Andrew Meadows
ec0b4a956a move collision group consts to shared lib 2015-06-03 14:13:51 -07:00
Andrew Meadows
7b6cc59d30 basic support for collision groups 2015-06-03 11:40:48 -07:00
Howard Stearns
c036b5fd4b Actually commit the changes this time! 2015-06-03 10:19:28 -07:00
Seth Alves
a31a5a1554 main actions interface is in EntityItem. changes in actions are queued up and applied before simulation step 2015-06-02 19:40:20 -07:00
Seth Alves
d6549948d0 first pass at entity interface to actions 2015-06-02 16:06:27 -07:00
Seth Alves
100248c4e8 beginnings of ObjectAction class 2015-06-02 13:19:07 -07:00
Andrew Meadows
67f5d0773d some list management of AvatarMotionStates 2015-05-21 14:40:47 -07:00
Andrew Meadows
a2ffc1029b clear MotionState pointer in body on delete 2015-05-08 14:18:44 -07:00
Seth Alves
e73503a53d Merge branch 'nova' of github.com:AndrewMeadows/hifi into dice-on-table-1 2015-05-06 16:05:13 -07:00
Andrew Meadows
452e84d43f only update physics when proper flags are set 2015-05-06 16:02:03 -07:00
Seth Alves
fe308c0189 only do infection during collisions if one of the objects is being simulated by this interface 2015-05-06 13:50:14 -07:00
Andrew Meadows
326d17072e merge seth/dice-on-table-1 into andrew/nova 2015-05-06 11:50:12 -07:00
Andrew Meadows
c97b11a6e9 no ownership of kinematic objects on collision 2015-05-06 11:48:31 -07:00
Seth Alves
129a3a82da clear incoming flags after adding an entity to simulation. If an entity has a shape-type of none, don't keep asking it for a shape 2015-05-06 11:20:39 -07:00
Andrew Meadows
14f925b48e merge seth/dice-on-table-1 into andrew/nova
Conflicts:
	libraries/physics/src/EntityMotionState.cpp
	libraries/physics/src/ObjectMotionState.h
2015-05-05 16:54:53 -07:00
Andrew Meadows
d4701b4310 namechange getIncomingDF --> getAndClearIncomingDF 2015-05-05 16:49:41 -07:00
Seth Alves
82828f0b93 print when bullet and local octree don't agree on position of an entity 2015-05-05 13:52:10 -07:00
Seth Alves
1cd93b9ec8 pull andrew's branch, add back in visual indicator of an entity being active in bullet 2015-05-05 13:14:22 -07:00
Andrew Meadows
aa5a59c3dc merge upstream/master into andrew/nova
Conflicts:
	libraries/entities/src/EntityItem.cpp
	libraries/physics/src/PhysicsEngine.cpp
2015-05-05 10:24:17 -07:00
Andrew Meadows
0932682c2a remove comment 2015-05-04 13:35:36 -07:00
Andrew Meadows
96acf96b76 entity-entity collision events emit signals again 2015-05-04 13:32:57 -07:00
Andrew Meadows
fef84730bf remake foundation for CollisionEvents 2015-05-03 09:27:15 -07:00
Andrew Meadows
0a102575ee fix simulation ownership infection 2015-05-01 16:56:00 -07:00
Seth Alves
560d89b38a session id can be null. don't crash 2015-05-01 14:56:03 -07:00
Andrew Meadows
42ec39c578 add ObjectMotionType::bump(), use in PhysicsEngine 2015-05-01 14:39:33 -07:00
Andrew Meadows
b023fe582a make things compile 2015-05-01 10:44:50 -07:00
Andrew Meadows
4cb469dd79 cleanup how MotionStates are deleted from physics
also fixed some compile errors
removed cruft
2015-05-01 08:28:32 -07:00
Andrew Meadows
c3901939e6 make some things compile after reorganization 2015-04-30 13:02:18 -07:00
Andrew Meadows
31ab16ac62 move stuff into ObjectMotionState 2015-04-29 16:16:44 -07:00
Andrew Meadows
ab38572620 new PhysicsEngine API is mostly in place
doesn't compile, of course
large code movements are done
non-physical kinematics have been lost --
will readd in PhysicalEntitySimuation class
2015-04-29 09:48:02 -07:00
Andrew Meadows
087d0a027d merge upstream/master into andrew/nova 2015-04-28 10:07:49 -07:00
Andrew Meadows
34974272af proposal for PhysicsEngine API in Application 2015-04-28 10:06:05 -07:00
Andrew Meadows
31e5758422 namechange updateObjectEasy()-->updateBodyEasy() 2015-04-27 13:04:59 -07:00
Andrew Meadows
72deb2e49b merge upstream/master into andrew/thermonuclear
Conflicts:
	libraries/entities/src/EntityItem.h
	libraries/physics/src/EntityMotionState.cpp
2015-04-27 12:54:21 -07:00
Seth Alves
e14b4c6ad4 cleanups 2015-04-27 11:01:48 -07:00
Andrew Meadows
e3d29d74af name changes and preparation for more cleanup 2015-04-26 15:24:30 -07:00
Seth Alves
6e6793cbcc remove debugging prints 2015-04-24 15:18:02 -07:00
Andrew Meadows
3ecf959b3e removed cached copies of damping and restitution 2015-04-24 14:50:37 -07:00
Seth Alves
e7c6ee597a sync 2015-04-24 14:36:05 -07:00
Seth Alves
ea250c037a sync 2015-04-24 14:27:32 -07:00
Seth Alves
6b53fefebe sync 2015-04-24 14:21:59 -07:00
Andrew Meadows
c4395e75bb cleanup and comments 2015-04-24 13:26:26 -07:00
Seth Alves
6d151ee3ed try a different way of identifying when to claim simulation ownership of a moving entity 2015-04-24 09:29:05 -07:00
Seth Alves
cf0499e671 various physics-related experiments 2015-04-23 21:07:04 -07:00
Seth Alves
2ca592de8b fix logic with infectious simulation ownership 2015-04-23 10:02:29 -07:00
Seth Alves
10e5378396 fix mangled if 2015-04-23 09:13:18 -07:00
Seth Alves
9e96026c52 move _accelerationNearlyGravityCount and _shouldClaimSimulationOwnership from EntityItem to EntityMotionState 2015-04-22 21:36:36 -07:00
Seth Alves
4ca076ed94 put PhysicsEngine::bump back in. some things get missed if we just set the one thing active 2015-04-22 18:53:49 -07:00
Seth Alves
5a7f8a2f5a git rid of unneeded bump code. re-indent billiards.js and rez in balls with some y velocity so they fall to the table 2015-04-22 17:06:21 -07:00
Seth Alves
864f8cb3b3 fix comment 2015-04-22 16:10:25 -07:00
Seth Alves
96b4517e6e when removing something from bullet, attempt to wake up anything that was touching it 2015-04-22 16:05:31 -07:00
Seth Alves
07a848c9ce added bump call in physics engine for when an entity is deleted and may have something resting on top of it 2015-04-22 15:50:39 -07:00
Seth Alves
3450597d70 remove some debugging prints 2015-04-22 15:03:23 -07:00
Seth Alves
c30d742f7d experimenting 2015-04-22 14:22:09 -07:00
Seth Alves
36dbbd0c9d experimenting 2015-04-22 14:14:12 -07:00
Seth Alves
cd3ee39fcc experimenting 2015-04-22 13:42:04 -07:00
Seth Alves
ee000f91ae experimenting 2015-04-22 13:27:19 -07:00
Seth Alves
27ed0c4a98 experimenting 2015-04-22 13:21:06 -07:00
Seth Alves
7382b0b19f experimenting 2015-04-22 13:17:20 -07:00
Seth Alves
32673efc80 compute collision events inside lock to avoid a rare crash 2015-04-22 10:51:45 -07:00
Andrew Meadows
65825a4501 Merge pull request #4659 from ericrius1/collision
Filtering triggering of collisions with contact type of "continue"
2015-04-22 09:33:40 -07:00
Seth Alves
23f1767634 cleanup 2015-04-20 16:13:28 -07:00
Seth Alves
d6c8bd94cf clean up some debugging prints 2015-04-20 15:59:33 -07:00