Commit graph

125 commits

Author SHA1 Message Date
Seth Alves
6db0442fda allow for asynchronous building of collision shape 2015-08-21 10:48:26 -07:00
Seth Alves
5e2f7204b4 responses to code review 2015-07-01 10:29:42 -07:00
Seth Alves
505332c367 include action data among physics initiated network updates from interface to entity-server 2015-06-30 10:19:03 -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
44d3074561 remove debug code 2015-06-26 21:58:03 -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
Andrew Meadows
2579247c34 claim ownership faster for scripted manipulations 2015-06-26 21:57:04 -07:00
Andrew Meadows
d0ac3e4514 more work on simulator priority
scripts that edit terse update data try to assert priority
physics simulation tries to assert "volunteer" priority
max priority rules are applied in entity server
2015-06-26 21:57:04 -07:00
Seth Alves
a0d77c061c lock the entity tree during physics operations that access then entity tree. if the simulation and entity-tree are both going to be locked, be sure to lock the entity tree first (and unlock it last), because this is what the network-reading thread does 2015-06-26 07:00:28 -07:00
Seth Alves
c5143cdfa0 Merge pull request #5027 from AndrewMeadows/isentropic
cleanup around sending all "terse update" data whenever some of it changes
2015-06-05 10:41:06 -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
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
Andrew Meadows
2400f5c000 update ALL parameters of remote physics simulation 2015-06-01 09:02:59 -07:00
Seth Alves
bfa0e9c234 recreate PR #4973 with some additional changes -- removed const keyword from qinvokables for avatar getter methods such as getVelocity 2015-05-27 14:44:23 -07:00
Andrew Meadows
16e5710325 Merge pull request #4954 from ZappoMan/entitysmartpointers
EnitityItem smart pointers
2015-05-26 14:05:03 -07:00
ZappoMan
8b78fc4190 EnitityItem smart pointers 2015-05-22 17:57:50 -07:00
Andrew Meadows
0431e8da36 put avatar body in right spot, and give it mass 2015-05-22 11:08:56 -07:00
Andrew Meadows
67f5d0773d some list management of AvatarMotionStates 2015-05-21 14:40:47 -07:00
Andrew Meadows
f86c419988 stubbery for collidable avatars 2015-05-19 14:15:26 -07:00
Andrew Meadows
c631f85bf9 cleanup of simulation ownership/update logic 2015-05-14 08:43:54 -07:00
Andrew Meadows
fb34a5ba84 renaming and cleanup 2015-05-13 08:44:10 -07:00
Andrew Meadows
4872a565c9 bid for simulation ownership 2015-05-12 21:46:52 -07:00
Andrew Meadows
1879a67804 cleanup 2015-05-07 14:42:09 -07:00
Seth Alves
fe14202f51 add getName passthrough to ObjecdtMotionState, don't compute model shapes until the model has been simulated 2015-05-07 09:53:39 -07:00
Seth Alves
630f1ce9d9 isMovingVsServer function 2015-05-06 16:13:07 -07:00
Seth Alves
b0ccabe38e update a motionstate's idea of what the entity-server thinks when an incoming update packet arrives 2015-05-06 16:05:05 -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
f0c778a802 fix bug preventing taking of simulation ownership 2015-05-06 11:46:42 -07:00
Andrew Meadows
d4701b4310 namechange getIncomingDF --> getAndClearIncomingDF 2015-05-05 16:49:41 -07:00
Andrew Meadows
8523a96e2b implement setShouldClaimSimulationOwnership() 2015-05-05 15:34:26 -07:00
Andrew Meadows
cfad016ba3 woops, forgot to these changes in last commit 2015-05-05 10:14:19 -07:00
Andrew Meadows
cb37b884d2 add ObjectMotionState::getObjectID() 2015-05-03 09:26:49 -07:00
Andrew Meadows
42ec39c578 add ObjectMotionType::bump(), use in PhysicsEngine 2015-05-01 14:39:33 -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
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
Andrew Meadows
e3d29d74af name changes and preparation for more cleanup 2015-04-26 15:24:30 -07:00
Seth Alves
81ff8a4448 count steps during which an EntityItem is moving but has no simulation owner. Once the count is high enough (how high is TBD), attempt to claim ownership 2015-04-25 07:17:21 -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
2a8fbeca32 sync 2015-04-24 14:43:39 -07:00
Seth Alves
2ca592de8b fix logic with infectious simulation ownership 2015-04-23 10:02:29 -07:00
Seth Alves
9e96026c52 move _accelerationNearlyGravityCount and _shouldClaimSimulationOwnership from EntityItem to EntityMotionState 2015-04-22 21:36:36 -07:00
Seth Alves
292ba20cf3 pull andrew's measure-acceleration branch 2015-04-17 11:35:12 -07:00
Andrew Meadows
5180e7e715 measure linear velocity of moving objects 2015-04-16 13:44:17 -07:00
Seth Alves
eace91e833 if an entity is being moved and has no sim-id, set sim-id to local node-id. if it has a sim-id, and it's not the same as the local node's, don't broadcast the change 2015-04-13 12:25:44 -07:00
Andrew Meadows
5776df1012 load dynamic obj as inactive when not moving 2015-02-25 12:07:19 -08:00
Andrew Meadows
f2bcdfa2b4 update _lastSimulated for kinematic motion 2015-01-23 13:10:41 -08:00
Andrew Meadows
d173afaa70 add support for non-physical kinematic movement 2015-01-23 11:01:46 -08:00
Andrew Meadows
86583f3f3f physics collisions emit script collision events 2015-01-21 11:27:32 -08:00
Andrew Meadows
d5119b3532 merge upstream/master into andrew/bispinor
Conflicts:
	libraries/entities/src/EntityItem.cpp
	libraries/physics/src/EntityMotionState.h
	libraries/physics/src/ObjectMotionState.cpp
	libraries/physics/src/PhysicsEngine.cpp
	libraries/physics/src/PhysicsEngine.h
