Andrew Meadows
58bb137c4d
bulletRotationStep --> computeBulletRotationStep
2015-01-27 17:37:12 -08:00
Andrew Meadows
23bd3f90d9
Bullet-style rotation integration for kinematics
...
and for dead reckoning after wire-transfer
2015-01-27 17:27:15 -08:00
ZappoMan
23892ab1e7
fixed comments
2015-01-27 11:38:14 -08:00
ZappoMan
b1586d4f90
move debug into ifdef
2015-01-27 11:29:17 -08:00
ZappoMan
45dbff67f8
more hacking
2015-01-27 11:15:33 -08:00
ZappoMan
83d1cc911a
hacking
2015-01-26 19:38:24 -08:00
ZappoMan
02c0700db3
support for skipping forward on new edit packets from server
2015-01-26 17:25:06 -08:00
ZappoMan
81185cfe56
removed some debugging
2015-01-26 12:46:22 -08:00
ZappoMan
a1ec44b8e0
add developer menu item to disable sending physics updates
2015-01-26 12:05:57 -08:00
ZappoMan
73b9c06ec0
added some debugging
2015-01-26 11:13:30 -08:00
Andrew Meadows
eb4678659a
remove EntityItem::getDistanceToBottomOfEntity()
...
and also isRestingOnSurface()
2015-01-23 15:56:44 -08:00
ZappoMan
9cc61e90f7
Merge branch 'master' of https://github.com/highfidelity/hifi into fixGlitches
...
Conflicts:
libraries/entities/src/EntityItem.cpp
2015-01-23 15:01:35 -08:00
ZappoMan
fa485d21b7
added comment
2015-01-23 13:52:28 -08:00
ZappoMan
3c38a9eb53
add last simulated to the protocal
2015-01-23 13:32:38 -08:00
Andrew Meadows
36c20c24fe
fix for velocity in units of domain size
2015-01-23 13:20:12 -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
ZappoMan
838a549abe
debugging stutter
2015-01-22 13:31:09 -08:00
ZappoMan
14c7dc8eb9
debugging stutter
2015-01-22 13:13:18 -08:00
Philip Rosedale
1ff90bec5d
Merge pull request #4124 from AndrewMeadows/inertia
...
support for simple kinematic motion
2015-01-16 13:33:44 -08:00
Andrew Meadows
4392af3b3a
Remove pre-Bullet server-side EntityItem motion
2015-01-16 09:26:43 -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
ccc50dd94f
use density instead of mass
2015-01-14 15:47:44 -08:00
Andrew Meadows
03b8badd81
EntityItem stores density rather than mass.
2015-01-14 15:00:57 -08:00
Andrew Meadows
04b4a95ccb
fix for bad cleanup (3 places)
2015-01-13 14:21:41 -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
7a2ecd27fd
fix typo
2015-01-12 14:32:32 -08:00
Andrew Meadows
bece05a994
entity prop defaults move to their own header
2015-01-12 11:49:31 -08:00
Andrew Meadows
e711b86519
scale DEFAULT_DIMENSIONS correctly
...
also remove a block of commented out cruft
2015-01-10 19:07:58 -08:00
Andrew Meadows
1184f5b668
merge upstream/master into andrew/inertia
2015-01-10 12:45:14 -08:00
Andrew Meadows
25e64d619c
move statics out of EntityItem
...
This makes for much more readable core dumps
2015-01-10 11:46:42 -08:00
Andrew Meadows
99e1fdd46e
fix for EntityServer crash
...
adding EntityItem::_element backpointer for easier add/remove logic
2015-01-10 07:44:26 -08:00
Andrew Meadows
4946ec18b6
remove some TODO comments
2015-01-09 09:28:01 -08:00
Andrew Meadows
b0b2eb5d38
use exact equality for filtering dimension changes
2015-01-08 11:09:32 -08:00
Andrew Meadows
af9bafae87
fix typo
2015-01-07 12:48:16 -08:00
Andrew Meadows
1745548665
fix rapid attenuation of angular velocity
2015-01-07 12:42:50 -08:00
Andrew Meadows
162854c5a5
Merge pull request #4025 from ZappoMan/voxelEctomy
...
Voxel ectomy
2015-01-05 13:20:30 -08:00
Andrew Meadows
6fb4e1f622
oops, need to update angularVelocity after damping
2015-01-05 12:23:55 -08:00
Andrew Meadows
bf6b8f9ca7
do not zero small velocities for non-bullet case
2015-01-05 12:01:09 -08:00
Andrew Meadows
3b7770f405
change meaning of damping to agree with bullet
...
0 = no damping
1 = 100% damping
The new formula is: velocity *= (1 - damping)^dt
2015-01-05 11:23:01 -08:00
Andrew Meadows
d032eab0de
merge upstream/master into andrew/inertia
2015-01-05 09:19:37 -08:00
Atlante45
022beff569
Initialize entities' _locked and _script
2015-01-02 12:37:00 -08:00
Andrew Meadows
0d3e78fdb8
modify extrapolation behavior when bullet enabled
...
Allows Bullet to specify an object as "at rest"
by setting velocity to zero.
Also, moved velocity damping above position integration
to get the same order of operations as Bullet.
2014-12-31 16:32:09 -08:00
ZappoMan
9630279459
Merge branch 'master' of https://github.com/highfidelity/hifi into voxelEctomy
...
Conflicts:
examples/editVoxels.js
examples/fallingSand.js
examples/growTrees.js
interface/src/Application.cpp
interface/src/Application.h
libraries/avatars/CMakeLists.txt
libraries/entities/src/EntityItem.h
2014-12-31 10:50:53 -08:00
ZappoMan
4ea9bbc309
first major pass at voxelEctomy
2014-12-30 18:08:58 -08:00
Andrew Meadows
da551a0a76
restore script change detection to what it was
2014-12-30 11:56:39 -08:00
Andrew Meadows
ba873deb49
ignore Entity updates that don't change anything
2014-12-30 11:38:24 -08:00
Andrew Meadows
97f44b64fc
assert NULL EntityItem::_physicsInfo in dtor
2014-12-29 15:27:54 -08:00
Andrew Meadows
dab1f026d7
simpler EntityItem::simulate() bypass for bullet
2014-12-18 13:56:18 -08:00
Andrew Meadows
85fd1fc14f
merge andrew/thermonuclear into andrew/inertia
...
Conflicts:
interface/src/Application.cpp
libraries/entities/src/EntityItem.cpp
2014-12-18 13:46:06 -08:00
Andrew Meadows
28381a3b70
cleanup of EntityItem::_created timestamp logic
...
EntityItem::_created initializes to 0 in ctor
and must be set either by EntityItemProperties (via server update)
or manually whenever a script creates a fresh entity
2014-12-18 11:39:02 -08:00
Andrew Meadows
756d09d895
fix typo that broke the build
2014-12-17 16:06:15 -08:00
Andrew Meadows
75d468da9e
set _lastEdited to _created rather than to zero
2014-12-17 15:59:16 -08:00
Andrew Meadows
44ebf37510
handle case where obj at rest but still falls
2014-12-17 15:52:34 -08:00
Andrew Meadows
1e5c44f117
accept changes with the same Edit timestamp
2014-12-17 15:48:49 -08:00
Andrew Meadows
547c4cdaf9
make non-bullet entity simulation work again
2014-12-17 14:52:38 -08:00
Andrew Meadows
6ea766b48d
merge andrew/thermonuclear into andrew/inertia
...
Conflicts:
interface/src/Application.cpp
libraries/entities/src/EntityItem.cpp
libraries/entities/src/EntityTypes.cpp
2014-12-17 13:21:00 -08:00
Andrew Meadows
8de309a7a9
more correct _created and _lastEdited
2014-12-17 12:38:26 -08:00
Andrew Meadows
e36ee2a961
more correct creation and edit times for entities
2014-12-17 12:19:34 -08:00
Andrew Meadows
0f488bca02
differentiation btw _lastEdited and _lastSimulated
2014-12-15 14:28:53 -08:00
Andrew Meadows
3fd2f12a73
merge upstream/master into andrew/inertia
...
Conflicts:
libraries/entities/src/EntityItem.cpp
libraries/entities/src/EntityItem.h
libraries/entities/src/EntitySimulation.h
libraries/entities/src/EntityTree.cpp
libraries/entities/src/EntityTreeElement.cpp
libraries/entities/src/SimpleEntitySimulation.cpp
libraries/entities/src/SimpleEntitySimulation.h
libraries/entities/src/SphereEntityItem.cpp
2014-12-09 12:41:53 -08:00
Andrew Meadows
3ce1d4a38d
set dirty bit when script changes simulation stuff
...
also fixes for linear and angular damping
2014-12-08 11:21:01 -08:00
Andrew Meadows
7d96ad5836
cleanup of EntitySimulation API
...
* remove EntityItem::_simulationState (only useful to EntitySimulation)
* move code from SimpleEntitySimuation to EntitySimulation
* EntitySimulation now maintans many QSets of entities
* cleanup and clarify use of EnityTree::updateEntity()
* reduced cost of polling for entity expiries
* changed "UpdateFlags" to "DirtyFlags" and clarified what they're for
2014-12-05 18:08:53 -08:00
Andrew Meadows
85e7c6166b
support for spherical entities
2014-12-03 12:10:26 -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
ec1f11c1a8
route more entity updates into physics engine
2014-11-24 11:21:40 -08:00
Andrew Meadows
51da678675
update entity MotionType when it changes
2014-11-19 17:05:31 -08:00
Andrew Meadows
8bd3779d7d
merge andrew/thermonuclear into andrew/inertia
...
Conflicts:
libraries/entities/src/EntityItem.h
2014-11-19 15:55:10 -08:00
Andrew Meadows
11e7339e9e
add UPDATE_COLLISION_GROUP and UPDATE_MOTION_TYPE
2014-11-19 15:52:57 -08:00
Andrew Meadows
961dc5a231
merge andrew/thermonuclear into andrew/inertia
...
Conflicts:
libraries/entities/src/EntityItem.cpp
libraries/entities/src/EntityItem.h
2014-11-19 15:41:53 -08:00
Andrew Meadows
97d1dc4200
use updateFoo() where entity properties need relay
...
clear EntityItem updateFlags when processed
2014-11-19 15:12:22 -08:00
Andrew Meadows
a183248f38
add updateFoo() methods that accumulate flags
...
about properties that have changed
2014-11-19 14:12:26 -08:00
Andrew Meadows
3b85805048
add EntityItem::updateFoo() methods that set flags
...
when properties are actually changed
2014-11-19 14:01:55 -08:00
Andrew Meadows
388830c2a2
Merge branch 'bispinor' into inertia
...
Conflicts:
interface/src/entities/RenderableModelEntityItem.cpp
libraries/entities/src/BoxEntityItem.cpp
libraries/entities/src/EntityItem.cpp
libraries/entities/src/EntityItem.h
libraries/entities/src/EntityTree.cpp
libraries/entities/src/EntityTree.h
libraries/entities/src/EntityTreeElement.cpp
2014-11-18 10:23:38 -08:00
Andrew Meadows
af606f01a9
combined SimulationStates Moving and Changing
...
also funnel entity updates by UDP packet through a single list
2014-11-17 17:35:44 -08:00
Andrew Meadows
dd0bdabfe1
setSimulationState() --> computeSimulationState()
2014-11-17 15:50:35 -08:00
Andrew Meadows
5eb606c44a
merge upstream/master into andrew/inertia
2014-11-14 09:04:27 -08:00
Atlante45
9fc7451581
Move macros to the end
2014-11-13 17:06:57 -08:00
Atlante45
40576b3c03
moved append to the end
2014-11-13 17:02:45 -08:00
Atlante45
f8be98260c
String specific macros
2014-11-13 16:32:15 -08:00
Atlante45
f47620231e
Entities have user data
2014-11-13 16:16:20 -08:00
Andrew Meadows
66857b823f
EntityTree has a PhysicsWorld
2014-11-11 17:34:00 -08:00
Andrew Meadows
fa48da6c98
merge upstream/master into andrew/inertia
...
Conflicts:
libraries/entities/src/EntityItem.cpp
2014-11-11 11:14:12 -08:00
Andrew Meadows
053b16783c
initial impl of PhysicsWorld::addEntity()
2014-11-06 16:42:07 -08:00
ZappoMan
5333f0eb19
quiet some debug
2014-11-06 13:45:30 -08:00
ZappoMan
2b62402a57
possible fix for entities not always updating bug
2014-11-06 13:17:46 -08:00
ZappoMan
c650cabb5d
support for locked property, some plumbing for textures property
2014-10-30 10:05:20 -07:00
ZappoMan
729e40881d
removed some old debug
2014-10-02 17:55:55 -07:00
ZappoMan
e65f383b25
add localRenderAlpha property to entities
2014-10-01 09:43:03 -07:00
ZappoMan
2d81d7c554
add support for ignore collisions and collisions will/wont move entities
2014-09-26 11:43:56 -07:00
ZappoMan
9cd76983a2
swith to using shape collider instead of spheres
2014-09-25 14:35:20 -07:00
ZappoMan
4b52fddffd
collions with voxels and avatars
2014-09-24 17:37:56 -07:00
ZappoMan
f43ba4a68b
first cut at getting entities to collide
2014-09-24 15:28:04 -07:00
ZappoMan
e8c1cb7db8
read old format files correctly
2014-09-12 09:38:35 -07:00
ZappoMan
4bce7f8c0b
removed debug
2014-09-12 08:14:28 -07:00
ZappoMan
54ef5d4698
fixed bugs in MovingEntitiesOperator, improved getDistanceToBottomOfEntity, isRestingOnSurface
2014-09-12 07:45:33 -07:00
ZappoMan
695569b64b
reconcile use of getAACube() and handle rotations properly
2014-09-11 16:43:53 -07:00
ZappoMan
9f4d199440
move bound proxy rendering to EntityTreeRedering, added helper functions for various bounding boxes
2014-09-11 15:36:13 -07:00
ZappoMan
f00947ada7
handle registration point in rendering of box, sphere, and model entities
2014-09-11 08:33:41 -07:00
ZappoMan
a3e47aa301
fix angular velocity damping so we don't get bad quats
2014-09-10 17:46:50 -07:00
ZappoMan
8023735eb3
changed rotational to angular and added angular damping
2014-09-10 14:46:27 -07:00
ZappoMan
f33690cc38
fix velocity and gravity to be in meters
2014-09-10 11:55:23 -07:00
ZappoMan
bb52c4a1b3
store angular valocity as 3 vector
2014-09-10 11:28:45 -07:00
ZappoMan
53da483381
more work on visible, registration point, and rotational velocity
2014-09-10 09:05:46 -07:00
ZappoMan
fac7d20c8a
basic support for PROP_REGISTRATION_POINT, PROP_ROTATIONAL_VELOCITY, and PROP_VISIBLE
2014-09-09 20:38:58 -07:00
ZappoMan
b78b8ccbb0
first cut at replacing radius with dimensions
2014-09-09 13:33:05 -07:00
ZappoMan
0acbefb6a2
fix but in getMyChildContaining and performance improvement to moving entities
2014-09-03 08:06:42 -07:00
ZappoMan
446daa81a5
fix issue of server clock skew changing without breaking animation and moving
2014-09-02 20:01:41 -07:00
ZappoMan
e8b1497d60
revert to old _lastUpdated behavior to fix animations and movement
2014-09-02 19:28:33 -07:00
ZappoMan
10d581925c
DRY up the property reading code by using macro for repeated pattern
2014-09-02 10:31:26 -07:00
ZappoMan
799931aa6c
DRY up the property setting code by using macro for repeated pattern
2014-09-02 09:30:28 -07:00
ZappoMan
033017346c
removed debug code
2014-09-02 08:53:19 -07:00
ZappoMan
2b5d631290
removed a ton of old dead debug code
2014-09-02 08:44:43 -07:00
ZappoMan
f16a48e187
quiet some debugging
2014-09-01 22:38:18 -07:00
ZappoMan
b244e78af4
working on addressing issues with sibling cells and server clock skew causing some properties to be ignored
2014-09-01 21:48:03 -07:00
ZappoMan
93511616d6
prevent editing of entities out of doamin
2014-08-28 21:54:25 -07:00
ZappoMan
eab9f391ee
fix getProperties() for age
2014-08-28 14:02:05 -07:00
ZappoMan
76c77d6994
first cut at properly working lifetime
2014-08-28 13:46:54 -07:00
ZappoMan
2f90df04ee
correct cleanup of Models/geometry and all EntityItems for various cases
2014-08-27 15:45:45 -07:00
ZappoMan
5c2b674a0d
verify delete behavior actually frees memory associated with EntityItems
2014-08-27 12:07:11 -07:00
ZappoMan
3e5af5e815
removed some debug
2014-08-26 10:45:40 -07:00
ZappoMan
d6873f7b6c
added some debugging for referentials
2014-08-25 14:48:08 -07:00
ZappoMan
58759d344f
cleanup in prep for PR
2014-08-25 10:56:43 -07:00
ZappoMan
75bb42fb73
debug cleanup
2014-08-22 10:54:00 -07:00
ZappoMan
ef86d86234
split out entity rendering into subclasses, improved rendering of models
2014-08-20 15:49:50 -07:00
ZappoMan
960e9eb2f4
debugging tweaks
2014-08-19 09:43:09 -07:00
ZappoMan
daffb00bf2
build issues fixed after merge
2014-08-18 15:41:20 -07:00
ZappoMan
49cf6dff3a
more DIDNT_FIT logic improvements/fixes
2014-08-18 14:09:01 -07:00
ZappoMan
84ba810dc4
work on reseved bytes in octree packet data
2014-08-15 11:26:55 -07:00
ZappoMan
49e616dd49
first cut at using erase entity message to delete entities
2014-08-13 14:11:56 -07:00
ZappoMan
3551bd676f
quiet a lot of debugging, fix issue with updating entities that overhang the domain bounds
2014-08-12 13:14:28 -07:00
ZappoMan
466b4c5e40
add some basic support for coming to a rest on the ground plane in case of downward gravity
2014-08-11 14:52:19 -07:00
ZappoMan
b89c740e17
improved velocity behavior, handling lastUpdated better, changing state when velocity reaches zero
2014-08-11 11:56:05 -07:00
ZappoMan
7c8163c475
first cut at getting velocity to work in entity base class
2014-08-11 10:36:03 -07:00
ZappoMan
a96aa5f937
clean up subclass properties, properly handle new baseclass props like damping
2014-08-10 14:20:37 -07:00
ZappoMan
55e12baf78
more base class properties work
2014-08-08 18:06:16 -07:00
ZappoMan
2892c37210
implement readEntitySubclassDataFromBuffer() for EntityItem
2014-08-08 17:55:56 -07:00
ZappoMan
90c7989765
implement appendSubclassData() for EntityItem
2014-08-08 17:38:26 -07:00
ZappoMan
b509eed59a
more property work
2014-08-08 16:20:03 -07:00
ZappoMan
f899dc1f79
moving entity edit packet encode/decode to the EntityItemProperties class
2014-08-08 15:41:55 -07:00
ZappoMan
d50a607bc7
started support for new entity base class properties like velocity, gravity, damping, and lifetime
2014-08-08 11:38:03 -07:00
ZappoMan
6f479a1026
convert IDs to UUIDs
2014-08-07 17:02:11 -07:00
ZappoMan
f1d2017a9e
getting animation working again
2014-08-07 12:50:02 -07:00
ZappoMan
e540bef672
more hacking on rendering of virtual entities
2014-08-06 09:12:14 -07:00
ZappoMan
e9db4fd120
registration of multiple entity types: Model and Box
2014-08-05 12:10:17 -07:00
ZappoMan
273853ef24
more work on virtual entities
2014-08-04 16:18:24 -07:00
ZappoMan
23aa5a124e
fix up lastEdited behavior
2014-07-31 11:41:18 -07:00
ZappoMan
76ae4c9721
quiet logs
2014-07-29 16:54:21 -07:00
ZappoMan
4655612cdb
handle moving of existing entities in case of inbound data from server causing entities to move to new elements
2014-07-29 15:50:17 -07:00
ZappoMan
0c7afc39ca
refactoring EntityItemID management and id assignment to be part of EntityItemID class instead of EntityItem class
2014-07-17 10:24:32 -07:00
ZappoMan
1125cb183e
splitting up a bunch of Entity classes into different files
2014-07-16 09:25:54 -07:00
ZappoMan
d4a8711ff6
more hacking on edit packets
2014-07-15 11:42:46 -07:00
ZappoMan
61d998d2ad
tweaks
2014-07-15 10:29:29 -07:00
ZappoMan
3c4f5f88d0
checkpoint on virtual entities
2014-07-09 18:24:31 -07:00
ZappoMan
3145d150f3
more work on virtual entities, unit tests passing woot
2014-07-07 12:56:32 -07:00
ZappoMan
29e02f2681
more hacking on virtualizing entities
2014-07-07 09:36:31 -07:00
ZappoMan
5e5af9ceea
hacking on more support for virtual entities
2014-07-03 10:44:34 -07:00
ZappoMan
2c5209d1e7
virtual entities checkpoint
2014-07-03 09:07:11 -07:00
ZappoMan
84101fce2c
naming cleanup and organizational tweaks
2014-07-02 11:22:56 -07:00
ZappoMan
fe30d3807c
more renaming to entity from model where we're really talking about an entity
2014-07-01 17:07:16 -07:00
ZappoMan
865566414c
Merge branch 'master' of https://github.com/worklist/hifi into renameModelsToEntities
...
Conflicts:
interface/src/entities/EntityTreeRenderer.cpp
libraries/entities/src/EntityItem.h
libraries/models/src/ModelItem.cpp
libraries/models/src/ModelTree.cpp
libraries/models/src/ModelTreeElement.cpp
libraries/models/src/ModelsScriptingInterface.cpp
tests/octree/CMakeLists.txt
tests/octree/src/ModelTests.cpp
2014-07-01 16:32:47 -07:00
ZappoMan
b113c2d55c
fix readEntityIDFromBuffer
2014-06-27 11:56:59 -07:00
ZappoMan
d618b4226b
entity type work, and byte coding for id and type
2014-06-27 10:53:55 -07:00
ZappoMan
ad7a768fff
more renaming work
2014-06-27 09:14:17 -07:00
ZappoMan
c4fe36b13d
more Models->Entities renaming
2014-06-26 17:01:07 -07:00