Commit graph

964 commits

Author SHA1 Message Date
Andrew Meadows
08bba5f45f add and remove some profile data points 2017-01-26 08:35:25 -08:00
Seth Alves
be8bc9652b Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui 2017-01-23 09:44:04 -08:00
Andrew Meadows
9631864ae2 make soft attachments cauterized for MyAvatar 2017-01-19 12:56:07 -08:00
Andrew Meadows
bfbef91f53 re-enable cauterization of meshes for MyAvatar 2017-01-19 12:56:07 -08:00
Andrew Meadows
1a3fa84985 add newline at EOF 2017-01-19 12:56:07 -08:00
Seth Alves
eb25e1c12d Merge branch 'master' of github.com:highfidelity/hifi into tablet-ui 2017-01-19 09:41:49 -08:00
Seth Alves
7c938728e5 don't do constant haptics if stylus touches tablet frame. home button triggers only once per click 2017-01-18 16:56:39 -08:00
Seth Alves
c6d0c0909e avoid unthreadsafe use of getJointIndex 2017-01-18 14:54:38 -08:00
samcake
246dcbd0c0 Removing the warning 2017-01-17 15:01:27 -08:00
Seth Alves
be165b567e remove XXX comments 2017-01-17 13:32:58 -08:00
Seth Alves
e76f1c5937 if another avatar has something hung from their camera, don't act like their camera is my camera 2017-01-17 13:28:13 -08:00
samcake
83d1c3ad01 Adding support for the meta rendering 2017-01-16 17:47:58 -08:00
Anthony J. Thibault
9db6806026 In desktop mode, tablet is in front of camera.
* added a new fauxJointIndex for the camera. CAMERA_MATRIX_INDEX = -7
  this can be used to attach objects to the camera.
* WebTablet.js has been changed to detect when entering and exiting HMD mode
  to move the tablet appropriately.

There's a known bug with the tablet entity position lagging the camera by one frame.
2017-01-10 11:31:45 -08:00
Zach Fox
dec41f67cc Fix bugs and generally fix behavior 2017-01-06 13:58:23 -08:00
Zach Fox
495925a017 This behavior was harder to change than expected... 2017-01-05 16:58:32 -08:00
Zach Fox
800389cf20 Remove HRS logging 2016-12-28 14:37:19 -08:00
howard-stearns
7faa689d1d avatar body goes away when ignored, and comes back when unignored 2016-12-27 10:17:39 -08:00
howard-stearns
768b747b3a Make avatar go away when ignored, even when pal is up. (But currently, it
comes back!)
2016-12-27 10:17:39 -08:00
Andrew Meadows
b3be7f0f3e restore expensive version of Avatar::updatePalms() 2016-12-22 10:42:05 -08:00
Andrew Meadows
3830649990 remove debugging and profiling 2016-12-21 10:55:59 -08:00
Andrew Meadows
8ab6974233 optimizations for processing avatar joint data 2016-12-21 10:55:59 -08:00
Andrew Meadows
4d711d869c cleanup 2016-12-20 14:45:11 -08:00
Andrew Meadows
1788d19260 remove some debug code 2016-12-20 14:00:25 -08:00
Andrew Meadows
03114fa610 add AvatarsPerSec trace stats 2016-12-20 11:45:21 -08:00
Andrew Meadows
ee6a9f4506 adding profile stats relating to avatar CPU costs 2016-12-16 13:41:31 -08:00
Stephen Birarda
53769f4edf change scale for avatar if domain limited scale changes 2016-11-10 14:58:04 -08:00
Brad Hefta-Gaub
770bf35d2b CR feedback 2016-11-09 14:31:18 -08:00
Brad Hefta-Gaub
cf3d1011f4 remove scripts from avatar attached entities for other avatars 2016-11-09 12:26:57 -08:00
Seth Alves
f47aeae2a7 stop passing bare pointers to EntityTreeRenderer all around 2016-10-27 10:10:22 -07:00
Brad Hefta-Gaub
bf732127ca Merge pull request #8856 from jherico/geometry_ids
Remove the use of implicit ids in geometry cache
2016-10-20 08:14:49 -07:00
Brad Davis
2705ee7030 Remove the use of implicit ids in geometry cache 2016-10-19 11:18:25 -07:00
Zach Pomerantz
a9bad592f9 ensure model attachment lifetimes 2016-10-18 18:01:18 -07:00
Seth Alves
39f52b3682 start on faux avatar joint that represent hand controllers 2016-08-25 10:58:23 -07:00
Anthony J. Thibault
c6ea64926c Sensor space entity support
You can do this by parenting an entity to an avatar's -2 joint index.
This will mean that the entity will follow the avatar as it moves in the world, but
will not follow the avatar's position as it moves in sensor space.  Essentially, this
gives you the ability to place objects in the user's physical room.

