diff --git a/Hazel/src/Hazel/Scene/Scene.cpp b/Hazel/src/Hazel/Scene/Scene.cpp index cf4d784cd..559475655 100644 --- a/Hazel/src/Hazel/Scene/Scene.cpp +++ b/Hazel/src/Hazel/Scene/Scene.cpp @@ -332,7 +332,7 @@ namespace Hazel { auto& bc2d = entity.GetComponent(); b2PolygonShape boxShape; - boxShape.SetAsBox(bc2d.Size.x * transform.Scale.x, bc2d.Size.y * transform.Scale.y); + boxShape.SetAsBox(bc2d.Size.x * transform.Scale.x, bc2d.Size.y * transform.Scale.y, b2Vec2(bc2d.Offset.x, bc2d.Offset.y), 0.0f); b2FixtureDef fixtureDef; fixtureDef.shape = &boxShape; diff --git a/Hazelnut/src/EditorLayer.cpp b/Hazelnut/src/EditorLayer.cpp index af3f15f54..d7d252b3c 100644 --- a/Hazelnut/src/EditorLayer.cpp +++ b/Hazelnut/src/EditorLayer.cpp @@ -528,11 +528,11 @@ namespace Hazel { { auto [tc, bc2d] = view.get(entity); - glm::vec3 translation = tc.Translation + glm::vec3(bc2d.Offset, 0.001f); glm::vec3 scale = tc.Scale * glm::vec3(bc2d.Size * 2.0f, 1.0f); - glm::mat4 transform = glm::translate(glm::mat4(1.0f), translation) + glm::mat4 transform = glm::translate(glm::mat4(1.0f), tc.Translation) * glm::rotate(glm::mat4(1.0f), tc.Rotation.z, glm::vec3(0.0f, 0.0f, 1.0f)) + * glm::translate(glm::mat4(1.0f), glm::vec3(bc2d.Offset, 0.001f)) * glm::scale(glm::mat4(1.0f), scale); Renderer2D::DrawRect(transform, glm::vec4(0, 1, 0, 1)); @@ -546,11 +546,12 @@ namespace Hazel { { auto [tc, cc2d] = view.get(entity); - glm::vec3 translation = tc.Translation + glm::vec3(cc2d.Offset, 0.001f); glm::vec3 scale = tc.Scale * glm::vec3(cc2d.Radius * 2.0f); - glm::mat4 transform = glm::translate(glm::mat4(1.0f), translation) - * glm::scale(glm::mat4(1.0f), scale); + glm::mat4 transform = glm::translate(glm::mat4(1.0f), tc.Translation) + * glm::rotate(glm::mat4(1.0f), tc.Rotation.z, glm::vec3(0.0f, 0.0f, 1.0f)) + * glm::translate(glm::mat4(1.0f), glm::vec3(cc2d.Offset, 0.001f)) + * glm::scale(glm::mat4(1.0f), glm::vec3(scale.x, scale.x, scale.z)); Renderer2D::DrawCircle(transform, glm::vec4(0, 1, 0, 1), 0.01f); }