Commit graph

2638 commits

Author SHA1 Message Date
LaShonda Hopper
5bc38bd7f0 [WL21389] Collision Shapes need to be updated (details below).
Revised approach involves creating a helper function within ShapeFactory to aid
in devising the ShapeType to be used by an ShapeEntityItem for collision.  The
ShapeFactory is currently doing this for creating the actual Bullet Library
collision shapes.

ShapeEntityItem overrides its virtually inherited computeShapeInfo which
in turn calls the new ShapeFactory helper function.

ShapeEntityItem has a new memvar _collisionShapeType to cache its actual
ShapeType used by the physics system.  This memvar is returned via the getShapeType
accessor which is expected to return an object's ShapeType.

Note(s):
    This is similar to the original approach save translation between entity::Shape and ShapeType
    isn't tied to the EntityItemProperties shapeTypeNames or shapeType. This approach more
    directly solves the issue of getting the actual ShapeType used by the time it's needed
    to determine the bullet collision object type created when initializing the physic information.

    Translation of the ShapeEntityItem's entity::Shape to its ShapeType is handled by
    ShapeFactory which handles creating the bullet collision objects when setting up
    physics on the ShapeEntityItems.

Known Issue(s):
    This doesn't compile.  It appears that the Entity Library needs to know about
    the Physics Library.  The naive attempt at providing that link failed to resolve
    all compilation issues.

    Current Error:
    C1083: Cannot open include file: btBulletDynamicsCommon.h:
    No such file or directory (C:\projects\cusack\libraries\entities\src\ShapeEntityItem.cpp)
       C:\projects\cusack\libraries\physics\src\ShapeFactory.h	15	1	entities

	modified:   libraries/entities-renderer/src/RenderableShapeEntityItem.cpp
	modified:   libraries/entities/CMakeLists.txt
	modified:   libraries/entities/src/ShapeEntityItem.cpp
	modified:   libraries/entities/src/ShapeEntityItem.h
	modified:   libraries/physics/src/ShapeFactory.cpp
	modified:   libraries/physics/src/ShapeFactory.h
	modified:   libraries/physics/src/ShapeInfo.cpp
	modified:   scripts/developer/tests/basicEntityTest/entitySpawner.js
	new file:   scripts/developer/tests/basicEntityTest/shapeSpawner.js