WebTablets now are located in this feature and no longer jitter.
2016-08-23 10:13:06 -07:00
SamGondelman
771e105fa2 Merge remote-tracking branch 'upstream/master' into loadingFade 2016-08-05 16:52:01 -07:00
SamGondelman
2eb0c7735f working on fading shape entities 2016-08-03 13:30:05 -07:00
Seth Alves
f91df4997d re-enable falling-back to default avatar if an avatar's url is bad 2016-08-02 11:55:11 -07:00
Seth Alves
56af36ae64 set head position of other avatars even if they can't be drawn 2016-08-02 11:29:43 -07:00
Seth Alves
229b8d3b5e testing a more explicit fix of the audio failure 2016-08-02 10:46:11 -07:00
Seth Alves
ed4b0b3589 call _skeletonModel.setURL, but leave our copy of _skeletonModelURL alone. This is so that we don't redo this every time we receive an identity packet from the avatar with the bad url. 2016-08-02 09:57:17 -07:00
Seth Alves
b953e6f0ff when an avatar URL fails, switch to the default 2016-08-01 18:12:30 -07:00
Seth Alves
11542aeca2 pick against avatar's capsule and then against the T-pose mesh 2016-07-07 16:36:25 -07:00
Seth Alves
9114ebb548 remove unused code 2016-06-29 09:53:26 -07:00
Seth Alves
03ed36cf33 take shape offset into account when getting avatar's capsule 2016-06-29 09:13:52 -07:00
Seth Alves
4e70e8ed42 js call to ray-pick against avatars 2016-06-28 09:55:49 -07:00
Chris Collins
b14f9cd312 Merge pull request #8041 from sethalves/fix-avatar-entity-locking
Fix avatar entity locking
2016-06-13 13:10:32 -07:00
Seth Alves
f070708b4a _avatarEntityData is accessed by more than one thread. 2016-06-08 15:53:54 -07:00
Anthony J. Thibault
9292a9ce0b Added MyAvatar.hmdLeanRecenterEnabled property
Used to disable the 'room-scale' avatar re-centering code.
Disabling this can prevent sliding when the avatar is supposed to be sitting or mounted on a stationary object.

