voxelDetailsForCode returns a ratio, cubeinfrustrum takes meters

This commit is contained in:
Seth Alves 2015-05-07 16:01:08 -07:00
parent 8c3a57566b
commit c1e3500f3c

View file

@ -2644,7 +2644,10 @@ void Application::queryOctree(NodeType_t serverType, PacketType packetType, Node
if (rootCode) { if (rootCode) {
VoxelPositionSize rootDetails; VoxelPositionSize rootDetails;
voxelDetailsForCode(rootCode, rootDetails); voxelDetailsForCode(rootCode, rootDetails);
AACube serverBounds(glm::vec3(rootDetails.x, rootDetails.y, rootDetails.z), rootDetails.s); AACube serverBounds(glm::vec3(rootDetails.x * TREE_SCALE,
rootDetails.y * TREE_SCALE,
rootDetails.z * TREE_SCALE),
rootDetails.s * TREE_SCALE);
ViewFrustum::location serverFrustumLocation = _viewFrustum.cubeInFrustum(serverBounds); ViewFrustum::location serverFrustumLocation = _viewFrustum.cubeInFrustum(serverBounds);
@ -2685,7 +2688,6 @@ void Application::queryOctree(NodeType_t serverType, PacketType packetType, Node
// only send to the NodeTypes that are serverType // only send to the NodeTypes that are serverType
if (node->getActiveSocket() && node->getType() == serverType) { if (node->getActiveSocket() && node->getType() == serverType) {
// get the server bounds for this server // get the server bounds for this server
QUuid nodeUUID = node->getUUID(); QUuid nodeUUID = node->getUUID();
@ -2707,7 +2709,12 @@ void Application::queryOctree(NodeType_t serverType, PacketType packetType, Node
if (rootCode) { if (rootCode) {
VoxelPositionSize rootDetails; VoxelPositionSize rootDetails;
voxelDetailsForCode(rootCode, rootDetails); voxelDetailsForCode(rootCode, rootDetails);
AACube serverBounds(glm::vec3(rootDetails.x, rootDetails.y, rootDetails.z), rootDetails.s); AACube serverBounds(glm::vec3(rootDetails.x * TREE_SCALE,
rootDetails.y * TREE_SCALE,
rootDetails.z * TREE_SCALE),
rootDetails.s * TREE_SCALE);
ViewFrustum::location serverFrustumLocation = _viewFrustum.cubeInFrustum(serverBounds); ViewFrustum::location serverFrustumLocation = _viewFrustum.cubeInFrustum(serverBounds);
if (serverFrustumLocation != ViewFrustum::OUTSIDE) { if (serverFrustumLocation != ViewFrustum::OUTSIDE) {
@ -2753,7 +2760,7 @@ void Application::queryOctree(NodeType_t serverType, PacketType packetType, Node
} }
// set up the packet for sending... // set up the packet for sending...
unsigned char* endOfQueryPacket = queryPacket; unsigned char* endOfQueryPacket = queryPacket;
// insert packet type/version and node UUID // insert packet type/version and node UUID
endOfQueryPacket += populatePacketHeader(reinterpret_cast<char*>(endOfQueryPacket), packetType); endOfQueryPacket += populatePacketHeader(reinterpret_cast<char*>(endOfQueryPacket), packetType);