MCPcopy Create free account
hub / github.com/NVIDIAGameWorks/FleX / DebugDrawRecursive

Method DebugDrawRecursive

core/aabbtree.cpp:708–795  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

706}
707
708void AABBTree::DebugDrawRecursive(uint32_t nodeIndex, uint32_t depth)
709{
710 static uint32_t kMaxDepth = 3;
711
712 if (depth > kMaxDepth)
713 return;
714
715
716 /*
717 Node& n = m_nodes[nodeIndex];
718
719 Vector3 minExtents = FLT_MAX;
720 Vector3 maxExtents = -FLT_MAX;
721
722 // calculate face bounds
723 for (uint32_t i=0; i < m_vertices.size(); ++i)
724 {
725 Vector3 a = m_vertices[i];
726
727 minExtents = Min(a, minExtents);
728 maxExtents = Max(a, maxExtents);
729 }
730
731
732 glBegin(GL_QUADS);
733 glVertex3f(minExtents.x, maxExtents.y, 0.0f);
734 glVertex3f(maxExtents.x, maxExtents.y, 0.0f);
735 glVertex3f(maxExtents.x, minExtents.y, 0.0f);
736 glVertex3f(minExtents.x, minExtents.y, 0.0f);
737 glEnd();
738
739
740 n.m_center = Vec3(minExtents+maxExtents)/2;
741 n.m_extents = (maxExtents-minExtents)/2;
742 */
743/*
744 if (n.m_minEtextents != Vector3(0.0f))
745 {
746 Vec3 corners[8];
747 corners[0] = n.m_center + Vector3(-n.m_extents.x, n.m_extents.y, n.m_extents.z);
748 corners[1] = n.m_center + Vector3(n.m_extents.x, n.m_extents.y, n.m_extents.z);
749 corners[2] = n.m_center + Vector3(n.m_extents.x, -n.m_extents.y, n.m_extents.z);
750 corners[3] = n.m_center + Vector3(-n.m_extents.x, -n.m_extents.y, n.m_extents.z);
751
752 corners[4] = n.m_center + Vector3(-n.m_extents.x, n.m_extents.y, -n.m_extents.z);
753 corners[5] = n.m_center + Vector3(n.m_extents.x, n.m_extents.y, -n.m_extents.z);
754 corners[6] = n.m_center + Vector3(n.m_extents.x, -n.m_extents.y, -n.m_extents.z);
755 corners[7] = n.m_center + Vector3(-n.m_extents.x, -n.m_extents.y, -n.m_extents.z);
756
757 glBegin(GL_QUADS);
758 glColor3f(0.0f, 1.0f, 0.0f);
759 glVertex3fv(corners[0]);
760 glVertex3fv(corners[1]);
761 glVertex3fv(corners[2]);
762 glVertex3fv(corners[3]);
763
764 glVertex3fv(corners[1]);
765 glVertex3fv(corners[5]);

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected