diff --git a/Hazelnut/src/EditorLayer.cpp b/Hazelnut/src/EditorLayer.cpp index 9a01e16b7..b93cf091f 100644 --- a/Hazelnut/src/EditorLayer.cpp +++ b/Hazelnut/src/EditorLayer.cpp @@ -475,6 +475,11 @@ namespace Hazel { if (m_ShowPhysicsColliders) { + // Calculate z index for translation + float zIndex = 0.001f; + glm::vec3 cameraForwardDirection = m_EditorCamera.GetForwardDirection(); + glm::vec3 projectionCollider = cameraForwardDirection * glm::vec3(zIndex); + // Box Colliders { auto view = m_ActiveScene->GetAllEntitiesWith(); @@ -482,7 +487,7 @@ namespace Hazel { { auto [tc, bc2d] = view.get(entity); - glm::vec3 translation = tc.Translation + glm::vec3(bc2d.Offset, 0.001f); + glm::vec3 translation = tc.Translation + glm::vec3(bc2d.Offset, -projectionCollider.z); glm::vec3 scale = tc.Scale * glm::vec3(bc2d.Size * 2.0f, 1.0f); glm::mat4 transform = glm::translate(glm::mat4(1.0f), translation) @@ -500,7 +505,7 @@ namespace Hazel { { auto [tc, cc2d] = view.get(entity); - glm::vec3 translation = tc.Translation + glm::vec3(cc2d.Offset, 0.001f); + glm::vec3 translation = tc.Translation + glm::vec3(cc2d.Offset, -projectionCollider.z); glm::vec3 scale = tc.Scale * glm::vec3(cc2d.Radius * 2.0f); glm::mat4 transform = glm::translate(glm::mat4(1.0f), translation)