Also, removed a bunch of old, unused leaning and torso twisting code.
2016-06-03 13:56:32 -07:00
Anthony J. Thibault
b4d14f06d8 Bugfix for avatar LOD
If an avatar was LOD'ed out, it would never become visible again, because the bounds of the skeleton model were never again.
This ensures that the model bound is updated, even when the avatar is LOD'ed away.
2016-05-26 14:35:17 -07:00
Anthony J. Thibault
a1c32f8c44 Merge branch 'master' into tony/improved-avatar-mixer-precision 2016-05-23 10:24:52 -07:00
Seth Alves
d95d3ff3ac clean up debugging prints 2016-05-20 14:56:47 -07:00
Anthony J. Thibault
b48134e30c WIP commit testing for joint mapping transmission 2016-05-18 11:40:45 -07:00
Seth Alves
cf829f1bab magic number 2016-05-17 19:14:44 -07:00
Seth Alves
c784ca9771 debugging 2016-05-11 18:45:56 -07:00
Seth Alves
fcd2e45d67 merge from upstream 2016-05-11 18:45:32 -07:00
Seth Alves
872f1b0c64 clear avatarEntity data for entities that are deleted 2016-05-10 17:48:55 -07:00
Seth Alves
de12680ff1 don't put actions on other people's avatarEntities 2016-05-10 16:43:27 -07:00
Seth Alves
b05ab1b17e set simulationOwner to be the same as the owningAvatar 2016-05-10 15:59:25 -07:00
Seth Alves
4b13fd969e split code that sends edits via avatar-mixer out of queueEditEntityMessage 2016-05-10 15:37:54 -07:00
Anthony J. Thibault
80a349c65b Merge branch 'master' into tony/improved-avatar-debug-draw 2016-05-10 14:50:13 -07:00
Seth Alves
1e849956c9 get rid of _avatarEntityChangedTime 2016-05-10 14:48:19 -07:00
Seth Alves
c572e1dc3a delete avatar-associated entities when the avatar goes away 2016-05-10 10:30:49 -07:00
Seth Alves
4c1f815870 Merge branch 'master' of github.com:highfidelity/hifi into avatar-entities-3 2016-05-10 10:09:40 -07:00
Anthony Thibault
87d513b5f8 fixed unused variable warnings 2016-05-08 18:14:18 -07:00
Anthony J. Thibault
641e152699 Eye tracking bug fix and debug rendering improvement
* Bug fix for eye tracking in HMD, the "up" orientation of your eyes now match your head.
* DebugDraw: added drawRay method.
* Application: Renamed preRender to postUpdate
* AvatarManager: added postUpdate method that iterates over all avatars.
* MyAvatar: Renamed preRender to preDisplaySide
* MyAvatar: split preRender code into postUpdate and preDisplaySide.
* Removed "Show who is looking at me", "Render focus indicator" and "Render lookat target" debug draw.
* Split "Show Look At Vectors" into "Show My Look At Vectors" and "Show Other Look At Vectors", to make it easier to debug eye tracking.
* "Show Look at Vectors" now draws the right eye red and the left eye blue.
* Removed Avatar and MyAvatar renderBody
* Removed look at rendering from head.
* GLMHelpers: Bugfix for generateBasisVectors when up primary and secondary axis were orthogonal
2016-05-08 16:20:32 -07:00
Seth Alves
0e6d9a1eec avatar mixer can relay "client-only" entities between interfaces -- the entity server wont know about them. 2016-05-07 14:48:31 -07:00
Andrew Meadows
635e2e78e3 minor cleanup 2016-05-05 18:43:08 -07:00
Andrew Meadows
71b2d647e8 add locks and explicitly copy ViewFrustums 2016-05-05 18:28:27 -07:00
Andrew Meadows
bcf2cc8074 use references not pointers for ViewFrustums
also unravelling some spaghetti:
(1) split Octree stuff out of ViewFrustum
(2) moved ViewFrustum from octree to shared lib
(3) removed some cruft
2016-05-05 18:28:27 -07:00
Anthony J. Thibault
97f836d3bb Avatar: fix for avatar meta item bound.
* In the case where a SkeletonModel was renderable, but had not actually
  created the render items yet, don't use the the rendererableMeshBound
  for the meta render item, because it hasn't been computed yet!  Instead
  wait until the render items have been added to the scene before using
  the more accurate bound...
2016-04-12 17:32:49 -07:00
Anthony J. Thibault
711a1b8c7d Avatar: update renderItems when avatar position or render mesh is in the frustum.
Previously, when render mesh was visible the renderItems they were not updated with the latest avatar mixer joints rotations and position.
This would result in a frozen avatar being visible.

Now the renderItems are updated when the render mesh is in the frustum or the bounding sphere around the avatar position is visible.
2016-04-08 13:14:50 -07:00
Anthony J. Thibault
bc967f0ab0 Model: update renderItems when items are added to the scene.
* Renamed enqueueLocationChange to updateRenderItems
* Call updateRenderItems when models are added to the scene.

This will fix entity render bounds being incorrect when they are first added to the scene,
then later being correct after a position update.

* Renamed getMeshPartBound to getRenderableMeshBound.
* Avatar now uses getRenderableMeshBound() to do boundingRadius vs frustum check.
* Model::getRenderableMeshBound now returns a more accurate bound, because it is the same one used for rendering.

This will fix avatar freezing, when they are in the corner of your frustum.
This was due to matrices not being updated because the avatar had to a small bounding sphere.
2016-03-31 14:59:27 -07:00
Zach Pomerantz
b6bf392f94 Defer avatar URL change to render thread 2016-03-30 14:39:35 -07:00
Zach Pomerantz
5d306a74d5 Merge branch 'master' of github.com:highfidelity/hifi into feat/geocaching 2016-03-25 10:09:37 -07:00
Anthony J. Thibault
ba4520fe56 Avatar: fix for Avatar animation updates while wearing HMD
The boundingSphere vs frustum check now uses the displayViewFrustum, which
more accurately reflects the actual projection matrix used for rendering.
2016-03-24 13:23:30 -07:00
Zach Pomerantz
3e9e083df5 Update users of NetworkGeometry 2016-03-24 11:35:41 -07:00
Anthony J. Thibault
7cab8f63fb Merge branch 'master' of github.com:highfidelity/hifi into tony/no-locks-no-problem 2016-03-21 16:03:33 -07:00
Anthony J. Thibault
ce47f83288 Prevent deadlock if idle is called during rendering
This extraordinary event can occur if a MessageBox is popped up by the opengl driver.

* removed AvatarData::avatarLock
* removed AvatarUpdate

