Commit graph

296 commits

Author SHA1 Message Date
Stephen Birarda
6398a922c6 leverage COW for AvatarHash 2015-11-19 15:43:29 -08:00
Stephen Birarda
5140a480a1 fix for recursive write then read lock 2015-11-19 15:35:41 -08:00
Stephen Birarda
2a05ec650b fix locking in AvatarHashMap/AvatarManager 2015-11-19 14:17:48 -08:00
Howard Stearns
f6286201f4 cleanup 2015-11-19 11:55:22 -08:00
Howard Stearns
7d30cd0159 checkpoint: it works! 2015-11-19 09:18:40 -08:00
howard-stearns
42a1ee353e checkpoint 2015-11-18 14:09:33 -08:00
Howard Stearns
fee13d4375 Rebuild on a new branch after original stopped building. 2015-11-17 20:06:25 -08:00
Seth Alves
ffb0317a50 Merge branch 'master' of github.com:highfidelity/hifi into parents 2015-11-03 16:53:00 -08:00
Seth Alves
60824a1fb0 back out some off-brand changes. add parentChanged call 2015-11-03 16:07:28 -08:00
Howard Stearns
fc63fa6f7b Update comments, and don't continue through collisions after finding one for our avatar. 2015-11-01 18:55:43 -08:00
Seth Alves
3ac0fef1ea merge from upstream 2015-11-01 15:22:57 -08:00
Anthony J. Thibault
085282db4f Crash fix for AvatarManager when iterating over _avatarHash
The main problem is that a null shared pointer was inserted into the _avatarHash
via the AvatarManager::getAvatarBySessionID().  When the sessionID is not present
in the _avatarHash, [QHash](http://doc.qt.io/qt-5/qhash.html#operator-5b-5d) will *insert*
an empty smart_ptr into the hash.
2015-10-30 16:13:04 -07:00
Howard Stearns
3c6d4f9c22 Thread safety per #6154. 2015-10-29 11:02:24 -07:00
Howard Stearns
367175b8a6 Reduce lock time. 2015-10-28 10:49:19 -07:00
Howard Stearns
7b0b77f4d1 getAvatarHash => withAvatarHash 2015-10-23 16:57:27 -07:00
Seth Alves
f6fe503c51 pass avatar parent information through avatar-mixer 2015-10-22 13:44:04 -07:00
Howard Stearns
0d514ad645 Thread-safe avatar list access 2015-10-22 13:02:08 -07:00
Seth Alves
bc99ef778c change how render engine is told about model position changes 2015-10-20 12:04:29 -07:00
Seth Alves
a78f2a9577 have avatar make use of SpatiallyNestable 2015-10-18 09:48:46 -07:00
Seth Alves
b18bb1e076 Merge pull request #6084 from AndrewMeadows/physics-cleanup
move DIRTY_FLAGS out of EntityItem namespace
2015-10-16 07:22:40 -07:00
Andrew Meadows
fa17b77d70 move DIRTY_FLAGS out of EntityItem namespace 2015-10-15 09:34:09 -07:00
Seth Alves
7c52849740 change how hold action works 2015-10-13 11:36:58 -07:00
Atlante45
cf3b33a96b Replace Application::getInstance() with qApp 2015-10-06 13:56:19 -07:00
Brad Davis
aa989c3687 Fixing some entity race condition crashes 2015-09-10 20:53:17 -07:00
Howard Stearns
0065c64b31 Snapshot of no-judder, before cleanup. 2015-09-07 09:57:05 -07:00
Howard Stearns
2429134b37 Lock both myavatar activities, not one. 2015-08-27 13:44:19 -07:00
Howard Stearns
475331a97d Sprinkle locks everywhere. 2015-08-26 16:08:07 -07:00
Bradley Austin Davis
7e60aee1bf Merge branch 'master' into plugins
Conflicts:
	interface/src/Application.cpp
	interface/src/Application.h
	interface/src/avatar/Head.cpp
	interface/src/avatar/MyAvatar.cpp
	interface/src/avatar/MyAvatar.h
	interface/src/avatar/SkeletonModel.cpp
	interface/src/avatar/SkeletonModel.h
	interface/src/devices/3DConnexionClient.cpp
	interface/src/ui/overlays/Overlays.cpp
2015-08-06 11:03:37 -07:00
Seth Alves
8ac06c4059 remove friend class from Avatar 2015-07-27 08:48:16 -07:00
Anthony J. Thibault
87a0e48d30 Updates to overlay fade
* vive rendering works again
* overlay fades away in standing mode, if you look or move away from the overlay sphere.
* middle mouse button can be used to fade in or out the overlay
* mouse pointer renders properly on overlay
2015-07-23 20:36:58 -07:00
Seth Alves
ee334ff826 JointStates are owned by Rig objects. Model, FaceModel, SkeletonModel call into their Rig pointer to access JointStates. 2015-07-22 18:43:10 -07:00
Seth Alves
7c8d52cbd1 back out some changes to Model.cpp, change how rig pointer is delivered to model initilizer 2015-07-22 13:41:31 -07:00
Stephen Birarda
ce6585ccc8 fix AC monitor and AM double register 2015-07-16 17:44:43 -07:00
ZappoMan
819fa852b8 first pass at GlowEctomy 2015-07-15 12:47:59 -07:00
Niraj Venkat
1f1a5f8e75 Coding standard and fixing pointers 2015-07-13 22:57:11 -07:00
Niraj Venkat
10e0a93ac0 Fix for avatar rendering not working on domain exit/entry 2015-07-13 15:22:00 -07:00
Niraj Venkat
dacc6f66c0 Avatars rendered correctly based on Scene.shouldRenderAvatars 2015-07-10 17:26:56 -07:00
Howard Stearns
1c2972bd7c Expose avatar collisions to scripts, and include velocityChange in exposed collision data. 2015-07-07 11:49:55 -07:00
Howard Stearns
1f3a1f6ac8 Add comments re upcoming physics changes. 2015-07-02 10:07:14 -05:00
Howard Stearns
dc7360cdc2 Merge branch 'master' of https://github.com/highfidelity/hifi into avatar-collision-sounds 2015-06-27 08:37:30 -07:00
Howard Stearns
98f165f2ae Avatar collision sounds.
collisionsSoundURL can be set in preferences:
  Currently defaults to https://s3.amazonaws.com/hifi-public/sounds/Collisions-hitsandslaps/airhockey_hit1.wav.
  Can be empty, which means no sound, rather than restoring default.
MyAvatar.collisionSoundURL can read/written in scripts.
Preloads when set, so that it won't have to fetch on first collision.
Plays at start of collision only, with volume proportional to "velocity change"^2.
2015-06-26 16:23:16 -07:00
Stephen Birarda
c6df573933 fix some OS X warnings, add description to tooltip 2015-06-26 10:50:31 -07:00
Andrew Meadows
ce9dfc098b unhook motionstate before removing avatar 2015-06-22 15:40:26 -07:00
Seth Alves
508ae276c6 enable -Wdouble-promotion 2015-06-16 18:23:10 -07:00
Atlante45
8570fe0c19 Shared ptr tweaks 2015-06-10 15:02:26 +02:00
Atlante45
3af8bec3d7 Fix ghost avatars/displaynames 2015-06-10 14:59:27 +02:00
ZappoMan
adcb62eb18 more hacking and cleanup 2015-06-02 21:03:34 -07:00
ZappoMan
4ce27f1483 first cut at rendering avatars as individual model items 2015-06-02 16:54:47 -07:00
ZappoMan
2fba5a0928 more work on simple renderable 2015-05-28 12:19:43 -07:00
Ryan Huffman
f972e84d6c Move avatar renedering to Scene 2015-05-27 12:40:26 -07:00
Ryan Huffman
389d5556f5 Update Avatar*Pointers to use std::*_ptr instead of Q*Pointer 2015-05-27 12:36:55 -07:00
ZappoMan
20ceb72d92 Merge branch 'master' of https://github.com/highfidelity/hifi into team-teaching 2015-05-26 15:01:26 -07:00
Ryan Huffman
3f22b5f8b3 Add RenderArgs to more render methods 2015-05-22 15:25:53 -07:00
Andrew Meadows
01cc629224 fix crashes during init and shutdown 2015-05-22 09:20:08 -07:00
Andrew Meadows
67f5d0773d some list management of AvatarMotionStates 2015-05-21 14:40:47 -07:00
Andrew Meadows
2f4162f447 cleanup of AvatarManger API 2015-05-19 16:53:30 -07:00
Andrew Meadows
f86c419988 stubbery for collidable avatars 2015-05-19 14:15:26 -07:00
Atlante45
809c7919aa Fix ghost avatars 2015-04-13 15:57:36 +02:00
Sam Gateau
00817ab64f MErging with origin/orange, brinign the fix for shadows 2015-04-05 18:36:39 -07:00
Stephen Birarda
b27a86fb25 always render yourself, handle change of render values elsewhere 2015-04-01 17:36:43 -07:00
Sam Gateau
9b63739a72 Trying to clen up the REnderMode usage in connection with the needed gpu::State for all the different variations 2015-03-31 17:35:34 -07:00
Stephen Birarda
5e864278a3 fix packet processing, PerfWarn label 2015-02-06 12:21:05 -08:00
Atlante45
2d973e5288 Move updateMyAvatar to AvatarManager 2015-01-29 16:55:32 -08:00
Atlante45
6b7a391885 move a couple avatar initialisations outside avatar maanger 2015-01-29 16:00:57 -08:00
ZappoMan
41c135c4e5 move GlowEffect to libraries 2014-12-15 19:19:21 -08:00
ZappoMan
e53833b306 make GlowEffect support DependencyManager 2014-12-15 17:29:48 -08:00
Andrzej Kapolka
ace415b138 Merge branch 'master' of https://github.com/highfidelity/hifi into metavoxels
Conflicts:
	interface/src/MetavoxelSystem.cpp
2014-12-04 16:46:32 -08:00
ZappoMan
526664ac57 delete old dead code 2014-12-01 22:11:34 -08:00
Andrzej Kapolka
8d3eef708a Move various avatar render bits to post-lighting section. 2014-09-19 13:13:05 -07:00
Andrzej Kapolka
c6aad42f21 Move LocalLight to AvatarManager, apply it at the avatar level. 2014-09-18 17:09:53 -07:00
Andrew Meadows
1a8a2d9156 Add Avatar submenu to main menu for non-debug stuff 2014-08-19 17:26:01 -07:00
Atlante45
de8c7fb204 Fix avatar not fading out 2014-08-06 12:14:36 -07:00
Andrzej Kapolka
be028c2b01 Fixes for local lights. 2014-07-22 14:13:51 -07:00
TonyPeng
7aae85833b Take out getter for avatar's hash key. 2014-07-16 10:08:49 -07:00
TonyPeng
90d56bc108 Use the number of local lights to update new avatars instead of checking hashes. 2014-07-15 16:10:13 -07:00
TonyPeng
28854363d4 Coding standard 2014-07-15 09:20:33 -07:00
TonyPeng
1aa20dff60 Expose light directions and colors for the avatar list in AvatarManager. Light parameter changes within the script will effect all the avatars currently in AvatarManager. 2014-07-14 13:59:57 -07:00
Andrew Meadows
fdd9acb477 bug fix: bad logic for early exit 2014-07-10 10:55:41 -07:00
Andrew Meadows
d26585728b Improved stat accumulation and context names 2014-07-09 11:53:53 -07:00
Stephen Birarda
77202af20d add debug for erase from AvatarHashMap, repair check for display name 2014-04-17 18:05:22 -07:00
Stephen Birarda
f8106e5063 add an AvatarHashMap to the Agent 2014-04-17 17:49:55 -07:00
Stephen Birarda
e75d14139f fix avatar kill behaviour 2014-04-17 17:21:38 -07:00
Stephen Birarda
69d3360675 add a convenience method to AvatarHashMap to check for avatar removal 2014-04-17 16:48:24 -07:00
Stephen Birarda
e303ce1a12 move some Avatar management to AvatarHashMap 2014-04-17 16:37:40 -07:00
Stephen Birarda
c208af2246 Merge branch 'master' of https://github.com/highfidelity/hifi 2014-04-09 15:10:48 -07:00
Stephen Birarda
684c6b5372 run regex header replacement on all cpp files 2014-04-09 09:35:42 -07:00
Stephen Birarda
974d8c0427 prepare header files for regex run against cpp 2014-04-09 09:35:05 -07:00
Andrew Meadows
2f97dd2574 sessionID --> sessionUUID for consistency 2014-04-09 08:22:35 -07:00
Andrew Meadows
79670563d4 AvatarData stores its sessionID 2014-04-07 14:42:49 -07:00
Stephen Birarda
8a796be785 only fade avatars if they have ever been initialized 2014-03-25 11:10:28 -07:00
Stephen Birarda
f763859fd0 don't attempt to render avatars until they are initialized 2014-03-25 10:44:52 -07:00
Andrzej Kapolka
62884f1f4f Don't use textures/fancy shaders when rendering shadow map. Closes #2270. 2014-03-24 13:15:03 -07:00
Andrew Meadows
75ab970c0d fix bug: bad offset into avatar data during decode 2014-03-17 18:23:09 -07:00
Andrew Meadows
ed3cf36045 cleanup: AvatarData doesn't derive from NodeData
Cleaner Interface since the AvatarData is already not the NodeList.
Reduces overhead/confusing code when parsing packets from AvatarMixer.
2014-03-17 14:10:42 -07:00
Andrew Meadows
68ba2201df cleanup of Avatar:: and MyAvatar::render()
MyAvatar now calls Avatar::render() which does most of the work.
Also, made ::renderBody() a proper virtual function
2014-03-17 10:22:02 -07:00
Andrzej Kapolka
35d0fa7189 Don't render avatars until they've been simulated, init before first simulate.
Closes #2262.
2014-03-11 13:46:58 -07:00
Andrzej Kapolka
3930b3e824 Display names are great, but not in the shadow map. Closes #2208. 2014-03-05 17:44:08 -08:00
Andrzej Kapolka
038f1acf01 Don't render the hover text in mirror/billboard mode. Closes #2098. 2014-02-25 15:34:16 -08:00
Andrzej Kapolka
d80b52dc9f Fixes for camera mode transitions, seeing inside head. 2014-02-24 11:33:52 -08:00
Andrzej Kapolka
ac02609bc2 The basic billboard behavior, closes #1864. 2014-02-21 15:38:49 -08:00
Stephen Birarda
ee9f8937e3 fix a silly typo 2014-02-19 18:03:34 -08:00
Jose Carlos
44d5b9b2f8 cosmetic change 2014-02-20 00:22:29 +01:00
Jose Carlos
ee7b5844b8 Minor cosmetic change 2014-02-19 23:24:26 +01:00
Jose Carlos
19cb20f0cd Added rect around the display name with proper size, paying attention to
QFontMetrics data
Fully wired up the message sending and receiving from server
2014-02-15 01:05:21 +01:00
Jose Carlos
04c59b825e merged from master 2014-02-14 20:52:22 +01:00
Jose Carlos
319d1f6795 Wired up the send of the display data to the servers
Added the renderDisplayName in Avatar
2014-02-12 00:54:50 +01:00
Jose Carlos
665971c2ab Merge remote-tracking branch 'upstream/master' into 19489 2014-02-10 23:56:10 +01:00
Jose Carlos
b42c2a9dbe Centered text 2014-02-10 23:55:43 +01:00
Andrew Meadows
be1aaee359 Merge branch 'master' of ssh://github.com/highfidelity/hifi into avatar-interaction 2014-02-10 09:05:08 -08:00
Jose Carlos
4aa053befe Constant size in 3D world billboard text 2014-02-09 23:59:51 +01:00
Jose Carlos
d05fb392e0 Always facing camera billboard
TODO: having constant fix size
2014-02-09 23:39:53 +01:00
Andrew Meadows
082b7cf1a9 Merge branch 'master' of ssh://github.com/highfidelity/hifi into avatar-interaction
Conflicts:
	interface/src/avatar/Avatar.cpp
	interface/src/avatar/Avatar.h
	interface/src/avatar/MyAvatar.cpp
2014-02-06 14:37:19 -08:00
Andrew Meadows
802967512a Splitting rendering of avatars and their collision proxies.
Also disabling old hand-avatar interactions and trying to use new stuff.
2014-02-06 14:14:48 -08:00
Stephen Birarda
f92f9ec0c2 Merge branch 'master' of https://github.com/highfidelity/hifi into authentication 2014-02-06 09:28:03 -08:00
Andrew Meadows
aa3a1a9a72 Stop rendering our head in first person camera mode. 2014-02-05 15:35:57 -08:00
Stephen Birarda
092c969e75 more repairs to face and skeleton model passing 2014-02-04 15:48:31 -08:00
Stephen Birarda
adaa36a51d repairs to key-framed URL sending through avatar-mixer 2014-02-04 15:28:27 -08:00
Stephen Birarda
7e3442cbd0 repair to PacketType so interface parses AM packet 2014-02-04 14:57:14 -08:00
Stephen Birarda
e879a7f18d remove some extra spacing 2014-02-04 13:04:51 -08:00
Stephen Birarda
8bf3b7586b initial movement of mesh/skeleton URLs out of data-server through avatar-mixer 2014-02-04 13:02:33 -08:00
Andrew Meadows
a5aff81881 Merge branch 'master' of ssh://github.com/highfidelity/hifi into cleanup 2014-01-31 17:44:13 -08:00
Andrew Meadows
ed93d8db39 Moving headMouse, transmitter, and touchYaw/Pitch stuff into MyAvatar. 2014-01-31 17:42:48 -08:00
Andrew Meadows
a7ffb7df1d Moved LookAtTargetAvatar stuff from AvatarManager to MyAvatar. 2014-01-31 13:17:12 -08:00
Stephen Birarda
b16d03c42a remove an unneeded todo 2014-01-31 12:46:03 -08:00
Stephen Birarda
2cc6d22181 fix push bytesRead when creating dummy Avatar packets, closes #1794 2014-01-31 12:44:09 -08:00
Stephen Birarda
4573eaebc6 fix multiple avatar parsing in AvatarManager 2014-01-31 12:02:24 -08:00
Andrew Meadows
1b99bc90cf Removing AvatarManager::clear() as unecessary during class destruction. 2014-01-30 18:02:04 -08:00
Stephen Birarda
84ef757af4 fix avatar count, HandData crash (closes #1754) 2014-01-30 09:45:09 -08:00
Andrew Meadows
82a4b7a4d1 Merge branch 'master' of ssh://github.com/highfidelity/hifi into fix-particle-avatar-collisions
Conflicts:
	interface/src/Application.cpp
2014-01-29 13:20:42 -08:00
Stephen Birarda
33edcea5fb resolve conflicts on merge with upstream master 2014-01-29 12:23:06 -08:00
Andrew Meadows
677341d207 fix for crash bug #1728.
Moving _myAvatr to live in AvatarManager.  Application still has a
pointer to it.  Unfortunately the order of Application initialization
and destruction matters very much.
2014-01-28 18:04:42 -08:00
Andrew Meadows
714dbf8493 Moving MY_AVATAR_KEY back into AvatarManager.cpp 2014-01-28 14:37:32 -08:00
Andrew Meadows
f972bfd024 Merge branch 'master' of ssh://github.com/highfidelity/hifi into fix-particle-avatar-collisions
Conflicts:
	interface/src/avatar/AvatarManager.cpp
2014-01-28 14:30:59 -08:00
Andrew Meadows
167acb8873 Adding avatars back into ParticleCollisionSystem.
Had to add Application::_myAvatar to the AvatarManager list so that
particles would properly collide.
2014-01-28 14:16:34 -08:00
Stephen Birarda
2aaa9ce3f6 resolve conflicts on merge with upstream master 2014-01-28 12:30:43 -08:00
Stephen Birarda
4103cc1cde packet header changes and beginning of conversion to QByteArray 2014-01-28 10:36:08 -08:00
Andrew Meadows
ade02c0259 Bug fix: update ALL avatars in the AvatarManager (rather than just one).
Reviewed with Birarda and pushed directly to upstream.
2014-01-28 09:32:58 -08:00
Andrew Meadows
2b5675b077 Fix issue #1684 : particles collide against avatars again.
This a quick and dirty fix to resurrect particle-avatar collisions.
We rebuild and pass a list of AvatarData* to the
ParticleCollisionManager every call to update().
2014-01-27 18:01:53 -08:00
Stephen Birarda
10cfd628aa resolve conflicts on merge with upstream master 2014-01-23 17:52:30 -08:00
Stephen Birarda
2aac064a67 increase debug for Avatar removal from AvatarManager 2014-01-23 17:44:06 -08:00
Stephen Birarda
b495e6251d add a weak pointer to the avatar mixer that owns the avatar 2014-01-23 17:39:14 -08:00
Stephen Birarda
8d2e9823de remove notion of owning node from NodeData 2014-01-23 17:06:03 -08:00
Stephen Birarda
820132cb45 cleanup debug and Avatar destructor 2014-01-23 16:47:18 -08:00
Stephen Birarda
2e548fb39c complete migration of Avatar list to AvatarManager 2014-01-23 14:41:11 -08:00
Stephen Birarda
1f95d0c017 have avatar-mixer report avatar kills to all avatars 2014-01-23 12:47:27 -08:00
Stephen Birarda
a9f1984676 add an AvatarManager that will keep Avatars in Application thread 2014-01-23 11:59:24 -08:00