Commit graph

242 commits

Author SHA1 Message Date
John Conklin II
0e2675e0d8
Merge pull request #13392 from roxanneskelly/roxie-bugfixes
Remove debug logging message spam for avatar entities that have scripts
2018-06-25 10:42:43 -07:00
Sam Gondelman
44a7d04b2a
Merge pull request #13426 from SamGondelman/avatarPriority
Highest loading priorities for avatars and attachments
2018-06-22 11:22:10 -07:00
Sam Gateau
dea3f91c0b
Merge pull request #13421 from AndrewMeadows/fix-mac-nan-crash
fix crash on Mac when watching someone else turn with HMD
2018-06-21 11:55:39 -07:00
Andrew Meadows
4424a8df11
Merge pull request #13303 from highfidelity/workload
workload project part 1
2018-06-20 15:39:01 -07:00
SamGondelman
8014f61243 loading priorities for avatars and attachments 2018-06-20 12:29:28 -07:00
Andrew Meadows
17a0dd574a remove debug cruft 2018-06-19 14:36:57 -07:00
Andrew Meadows
b557717dab to avoid NaN: don not rely on glm::angle(quat) UYKWYAD 2018-06-19 14:27:27 -07:00
Andrew Meadows
085130e3c9 avatars collide again again 2018-06-18 13:17:32 -07:00
Andrew Meadows
6d422e4678 Merge 'master' into 'workload' 2018-06-18 10:30:13 -07:00
Roxanne Skelly
5bc7694ed6 Merge branch 'master' of https://github.com/highfidelity/hifi into roxie-bugfixes 2018-06-15 16:46:09 -07:00
Roxanne Skelly
f6c624dcc3 Remove logging messages for behaviors that are expected.
Attached entities with scripts are now being sold on the marketplace
(rWatch) and are now being worn by various users.  Because of this, it's
now common for the 'removing entity scripts' case to be hit in code for
every update, which causes debug log messages every 60 seconds for each
entity entity with a script.

Repro: Have an avatar wear rWatch.  With a second instance of interface,
turn on verbose logging while the first avatar is local.  See debug logging
60 times a second.

