From ed7ba6027f55544b091b75c90fa22253cdd80784 Mon Sep 17 00:00:00 2001 From: Haroon Qureshi Date: Wed, 22 Jul 2026 06:47:47 -0700 Subject: [PATCH] Move SceneDecorator to support module. Also rename it to ModelDecorations. PiperOrigin-RevId: 952088857 Change-Id: I476d616ec950962f781614e39b75d3d59fdcfcd1 --- src/experimental/filament/CMakeLists.txt | 2 -- src/render/filament/CMakeLists.txt | 2 ++ .../filament/support/model_decorations.cc} | 8 ++++---- .../filament/support/model_decorations.h} | 16 ++++++++-------- 4 files changed, 14 insertions(+), 14 deletions(-) rename src/{experimental/filament/compat/scene_decorator.cc => render/filament/support/model_decorations.cc} (97%) rename src/{experimental/filament/compat/scene_decorator.h => render/filament/support/model_decorations.h} (80%) diff --git a/src/experimental/filament/CMakeLists.txt b/src/experimental/filament/CMakeLists.txt index 61d7ca96..321170da 100644 --- a/src/experimental/filament/CMakeLists.txt +++ b/src/experimental/filament/CMakeLists.txt @@ -23,8 +23,6 @@ target_sources(${MUJOCO_FILAMENT_EXPERIMENTAL_TARGET_NAME} PUBLIC compat/scene_bridge.cc compat/scene_bridge.h - compat/scene_decorator.cc - compat/scene_decorator.h compat/scene_geom_util.cc compat/scene_geom_util.h compat/scene_objects.cc diff --git a/src/render/filament/CMakeLists.txt b/src/render/filament/CMakeLists.txt index edc2937d..39329233 100644 --- a/src/render/filament/CMakeLists.txt +++ b/src/render/filament/CMakeLists.txt @@ -59,6 +59,8 @@ target_sources(${MUJOCO_FILAMENT_TARGET_NAME} support/light_manager.cc support/mesh_util.h support/mesh_util.cc + support/model_decorations.h + support/model_decorations.cc support/model_objects.h support/model_objects.cc support/renderable_manager.h diff --git a/src/experimental/filament/compat/scene_decorator.cc b/src/render/filament/support/model_decorations.cc similarity index 97% rename from src/experimental/filament/compat/scene_decorator.cc rename to src/render/filament/support/model_decorations.cc index af3d199d..9cd8ba1f 100644 --- a/src/experimental/filament/compat/scene_decorator.cc +++ b/src/render/filament/support/model_decorations.cc @@ -12,7 +12,7 @@ // See the License for the specific language governing permissions and // limitations under the License. -#include "experimental/filament/compat/scene_decorator.h" +#include "render/filament/support/model_decorations.h" #include #include @@ -34,14 +34,14 @@ using filament::math::float3; using filament::math::float4; using filament::math::mat4; -SceneDecorator::SceneDecorator(mjrfScene* scene, ModelObjects* model_objects, +ModelDecorations::ModelDecorations(mjrfScene* scene, ModelObjects* model_objects, int num_geoms) : scene_(scene), model_objects_(model_objects) { std::memset(&mjv_scene_, 0, sizeof(mjvScene)); mjv_makeScene(model_objects_->GetModel(), &mjv_scene_, 2000); } -SceneDecorator::~SceneDecorator() { +ModelDecorations::~ModelDecorations() { mjv_freeScene(&mjv_scene_); } @@ -101,7 +101,7 @@ static mat4 CalcClipFromWorld(const mjModel* model, const mjData* data, return projection * inverse(look_at); } -void SceneDecorator::Update(mjData* data, const mjvOption* vis_option, +void ModelDecorations::Update(mjData* data, const mjvOption* vis_option, const mjvPerturb* perturb, mjvCamera* camera, const mjrRect& viewport, DrawTextAtFn draw_text_at_fn, diff --git a/src/experimental/filament/compat/scene_decorator.h b/src/render/filament/support/model_decorations.h similarity index 80% rename from src/experimental/filament/compat/scene_decorator.h rename to src/render/filament/support/model_decorations.h index c69ab1f1..1cffa90f 100644 --- a/src/experimental/filament/compat/scene_decorator.h +++ b/src/render/filament/support/model_decorations.h @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -#ifndef MUJOCO_SRC_EXPERIMENTAL_FILAMENT_COMPAT_SCENE_DECORATOR_H_ -#define MUJOCO_SRC_EXPERIMENTAL_FILAMENT_COMPAT_SCENE_DECORATOR_H_ +#ifndef MUJOCO_SRC_RENDER_FILAMENT_SUPPORT_MODEL_DECORATIONS_H_ +#define MUJOCO_SRC_RENDER_FILAMENT_SUPPORT_MODEL_DECORATIONS_H_ #include #include @@ -31,11 +31,11 @@ namespace mujoco { // // Internally uses mjvScene to generate decorative mjvGeoms from which the // renderables are then created. -class SceneDecorator { +class ModelDecorations { public: - SceneDecorator(mjrfScene* scene, ModelObjects* model_objects, + ModelDecorations(mjrfScene* scene, ModelObjects* model_objects, int num_geoms = 2000); - ~SceneDecorator(); + ~ModelDecorations(); // Function for drawing text at a given position in clip space. using DrawTextAtFn = std::function; @@ -46,8 +46,8 @@ class SceneDecorator { const mjrRect& viewport, DrawTextAtFn draw_text_at_fn = nullptr, std::span extra_geoms = {}); - SceneDecorator(const SceneDecorator&) = delete; - SceneDecorator& operator=(const SceneDecorator&) = delete; + ModelDecorations(const ModelDecorations&) = delete; + ModelDecorations& operator=(const ModelDecorations&) = delete; private: mjrfScene* scene_; @@ -59,4 +59,4 @@ class SceneDecorator { } // namespace mujoco -#endif // MUJOCO_SRC_EXPERIMENTAL_FILAMENT_COMPAT_SCENE_DECORATOR_H_ +#endif // MUJOCO_SRC_RENDER_FILAMENT_SUPPORT_MODEL_DECORATIONS_H_