Commit graph

260 commits

Author SHA1 Message Date
Andrew Meadows
6c49d81475 collision mask bit reinterpretation
also cache sessionID in static methods inside PhysicsEngine
2016-01-12 15:08:52 -08:00
Andrew Meadows
e1ba4ff0a8 add CollisionMask entity property 2016-01-12 15:08:52 -08:00
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