From 885068bd6b6ccfc64e65837552b4ded304b3e4e2 Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Thu, 9 Jul 2015 11:15:45 -0700 Subject: [PATCH] create billboard and identity packets of the right size --- assignment-client/src/avatars/AvatarMixer.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/assignment-client/src/avatars/AvatarMixer.cpp b/assignment-client/src/avatars/AvatarMixer.cpp index c2b93bc48b..b952eeab8c 100644 --- a/assignment-client/src/avatars/AvatarMixer.cpp +++ b/assignment-client/src/avatars/AvatarMixer.cpp @@ -305,9 +305,12 @@ void AvatarMixer::broadcastAvatarData() { || otherNodeData->getBillboardChangeTimestamp() > _lastFrameTimestamp || randFloat() < BILLBOARD_AND_IDENTITY_SEND_PROBABILITY)) { - auto billboardPacket = NLPacket::create(PacketType::AvatarBillboard); - billboardPacket->write(otherNode->getUUID().toRfc4122()); - billboardPacket->write(otherNodeData->getAvatar().getBillboard()); + QByteArray rfcUUID = otherNode->getUUID().toRfc4122(); + QByteArray billboard = otherNodeData->getAvatar().getBillboard(); + + auto billboardPacket = NLPacket::create(PacketType::AvatarBillboard, rfcUUID.size() + billboard.size()); + billboardPacket->write(rfcUUID); + billboardPacket->write(billboard); nodeList->sendPacket(std::move(billboardPacket), node); @@ -319,9 +322,10 @@ void AvatarMixer::broadcastAvatarData() { || otherNodeData->getIdentityChangeTimestamp() > _lastFrameTimestamp || randFloat() < BILLBOARD_AND_IDENTITY_SEND_PROBABILITY)) { - auto identityPacket = NLPacket::create(PacketType::AvatarIdentity); - QByteArray individualData = otherNodeData->getAvatar().identityByteArray(); + + auto identityPacket = NLPacket::create(PacketType::AvatarIdentity, individualData.size()); + individualData.replace(0, NUM_BYTES_RFC4122_UUID, otherNode->getUUID().toRfc4122()); identityPacket->write(individualData);