Fix: Given attached entities with scripts are happening, it's not an
exceptional case and should probably not be logged.
2018-06-15 16:31:09 -07:00
John Conklin II
0ba97fa83b
Merge pull request #13338 from amantley/scriptedBlendshapesFaceFlags
Scripted Blendshapes and Procedural Face Movement Flags
2018-06-13 10:32:59 -07:00
Clement
920263ef49 Merge branch 'stable' of https://github.com/highfidelity/hifi into new-master 2018-06-12 17:00:25 -07:00
amantley
b1c578ecaa fixed white space in head.cpp 2018-06-07 22:13:53 -07:00
amantley
913d78841d Merge remote-tracking branch 'upstream/master' into scriptedBlendshapes
synching with upstream master
2018-06-07 16:20:11 -07:00
amantley
67fc7b90b5 fixed get and set semi nibble to deal with 16 bits 2018-06-07 15:43:21 -07:00
amantley
836c3da858 cleaned up white space and removed extra declaration of hadAudioEnabledFaceMovement 2018-06-07 15:11:57 -07:00
amantley
97831e61f0 removed stray comments 2018-06-07 12:54:46 -07:00
amantley
6a11ddc349 removed print statements and removed the setting of procedural head variables in avatarData.cpp 2018-06-06 17:50:50 -07:00
amantley
dca93ca61f fixed setatone16 function to return the correct result for additional flags 2018-06-06 16:44:12 -07:00
amantley
0c879d85b5 added print statements and removed summed coeff from avatarData.cpp 2018-06-05 17:33:32 -07:00
amantley
5132466ca0 kept the transient coeff. and sending the blendshapes accross the
network. and removed procedural updates to face from myhead.cpp
2018-06-05 13:32:45 -07:00
Andrew Meadows
4329ea5240 Merge master' into 'workload' 2018-06-04 16:11:25 -07:00
amantley
01848fafe0 made all changes except those to AvatarData toByteArray function also to do: verify that transientBlendshapes are set to 0 in headData simulate when there are blendshapes from script but no face tracker present 2018-06-01 11:37:11 -07:00
amantley
3bda5bf6a0 added MyAvatar.hasProceduralBlinkFaceMovement and MyAvatar.hasProceduralEyeFaceMovement properties to MyAvatar.h and cpp and HeadData.h 2018-05-31 17:58:37 -07:00
samcake
386c0f9ab2 Re review adjustments 2018-05-31 12:16:57 -07:00
Sam Gateau
513acc529e INtroduce RenderConstants header file to define the alias names for Tag and Layer for Hifi REnder Engine 2018-05-30 23:31:54 -07:00
Andrew Meadows
003e444246 Merge branch 'master' into 'workload' 2018-05-30 16:04:13 -07:00
samcake
2e9076c71e Clean up and trying to get ready for merge 2018-05-30 11:14:49 -07:00
samcake
873cabe284 Cleaning the code 2018-05-29 17:46:25 -07:00
Sam Gateau
678effdb48 Cleaning up the Model set ItemKey flags and bringing Item::Layer in the ItemKey 2018-05-26 23:28:59 -07:00
samcake
221b513b19 Oh boy 2018-05-25 16:33:34 -07:00
Sam Gateau
aa49595a23 Merge branch 'master' of https://github.com/highfidelity/hifi into punk 2018-05-24 18:19:55 -07:00
Sam Gateau
b8b337dbe4 There and back again... 2018-05-24 01:18:36 -07:00
Sam Gateau
13d02011f3 There and back again... 2018-05-24 00:53:29 -07:00
samcake
184d50b018 Well 2018-05-22 17:55:26 -07:00
David Rowe
6d4f704279 Regularize some JSDoc usage 2018-05-21 09:32:10 +12:00
samcake
36a08fdd84 Friday night end of the day, last compilation.... almost 2018-05-18 17:41:28 -07:00
Andrew Meadows
a23126a6b2 Merge 'master' into 'workload' 2018-05-18 07:38:02 -07:00
samcake
aa18aaa7b1 Maybe 2018-05-17 18:06:46 -07:00
samcake
735db27919 Merge branch 'master' of https://github.com/highfidelity/hifi into punk 2018-05-16 17:18:23 -07:00
Andrew Meadows
6de175e794 avatars collide again 2018-05-11 17:01:48 -07:00
samcake
5db3eee4ad Merge branch 'master' of https://github.com/highfidelity/hifi into workload 2018-04-25 15:21:43 -07:00
David Rowe
cae9447ac5 Doc review 2018-04-25 15:09:47 +12:00
David Rowe
98f43b6a70 Interim JSDoc for MyAvatar - stubs for remainder 2018-04-24 10:47:33 +12:00
David Rowe
719062dd9f Interim JSDoc for MyAvatar - first pass 2018-04-24 09:10:59 +12:00
Andrew Meadows
06af31594e merge 'master' into 'workload' 2018-04-20 15:07:46 -07:00
Anthony J. Thibault
c29bf51226 Fix for avatar glitches, head and legs folding into chest.
As a form of compression, when encoding avatar data we only send joints that have changed significantly from the previous packet.
Also, if a joint has the same value as the avatar's default pose, we don't send the full value, instead we mark it with a single bit.

This particular issue is caused by an interaction between the default value flag and the joint changed culling.

When connecting to a domain for the first time, it's possible that a I-frame or 'full' packet will not be sent for several seconds.
In this case, the AvatarMixer has no previous history for values that have not changed recently.
This causes the AvatarMixer to broadcast incorrect values to other clients.
Keep in mind that the AvatarMixer does not have access to the avatar FBX file, so it cannot make an educated guess for this value and uses zero values instead.
(0, 0, 0) for translation and (0, 0, 0, 1) for rotation.

When a translation value of zero is received for the lower legs it will cause the legs to fold into the avatar's chest.

Also, we've uncovered a bug where sometimes values were not sent to the AvatarMixer even when the value was previously default.
This would also exhibit the same issue where zero translation values would be sent.

I've done three things to help mitigate this issue.

1) On first connect to a new AvatarMixer, the Avatar now sends a 'full' packet.
2) When a joint rotation or translation changes from the default value, we transmit it.  No questions asked.
3) Once a SkeletonModel has finished loading we initialize the avatar's _jointData with the proper
   translations from the default pose.  This will help the case where a client receives a non default value, but has no previous history.

(cherry picked from commit 94efdf76a6454f316985f95d6a221adb24788d66)
2018-04-16 14:58:33 -07:00
samcake
59a081bcdb merge with upstream 2018-03-30 18:08:38 -07:00
samcake
a896e9872c adressing the avatar vissibility switch 2018-03-14 17:09:23 -07:00