diff options
Diffstat (limited to 'src/3d/renderer.cc')
| -rw-r--r-- | src/3d/renderer.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/3d/renderer.cc b/src/3d/renderer.cc index a9beffe..eea3ff0 100644 --- a/src/3d/renderer.cc +++ b/src/3d/renderer.cc @@ -174,7 +174,7 @@ void Renderer3D::update_uniforms(const Scene& scene, const Camera& camera, type_id = 4.0f; else if (obj.type == ObjectType::MESH) type_id = 5.0f; - data.params = vec4(type_id, 0, 0, 0); + data.params = vec4(type_id, obj.local_extent.x, obj.local_extent.y, obj.local_extent.z); obj_data.push_back(data); if (obj_data.size() >= kMaxObjects) break; @@ -303,9 +303,11 @@ void Renderer3D::draw(WGPURenderPassEncoder pass, const Scene& scene, #if !defined(STRIP_ALL) if (s_debug_enabled_) { for (const auto& obj : scene.objects) { - vec3 extent(1.0f, 1.0f, 1.0f); + vec3 extent = obj.local_extent; if (obj.type == ObjectType::TORUS) { extent = vec3(1.5f, 0.5f, 1.5f); + } else if (obj.type != ObjectType::MESH) { + extent = vec3(1.0f, 1.0f, 1.0f); } visual_debug_.add_box(obj.get_model_matrix(), extent, vec3(1.0f, 1.0f, 0.0f)); // Yellow boxes |
