Commit graph

112 commits

Author SHA1 Message Date
Andrew Meadows
1612d90cd3 minor DynamicsWorld optimizations and track global steps count therein 2018-05-25 08:31:09 -07:00
Anthony J. Thibault
4fa9af5534 Added items to the developer menu for debugging physics
Hooked up Bullet's internal debug draw functionality to our client.
Under the Developer > Physics Menu there are five new items:

  * Show Bullet Collision - will draw all collision shapes in wireframe. WARNING: can be slow on large scenes.
  * Show Bullet Bounding Boxes - will draw axis aligned bounding boxes around all physics shapes.
  * Show Bullet Contact Points - will draw all contact points where two or more objects are colliding.
  * Show Bullet Constraints - will render wire frame axes for each constraint connecting bodies together.
  * Show Bullet Constraint Limits - will render the joint limits for each constraint.
2018-05-02 10:51:00 -07:00
Andrew Meadows
623a29b14a add ownership infection for constraints 2018-01-04 16:48:06 -08:00
Andrew Meadows
2538204b1e expose physics simulation stats to Test JS API 2017-12-11 11:31:00 -08:00
Andrew Meadows
4540e9e483 add ability to save simulation stats to file 2017-12-11 11:31:00 -08:00
Andrew Meadows
068d04c58d abstraction of recursion through bullet perf stats 2017-12-11 11:31:00 -08:00
Seth Alves
142739eec7 Merge pull request #10602 from AndrewMeadows/simulation-ownership-002
fixes for some simulation ownership problems
2017-06-02 14:23:19 -07:00
Andrew Meadows
74827fc4c8 recently moved static objects added to changelist
since static objects are not active this will make the interface
release ownership of recently changed static objects
2017-06-01 17:39:21 -07:00
Andrew Meadows
c22e4ef883 rename method to clarify where it is called 2017-05-25 13:48:19 -07:00
Andrew Meadows
a31a861e19 fix typo: physcis --> physics 2017-05-05 09:33:50 -07:00
Andrew Meadows
aceac12398 use 'using' instead of 'typedef' 2017-04-27 13:11:57 -07:00
Seth Alves
2dab3069da fix bug that was causing spring action to cause constant re-insertion of its rigidbody into bullet. store UUIDs rather than shared pointers in _objectDynamicsByBody so that refcounting works right and actions get their destructors called. 2017-04-14 11:06:40 -07:00
Seth Alves
f5a5369055 attempt to remove dynamics associated with a rigid-body before removing the rigid-body 2017-04-14 07:06:53 -07:00
Seth Alves
52aee63e05 keep track of objectDynamics per rigidBody 2017-04-14 06:08:58 -07:00
Seth Alves
afa8fc161b allow hinge constraint between two entities 2017-04-13 15:37:28 -07:00
Seth Alves
74c0a70cb0 rename base action classes to dynamics, start on constraints 2017-04-11 20:39:13 -07:00
Andrew Meadows
8ddcae2a15 restore transform of deactivated entities 2017-03-09 17:26:53 -08:00
Anthony J. Thibault
89ae3b3d6e Revert "Merge pull request #8691 from highfidelity/out-of-body-experience"
This reverts commit efe9571ab8, reversing
changes made to 333e9ec7f4.
2016-12-05 15:18:03 -08:00
Andrew Meadows
2bbe2be516 fix spelling: physcis --> physics 2016-12-01 10:50:10 -08:00
Andrew Meadows
e44672180a add Bullet profile info to PerformanceTimer stats 2016-10-21 13:22:22 -07:00
Andrew Meadows
bb59860cfe update Aabb's of static objects when they move 2016-04-14 11:18:10 -07:00
Andrew Meadows
dcf28937cf cleanup cached Physics::sessionUUID 2016-04-14 11:18:10 -07:00
Seth Alves
69bb0ebd74 Revert "faster kinematic motion for entities" 2016-04-04 16:11:54 -07:00
Andrew Meadows
25fbf926df CollisionWorld only updates _active_ Aabbs
we manually set/clear active state of static objects
  that need their Aabbs updated
also fixing a bug when starting kinematic motion
2016-04-01 13:14:03 -07:00
Andrew Meadows
532f0683e8 remove all contact info before removing objects 2016-02-10 17:58:38 -08:00
Andrew Meadows
a92c512c17 move collision group/mask calculus into EntityItem 2016-01-19 19:52:08 -08:00
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
42711e5bad remove unused variable 2016-01-07 10:20:03 -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
a1f1e50431 split CharacterController btw phys and interface 2015-10-27 13:15:38 -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
6db0442fda allow for asynchronous building of collision shape 2015-08-21 10:48:26 -07:00
Seth Alves
31a3ca641d clean up left-over action if it's re-added 2015-06-26 16:54:46 -07:00
Seth Alves
4e10c28b41 merge from upstream 2015-06-05 10:31:13 -07:00
Seth Alves
66ab3d455f use shared pointers to keep track of action objects 2015-06-04 12:29:05 -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
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
f86c419988 stubbery for collidable avatars 2015-05-19 14:15:26 -07:00
Andrew Meadows
fb34a5ba84 renaming and cleanup 2015-05-13 08:44:10 -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