Andrew Meadows
bf225e4886
fix bug masking physics shape changes
2015-05-22 11:33:45 -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
466af03fa9
support for ShapeInfo::offset
2015-05-21 16:25:05 -07:00
Andrew Meadows
f6721aa6eb
moved ShapeInfoUtil to be ShapeFactory
2015-05-21 15:53:16 -07:00
Andrew Meadows
2e3973dfdd
impl AvatarMotionState::set/getWorldTransform()
2015-05-21 15:34:30 -07:00
Andrew Meadows
67f5d0773d
some list management of AvatarMotionStates
2015-05-21 14:40:47 -07:00
Seth Alves
4a59dc24c5
split entity-add and entity-edit messages
2015-05-20 14:52:03 -07:00
Seth Alves
a769cfdaf2
client decides on new entity-ids, keep EntityItemID class
2015-05-20 10:42:19 -07:00
Seth Alves
f9d46b0cb5
interface decides on entityIDs rather than bouncing a temporary id through the entity server
2015-05-19 14:25:23 -07:00
Andrew Meadows
f86c419988
stubbery for collidable avatars
2015-05-19 14:15:26 -07:00
Andrew Meadows
7a47e04b9c
adjust margin for hulls with small dimensions
2015-05-14 14:57:18 -07:00
Andrew Meadows
81d06e0dc3
Merge upstream/master into andrew/nova
...
Conflicts:
libraries/entities/src/EntityItem.cpp
libraries/entities/src/EntityItemProperties.cpp
2015-05-14 10:09:55 -07:00
Andrew Meadows
c631f85bf9
cleanup of simulation ownership/update logic
2015-05-14 08:43:54 -07:00
Seth Alves
711752bff1
rather than call setMargin, clench in all the points of a collision-hull toward the center of the hull by the margin amount
2015-05-13 13:54:24 -07:00
Seth Alves
2ec660bd42
try out smaller collision margins
2015-05-13 13:00:57 -07:00
Andrew Meadows
fb34a5ba84
renaming and cleanup
2015-05-13 08:44:10 -07:00
Andrew Meadows
7e9e223b3e
merge upstream/master into andrew/nova
2015-05-12 21:48:55 -07:00
Andrew Meadows
4872a565c9
bid for simulation ownership
2015-05-12 21:46:52 -07:00
Andrew Meadows
e89471e7d6
enable non-moving update when obj is active
2015-05-08 15:41:00 -07:00
Andrew Meadows
a2ffc1029b
clear MotionState pointer in body on delete
2015-05-08 14:18:44 -07:00
Andrew Meadows
603afefaab
silence verbose no-very-helpful log message
2015-05-08 14:16:38 -07:00
Andrew Meadows
ada48bcb70
fix for glitchy physics updates
2015-05-08 09:06:31 -07:00
Andrew Meadows
e7e4d80be5
always remove from _pendingAdds just in case
2015-05-07 15:22:58 -07:00
Andrew Meadows
1879a67804
cleanup
2015-05-07 14:42:09 -07:00
Seth Alves
0347af9682
minor cleanup
2015-05-07 14:03:50 -07:00
Andrew Meadows
f0618501dd
fix non-physical kinematic motion
...
also can set objects collisionless again
2015-05-07 11:29:42 -07:00
Andrew Meadows
47f978b86e
merge
2015-05-07 10:31:27 -07:00
Andrew Meadows
070140440d
fix crash bug when invalid entity ptr accessed
2015-05-07 10:30:22 -07:00
Andrew Meadows
fe5cfdf495
fix crash bug
...
when obj deleted but dangling pointer still on _pendingAdd
which would not be removed during getObjectsToDelete()
because backpointers had been disconnected
2015-05-07 10:28:38 -07:00
Seth Alves
867fe18472
put some code back now that entity-server is doing simple simulation again. don't draw blue physics-enabled dot unless debug menu-item is checked
2015-05-07 10:11:36 -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
5ac8558168
flash yellow box when transmitting an edit packet
2015-05-06 17:03:27 -07:00
Seth Alves
cc5f2ee451
in isMovingVsServer look at entity velocity only
2015-05-06 16:26:27 -07:00
Seth Alves
ba6f6d19cc
disable updateServerPhysicsVariables
2015-05-06 16:20:16 -07:00
Seth Alves
630f1ce9d9
isMovingVsServer function
2015-05-06 16:13:07 -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
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
Andrew Meadows
452e84d43f
only update physics when proper flags are set
2015-05-06 16:02:03 -07:00
Andrew Meadows
7b1886a285
harvest outgoing changes for non-NULL entities
2015-05-06 16:01:25 -07:00
Seth Alves
4c3cbea261
don't auto-remove simulation owner unless the Node is gone. put back code that causes interfaces to give up ownership
2015-05-06 15:32:02 -07:00
Seth Alves
86ec12b22c
don't increase moving-without-simulator counter unless the thing is moving enough
2015-05-06 14:30:45 -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
Seth Alves
96a44314c9
don't have interface give up ownership
2015-05-06 13:29:54 -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
Andrew Meadows
f0c778a802
fix bug preventing taking of simulation ownership
2015-05-06 11:46:42 -07:00
Andrew Meadows
646661d037
update body gravity when proper dirty bits are set
2015-05-06 11:46:25 -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
50f73602f6
cleanup PhysicalEntitySimulation::_outgoingChanges
2015-05-05 16:51:07 -07:00
Andrew Meadows
d4701b4310
namechange getIncomingDF --> getAndClearIncomingDF
2015-05-05 16:49:41 -07:00
Seth Alves
c35edd8eb4
some debugging on Andrew's refactor
2015-05-05 16:40:10 -07:00
Seth Alves
c9f97b9d42
Merge branch 'nova' of github.com:AndrewMeadows/hifi into dice-on-table-1
2015-05-05 15:50:24 -07:00
Andrew Meadows
2668ff6d0a
check for DIRTY_ROTATION bit when copying rotation
2015-05-05 15:34:50 -07:00
Andrew Meadows
8523a96e2b
implement setShouldClaimSimulationOwnership()
2015-05-05 15:34:26 -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
813d702fc5
fix infinite loop in while
2015-05-05 11:00:25 -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
6be3cc6efb
remove debug stuff
2015-05-05 10:18:03 -07:00
Andrew Meadows
cfad016ba3
woops, forgot to these changes in last commit
2015-05-05 10:14:19 -07:00
Andrew Meadows
e38bfaa48c
allow for EntitityMotionState::_entity to be NULL
2015-05-05 10:09:07 -07:00
Andrew Meadows
066e36c3e7
fix crash bugs (don't reference NULL pointers)
2015-05-04 16:52:36 -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
Atlante45
fc1519c078
Quiet compiler
2015-05-04 16:49:33 +02:00
Andrew Meadows
fef84730bf
remake foundation for CollisionEvents
2015-05-03 09:27:15 -07:00
Andrew Meadows
cb37b884d2
add ObjectMotionState::getObjectID()
2015-05-03 09:26:49 -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
3c9474b736
non-phys kinematic objs move to EntitySimulation
...
out of SimpleEntitySimulation
2015-05-01 13:43:50 -07:00
Andrew Meadows
3031d55c8e
merge upstream/master into andrew/nova
2015-05-01 11:03:51 -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
9f8b266a03
fix some compile problems
2015-04-30 13:56:37 -07:00
Andrew Meadows
195dd1420c
DIRTY_PHYSICS_ACTIVATION not DIRTY_PHYSICS_NO_WAKE
...
also add separate flag for rotation
and separate flags for linear vs angular velocity
and some combined flag masks for convenience
2015-04-30 13:17:13 -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
c0a5753317
PhysicalEntitySimulation sends outgoing packets
2015-04-28 17:12:29 -07:00
Andrew Meadows
5537c9e042
merge upstream/master into andrew/bispinor
...
Conflicts:
libraries/physics/src/DynamicCharacterController.cpp
2015-04-28 15:18:02 -07:00
Andrew Meadows
14b6ee608a
more PhysicalEntitySimulation implementation
...
with changes to API's accordingly (does not compile yet)
2015-04-28 15:07:37 -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
304850372e
initial implementation of PhysicalEntitySimulation
2015-04-28 10:05:10 -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
2e5049a190
fix bug caused by no-longer reusing a variable
2015-04-27 12:20:01 -07:00
Seth Alves
e14b4c6ad4
cleanups
2015-04-27 11:01:48 -07:00
Seth Alves
8278f52a79
cleanups
2015-04-27 10:59:51 -07:00
Andrew Meadows
7a222dff1d
move one-liner isEnabled() to header
2015-04-27 09:54:58 -07:00
Seth Alves
26511575c2
Merge branch 'master' of github.com:highfidelity/hifi into detect-ballistic
2015-04-27 06:44:59 -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
48ec0c8339
formatting, re-enable code that causes an interface to attempt to claim a moving object with no current simulation-owner
2015-04-25 06:56:19 -07:00
Atlante45
ba507cef98
Fix a few warnings
2015-04-25 11:01:02 +02:00
Seth Alves
218393a2b3
rather than keeping track of previous pos/rot sent by server, use a new flag that indicates that the values should be updated in the physics engine, but that the object should not be woken
2015-04-24 17:37:19 -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
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
Seth Alves
fea8d84618
sync
2015-04-24 14:09:10 -07:00
Seth Alves
ad85837b5a
sync
2015-04-24 13:44:34 -07:00
Andrew Meadows
f09a67af6c
don't need temp variable
2015-04-24 13:26:26 -07:00
Andrew Meadows
c4395e75bb
cleanup and comments
2015-04-24 13:26:26 -07:00
Seth Alves
902e84c711
sync
2015-04-24 13:10:38 -07:00
Seth Alves
a27f8f3f10
sync
2015-04-24 11:28:44 -07:00
Seth Alves
926694517f
sync
2015-04-24 11:07:45 -07:00
Seth Alves
1b84be6e10
attempting to have visual indicator of simulatorID
2015-04-24 10:55:43 -07:00
Andrew Meadows
80d3f35b2e
Controller disabled when not in physics engine
2015-04-24 09:57:22 -07:00
Seth Alves
6fdbce9ee3
oops
2015-04-24 09:29:57 -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
7781808bea
remove debug prints, fix a comment
2015-04-22 15:25:09 -07:00
Seth Alves
6678922f5c
put back code for interface giving up simulator status when something stops
2015-04-22 15:09:56 -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
69ee33a392
experimenting
2015-04-22 13:29:28 -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
a6750eafd8
experimenting
2015-04-22 13:03:59 -07:00
Seth Alves
dc30ca0210
experimenting
2015-04-22 12:51:29 -07:00
Seth Alves
41166c1a42
allow entity server to time-out entity-simulation ownership rather than having interfaces give it up
2015-04-22 11:18:18 -07:00
Seth Alves
32673efc80
compute collision events inside lock to avoid a rare crash
2015-04-22 10:51:45 -07:00
Seth Alves
3f705f3172
keep track of the number of simulation steps each entity has been accelerated at nearly its gravity. if we get 4 in a row, start sending acceleration equal to gravity to the entity server, so it will include gravity in its estimates
2015-04-22 10:39:13 -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
cde64893af
coding standard
2015-04-21 18:36:06 -07:00
Seth Alves
4a5631fca6
cleanups, diff minimization
2015-04-20 16:51:28 -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
Seth Alves
08d300afcd
use a flag to indicate that simulation ownership should be grabbed
2015-04-20 11:49:10 -07:00
Seth Alves
88f289f3c1
small cleanup and some debugging prints
2015-04-20 11:19:48 -07:00
Seth Alves
fbff3627dc
attempt to claim simulation ownership of entities the avatar crashes with
2015-04-20 11:13:51 -07:00
Seth Alves
b3cb9fe9a4
fix comment some more
2015-04-17 15:33:41 -07:00
Seth Alves
dac57c44da
if measured acceleration is close to zero, send zero to entity server, else send gravity
2015-04-17 15:05:47 -07:00
Seth Alves
292ba20cf3
pull andrew's measure-acceleration branch
2015-04-17 11:35:12 -07:00