Commit graph

194 commits

Author SHA1 Message Date
Seth Alves
b7da72cc46 try again on fix for ACs seeing other avatars 2016-09-02 16:06:51 -07:00
Seth Alves
b6ef6fec73 Revert "fill in linked node data for avatar identity packets, also" 2016-09-02 15:43:25 -07:00
Seth Alves
014190a1bf fill in linked node data for avatar identity packets, also 2016-09-02 13:52:37 -07:00
Stephen Birarda
b68958317a re-send ignore requests when mixers are re-added 2016-07-13 15:06:31 -07:00
Stephen Birarda
6b6513d5f9 immediately fade out ignored avatars 2016-07-13 15:06:31 -07:00
Stephen Birarda
095bd7e6c8 cleanup logging, move packet parsing to mixers 2016-07-13 15:06:31 -07:00
Stephen Birarda
a134ac72de add packet type and plumbing for node ignore 2016-07-13 15:06:31 -07:00
Anthony J. Thibault
c48fce4f5a WIP commit, socket errors when AvatarIdentity is larger then MTU 2016-05-18 15:24:10 -07:00
Anthony J. Thibault
dc6e1afae6 Changed empty AvatarIdentity packet to AvatarData packet
Just in-case it actually gets through, it will fail to be parsed
by AvatarData::parseDataFromBuffer() due to it's size.
AvatarData::hasIdentityChangedAfterParsing() has no such checks.
2016-05-17 16:34:30 -07:00
Anthony J. Thibault
b82356a249 AvatarMixer: Clients will show incompatible version dialog
For this to work, the server needs to send an empty AvatarIdentity packet back to the sender
when it receives a packet mismatch error.  This AvatarIdentity packet will be different then
what the client expects and will trigger the incompatible version dialog.

Previously, the avatar-mixer was just silently dropping incoming mismatched version packets.
Causing the client to never get a response, and thus never showing the incompatible version dialog.
2016-05-17 15:02:04 -07:00
Stephen Birarda
33b46bd8e3 remove the billboard packet handling from AM 2016-04-18 16:02:46 -07:00
Stephen Birarda
38481aac53 use HRC clock timings in avatar mixer 2016-04-15 11:36:07 -07:00
Ryan Huffman
89c412c324 Merge branch 'master' of https://github.com/highfidelity/hifi into proto-received-message 2015-12-04 11:38:28 -08:00
Ryan Huffman
dac491ef41 Merge branch 'master' of https://github.com/highfidelity/hifi into proto-received-message 2015-11-24 09:59:22 -08:00
Seth Alves
ba30e01664 include global position in avatar-mixer protocol so server knows where avatars are in world-space 2015-11-23 14:12:49 -08:00
Seth Alves
f013f95e9b merge from upstream 2015-11-21 08:43:00 -08:00
Stephen Birarda
b34934b849 resolve conflicts on merge with upstream/master 2015-11-20 11:52:53 -08:00
Ryan Huffman
07d21514c5 Merge branch 'master' of https://github.com/highfidelity/hifi into proto-received-message 2015-11-19 10:47:37 -08:00
Stephen Birarda
271387f96e use a unique_ptr for linkedData in Node 2015-11-18 18:03:31 -08:00
Ryan Huffman
2a416ebc61 Merge branch 'master' of https://github.com/highfidelity/hifi into received-message 2015-11-18 16:52:23 -08:00
Stephen Birarda
20485b817c use safer domain-server settings request in entity-server 2015-11-18 15:27:57 -08:00
Stephen Birarda
eafc11e054 use safer domain settings request in AvatarMixer 2015-11-18 15:18:16 -08:00
Stephen Birarda
f2ecce6043 use safer domain settings request in audio-mixer 2015-11-18 15:13:29 -08:00
Anthony J. Thibault
7aefc5c9f7 AvatarMixer: remove redundant identity packet send
Removed AvatarClientData::checkAndSetHasReceivedFirstPackets boolean.
This is handled by the AvatarClientData::checkAndSetHasReceivedFirstPacketsFrom
set.
2015-11-16 10:14:28 -08:00
Anthony J. Thibault
245150333b Fix for missing avatars on entry
This should fix the issue where a persons avatar was occasionally not visible to others
for a long period of time.  This was due to several factors:

1) When a new avatar was added to the simulation that identity packet was not broadcast to
other avatars on the server. This would rely on random logic to send the identity eventually.
This is fixed in this PR, by sending identity packets to all other clients when a new clients
arrive.

