Fix issue with avatar data being sent too often
Showing the changes to interface/src/Application.cpp (1 of 2 files). Show all
Unified · Split
| @@ -2137,12 +2137,17 @@ void Application::updateMyAvatar(float deltaTime) { · 2136 unmodified lines | ||
| 2137 | 2137 | |
| 2138 | 2138 | _myAvatar->update(deltaTime); |
| 2139 | 2139 | |
| 2140 | − { | |
| 2140 | + quint64 now = usecTimestampNow(); | |
| 2141 | + quint64 dt = now - _lastSendAvatarDataTime; | |
| 2142 | + | |
| 2143 | + if (dt > MIN_TIME_BETWEEN_MY_AVATAR_DATA_SENDS) { | |
| 2141 | 2144 | // send head/hand data to the avatar mixer and voxel server |
| 2142 | 2145 | PerformanceTimer perfTimer("send"); |
| 2143 | 2146 | QByteArray packet = byteArrayWithPopulatedHeader(PacketTypeAvatarData); |
| 2144 | 2147 | packet.append(_myAvatar->toByteArray()); |
| 2145 | 2148 | controlledBroadcastToNodes(packet, NodeSet() << NodeType::AvatarMixer); |
| 2149 | + | |
| 2150 | + _lastSendAvatarDataTime = now; | |
| 2146 | 2151 | } |
| 2147 | 2152 | } |
| 2148 | 2153 | |