2015-01-16 14:36:27 -08:00
Andrew Meadows
7c9419aa4e fix non-bullet build 2015-01-16 10:34:52 -08:00
Andrew Meadows
3fed38793e merge andrew/origin/inertia to andrew/local/inertia 2015-01-15 17:55:51 -08:00
Andrew Meadows
250fd98fee support for simple kinematic motion 2015-01-15 17:51:01 -08:00
Andrew Meadows
ff171a5782 Bullet is now required dependency 2015-01-15 10:27:43 -08:00
Andrew Meadows
03b8badd81 EntityItem stores density rather than mass. 2015-01-14 15:00:57 -08:00
Andrew Meadows
dcca5d532a fix for glitchy physics updates
The main problem was: ObjectMotionState::_sentPosition and friends
were not being updated when the EntityServer update arrives.
2015-01-13 14:00:37 -08:00
Andrew Meadows
5e2246625b fix layout to abide by the coding standard 2014-12-30 12:09:22 -08:00
Andrew Meadows
ce14c823a1 add comment about stubbed ObjectMotionState
for when Bullet lib is not found
2014-12-29 16:41:27 -08:00
Andrew Meadows
b3731e9530 hack for "reliable" packet send when objects stop moving 2014-12-15 14:36:27 -08:00
Andrew Meadows
fd8e3f6169 add moved entities to lists for sorting
and also for outgoing packet updates
2014-12-12 13:28:12 -08:00
Andrew Meadows
ad7641c7e0 repairs to build when Bullet not found 2014-12-11 16:05:45 -08:00
Andrew Meadows
572ceb75a4 clarification of what outgoing flags are about 2014-12-11 12:07:53 -08:00
Andrew Meadows
11f1ad1d7f move worldOffset into ObjectMotionState
add more methods for getting/clearing incoming/outgoing flags
2014-12-11 10:52:34 -08:00
Andrew Meadows
ab75150175 moved position/velocity send history to base class 2014-12-10 17:00:23 -08:00
Andrew Meadows
b0cc3a8509 add logic for when to update moving entity 2014-12-08 17:18:07 -08:00
Andrew Meadows
3c67400e13 namechange CustomMotionState to ObjectMotionState 2014-12-03 11:12:04 -08:00
Andrew Meadows
c9ea6885c1 PhysicsEngine is now an EntitySimulation 2014-12-02 15:29:41 -08:00
Andrew Meadows
1df6c32a4e moving Shape* back into shared lib
removing dependency of entities lib on physics lib
physics lib now depends on entities lib
2014-12-01 16:03:14 -08:00
Andrew Meadows
01b76af9d0 moved EntityMotionState.* to CustomMotionState.* 2014-11-06 10:58:04 -08:00
Andrew Meadows
1097e7f1f2 stubbery for EntityMotionState 2014-11-05 16:35:06 -08:00