2) The random identity logic was not being executed if the sequence number check caused an update
to be skipped.  This means the probability of sending a random packet was reduced significantly,
especially for clients that were loading geometry on entry.  This was fixed by doing the random
check before sequence number check.

3) The 1/300 probably used in the check was too low, this was only a 63% chance of sending a identity
packet within 5 seconds.  This was fixed by changing the probability to 1/187, which is a 80% chance
to send an identity packet within 5 seconds.

4) The randFloat() implementation slightly reduced the identity packet probability due to quantization errors.
This has been replaced by a C++ std random number generator.
2015-11-13 18:08:18 -08:00
Seth Alves
3ac0fef1ea merge from upstream 2015-11-01 15:22:57 -08:00
black plastick
d34fc35544 added AvatarList.avatarSessionChanged(sessionUUID, oldUUID) for AC scripts. 2015-10-27 08:11:20 -04:00
black plastick
f5d12ee2c6 Added AvatarList script events for assigment client scripts:
AvatarList.avatarAddedEvent(sessionUUID);
    AvatarList.avatarRemovedEvent(sessionUUID);
2015-10-26 17:46:08 -04:00
Seth Alves
d86d69aeba keep track of children. use local position and orientation on the wire. 2015-10-22 15:36:03 -07:00
Ryan Huffman
7682ab00e3 Add ReceivedMessage and receive progress 2015-10-15 14:09:53 -07:00
Stephen Birarda
0db88ba572 fix a typo in comment 2015-10-06 15:06:28 -07:00
Stephen Birarda
4c695b179a remove out of order assert in avatar-mixer 2015-10-06 15:04:48 -07:00
Stephen Birarda
593153deec add receive rate and inbound kbps to av stats 2015-10-06 14:58:51 -07:00
Atlante45
5808658958 Make NodeJSONStats reliable 2015-09-11 14:21:53 +02:00
Stephen Birarda
c49088846f add an alias for AvatarDataSequenceNumber 2015-09-08 08:26:14 -07:00
Stephen Birarda
ed19987b7d resolve conflicts on merge with upstream/master 2015-09-04 12:31:46 -06:00
Seth Alves
0c8848a463 don't update _lastSendJointData if we didn't send 2015-09-03 15:41:40 -07:00
Seth Alves
1071b98260 fix differential avatar-joint sending to work if more than 2 avatars are in the domain 2015-09-03 14:38:46 -07:00
Seth Alves
36ca789d92 fix differential avatar-joint sending to work if more than 2 avatars are in the domain 2015-09-03 14:08:04 -07:00
Stephen Birarda
e5a10e3174 resolve conflicts on merge with upstream/master 2015-09-01 17:07:32 -06:00
Seth Alves
76923583ee Interface only sends joint data to avatar-mixer if they have changed enough since the last send 2015-09-01 13:31:34 -07:00
Stephen Birarda
42105dfc33 replace mutexes with invoked methods in Socket 2015-08-28 16:34:24 -07:00
Stephen Birarda
aa08bee69f initial work to make sequence # and bitfield lead all packets 2015-07-23 11:59:37 -07:00
Stephen Birarda
7d60b86f52 kill the PacketLister (AKA Huffman 1 : PacketListener 0) 2015-07-17 09:07:39 -07:00
Atlante45
56886e479d Use BulkAvatarData packet type for AvatarMixer upstrea 2015-07-16 15:28:53 -07:00
Atlante45
fbb6a94579 Merge branch 'receive_packets' of https://github.com/huffman/hifi into protocol 2015-07-14 16:36:28 -07:00
Ryan Huffman
7e70e25db8 Update cast to dynamic_cast in AvatarMixer 2015-07-14 15:01:56 -07:00
Ryan Huffman
56b5c9acff Merge branch 'atp' of github.com:birarda/hifi into receive_packets
Conflicts:
	assignment-client/src/entities/EntityServer.cpp
	domain-server/src/DomainServer.cpp
2015-07-14 14:53:45 -07:00
Ryan Huffman
dcb9c8d125 Fix AvatarMixer call to reinterpret_cast to use dynamic_cast 2015-07-14 14:51:37 -07:00
Stephen Birarda
d617b71232 remove SharedNodePointer from some packet callbacks 2015-07-14 14:27:26 -07:00