This code was left over from an earlier avatar threading experiment.

Removed AvatarData avatarLock and AvatarUpdate class
2016-03-21 15:11:15 -07:00
Brad Hefta-Gaub
492e71345a Revert "Revert "Fix ModelBlender crash""
This reverts commit f274cdcc7f.
2016-03-21 11:42:25 -07:00
Brad Hefta-Gaub
f274cdcc7f Revert "Fix ModelBlender crash" 2016-03-21 10:47:31 -07:00
Brad Hefta-Gaub
917c4644a5 make SkeletonModel be shared_ptr friendly as well 2016-03-17 18:03:49 -07:00
Brad Hefta-Gaub
7483b8546b remove FaceModel, make Model support shared_from_this() so we can ave shared and weak pointers to it 2016-03-17 17:05:35 -07:00
Anthony Thibault
1e94d9bdf5 interface/src/avatar: cppcheck fixes 2016-03-13 18:56:15 -07:00
Anthony J. Thibault
807d31743c Removed Hand, HandData & PalmData
Instead, we just store two controller::Poses in MyAvatar.
Existing behavior and scripting APIs have been preserved.

The hand controller debug drawing is slightly different, but still works.
2016-03-10 19:33:31 -08:00
Seth Alves
d95d0f59cb keep removed attachment models around for one extra call to fixupModelsInScene 2016-03-09 14:36:50 -08:00
Anthony J. Thibault
9a01c93322 Avatar: fix for rendering avatar attachments 2016-02-26 14:28:27 -08:00
Andrew Meadows
f964df6c97 final names for ViewFrustum intersection tests 2016-02-25 18:09:35 -08:00
Andrew Meadows
dfdf375853 use shapeInFrustum() names again
but at the same time make the code more redable
also: add some more efficient shape-touches-view methods
and cleanup some whitespace
2016-02-25 18:09:35 -08:00
Brad Hefta-Gaub
202a456e1a Merge pull request #7126 from AndrewMeadows/cleanup
cleanup ViewFrustum method names
2016-02-25 16:12:25 -08:00
Zach Pomerantz
32ce7c6eab Rename light surfaceRadius->falloffRadius 2016-02-25 10:02:33 -08:00
Andrew Meadows
9c927ea36b ViewFrustum method renames and whitespace cleanup
fooInFrustum() --> computeFooViewLocation()
except pointInFrustum() --> computeFrustumLocation()
2016-02-25 09:11:28 -08:00
Zach Pomerantz
c2ed5e5474 Merge branch 'master' of github.com:highfidelity/hifi into fix/light-intensity 2016-02-24 16:24:09 -08:00
Andrew Meadows
8d91912d4b Merge pull request #7162 from hyperlogic/tony/controller-velocity
Improve hand controller move and throw velocity
2016-02-23 17:13:13 -08:00
samcake
1c53f9bc87 Fix the cleanup of the render::Item::ID in the EntityITem Rendereable wich were often not invalidated after beeing removed from the scene. THis caused a bug with particule system when beeing added /removed / updated quickly 2016-02-23 10:40:50 -08:00
Anthony J. Thibault
0fd260076b SixenseManager: fix velocity and angularVelocity computation
Copied the delta based computation of velocity and angularVelocity that was in
Application::setPalmData() and moved it into SixenseManager.  This will guarantee
that the velocity computation is the same as it was previously.  The goal here is
to NOT change the behavior of the hydra.

The moving average style calculation of velocities has been removed.

Removed dead code.
2016-02-22 20:05:41 -08:00
Zach Pomerantz
8ac84b3fc2 Render point/spot lights with surface radii 2016-02-22 15:07:08 -08:00
samcake
640bf81339 Forcing an update from teh avatar manager to the avatar renderItems when beeing updated 2016-02-16 17:19:31 -08:00
Anthony J. Thibault
072172b1a2 SpatiallyNestable: now with velocity support!
Moved velocity and angularVelocity into the SpatiallyNestable base class.

Entity velocity and angularVelocity properties are now relative to their parent, similar to the way position and orientation work for entities.

MyAvatar rig animations now use SpatiallyNestable to convert velocity into local frame to drive the animation state machine.
2016-02-08 19:43:23 -08:00
Howard Stearns
47694b90ee Fix inverted boolean that was preventing other people's avatars from mouth-animating. 2016-02-05 11:47:21 -08:00
Seth Alves
2501be16cb base palm position on finger joint rather than an offset from hand joint. double size of near-grab sphere 2016-02-01 18:11:27 -08:00