2017-07-25 14:43:07 -04:00
Dante Ruiz
7fe47e4e2f Merge branch 'master' of github.com:highfidelity/hifi into bug/delete-avatar-entity 2017-07-18 16:51:41 +01:00
Dante Ruiz
d504000604 made requested changes 2017-07-18 16:51:21 +01:00
Brad Hefta-Gaub
d94365cc44 Merge pull request #10979 from zfox23/hoverOverlay_lasers
Create/Destroy Hover Overlays using hand controller lasers
2017-07-18 08:44:48 -07:00
Andrew Meadows
5f4df0da2b Merge pull request #10847 from AndrewMeadows/entitymap
faster EntityItem lookup by EntityItemID
2017-07-18 08:04:37 -07:00
Dante Ruiz
21d760a533 make sure to lock data 2017-07-17 22:11:05 +01:00
Dante Ruiz
282b364fad Merge branch 'master' of github.com:highfidelity/hifi into bug/delete-avatar-entity 2017-07-17 21:28:17 +01:00
Dante Ruiz
f6208a394c delete avatar entity when switching domains 2017-07-17 21:27:55 +01:00
Zach Fox
974dff36b0 Make hover overlays work for hand controller lasers 2017-07-17 13:16:53 -07:00
Zach Fox
19b42b0180 CR feedback 2017-07-17 13:15:23 -07:00
Zach Fox
4b9797c179 Comment explaining category debugs 2017-07-17 11:35:27 -07:00
Zach Fox
0a4ab23356 Remove unnecessary include 2017-07-17 11:32:47 -07:00
Zach Fox
147474e19a Logging category and filter 2017-07-17 11:17:59 -07:00
Zach Fox
19d5b8750a Cleanup logging 2017-07-17 09:51:00 -07:00
Zach Fox
e602d3610e Initial commit for HoverOverlayInterface 2017-07-14 17:26:53 -07:00
Andrew Meadows
c7ec82f98a use local copy of _element for thread safety 2017-07-13 13:30:57 -07:00
Andrew Meadows
8fc4d1f43e make UNEXPECTED logs warnings 2017-07-13 13:30:57 -07:00
Andrew Meadows
02bc9b9610 minimize the lock context 2017-07-13 13:30:57 -07:00
Andrew Meadows
f71ef554b7 use copy of _entityMap for debug logging 2017-07-13 13:30:57 -07:00
Andrew Meadows
fe79514b08 lock when changing EntityTree elements 2017-07-13 13:30:57 -07:00
Andrew Meadows
a0c6c49360 bump some "debug" messages to "warning" status 2017-07-13 13:30:57 -07:00
Andrew Meadows
39e5259e03 remove unused variable 2017-07-13 13:30:57 -07:00
Andrew Meadows
7ea1e7285f map EntityItemID to EntityItemPointer 2017-07-13 13:30:57 -07:00
Brad Davis
6fc82bb351 Switch to preprocessor macro for blocking invokes to capture function information 2017-06-30 11:36:24 -07:00
Brad Davis
b52dd7b822 Don't use blocking connections on the main thread 2017-06-29 20:45:17 -07:00
Seth Alves
794495c197 make ResourceManager be owned by DependencyManager 2017-06-28 14:18:14 -07:00
Brad Davis
8130a91b8c Cleanup entity dependencies 2017-06-27 19:15:49 -07:00
Seth Alves
428dc81083 Merge pull request #10696 from AndrewMeadows/avoid-ownership-bid-race
ignore remote update younger than recent ownership bid
2017-06-20 10:42:54 -07:00
Brad Davis
a69cf31f4b PR feedback and cmake fixes 2017-06-16 16:59:58 -07:00
Brad Davis
fece438602 Cleanup and refactoring 2017-06-15 18:58:56 -07:00
Andrew Meadows
8d19395b0a ignore remote update younger than recent bid 2017-06-14 16:04:52 -07:00
Andrew Meadows
29a05d7eb4 bid immediately when creating new entity
also clear EntityMotionState::_numInactiveUpdates on new ownership
2017-06-01 17:39:21 -07:00
Andrew Meadows
c56a6c44f8 minor formatting fix 2017-06-01 17:39:21 -07:00
samcake
6dbbd6c8d0 Merge branch 'master' of https://github.com/highfidelity/hifi into brown 2017-05-25 11:25:46 -07:00
Brad Hefta-Gaub
5af95c8fdf Merge pull request #10476 from sethalves/fix-imported-children-querybox
fix up queryAACubes before sending imported entities to server
2017-05-25 08:29:23 -07:00
samcake
e7b808cbc1 Merging with upstream 2017-05-23 12:12:31 -07:00
Stephen Birarda
cecbf43129 make server entity scripts respect script whitelist 2017-05-22 16:17:01 -07:00
Seth Alves
381de7a1e2 tabs 2017-05-21 08:42:53 -07:00
Seth Alves
c68efc2ed0 treat locked like other properties that affect simulation 2017-05-21 08:29:35 -07:00
Seth Alves
2512b39848 don't dirty motion-type if lock value isn't actually changing 2017-05-20 14:14:33 -07:00
Seth Alves
8f38ea8c6a force locked entities to be static in bullet 2017-05-20 11:54:42 -07:00
Seth Alves
a442181859 remove some redundancy 2017-05-20 08:51:44 -07:00
Seth Alves
5c94147f40 children collision hulls appear to be in the right place, now 2017-05-19 17:09:42 -07:00
Seth Alves
67f222cb3f be more careful about fixing up entities which arrived before their parents 2017-05-19 15:19:16 -07:00
Seth Alves
386c76545c be more careful about fixing up entities which arrived before their parents 2017-05-19 14:21:05 -07:00
Seth Alves
54dafa0f83 be more careful about fixing up entities which arrived before their parents 2017-05-19 14:14:00 -07:00
Seth Alves
5c93dbd20d be more careful about fixing up entities which arrived before their parents 2017-05-19 13:48:29 -07:00
Seth Alves
936d0e2d50 be more careful about fixing up entities which arrived before their parents 2017-05-19 12:13:43 -07:00
Seth Alves
735e4b7d05 trying to get child collision hulls to be in the right place after import 2017-05-19 10:59:59 -07:00
Seth Alves
7220fe0ad8 set more physics flags dirty when an entity parent is found 2017-05-19 10:40:24 -07:00