Render labels for any geom with a label, not just label geoms.

PiperOrigin-RevId: 817686605
Change-Id: I030626dd942e50eef33e0de7e9d0f314fd2f457d
This commit is contained in:
Haroon Qureshi
2025-10-10 09:57:09 -07:00
committed by Copybara-Service
parent 5f55e96810
commit b63252e4bb
@@ -335,21 +335,17 @@ void SceneView::UpdateScene(const mjrContext* context, const mjvScene* scene) {
drawables_.clear();
for (int i = 0; i < scene->ngeom; ++i) {
const mjvGeom* geom = scene->geoms + i;
const mjtGeom geom_type = static_cast<mjtGeom>(geom->type);
if (geom_type == mjGEOM_LABEL) {
if (geom->label[0] == 0) {
continue;
}
if (geom->label[0] != 0) {
if (auto pos = ClipFromWorld(ReadFloat3(geom->pos))) {
DrawTextAt(geom->label, pos->x, pos->y, pos->z);
}
} else {
auto drawable = std::make_unique<Drawable>(object_mgr_, *geom);
drawable->AddToScene(scene_);
drawable->Update(object_mgr_->GetModel(), scene, *geom);
drawables_.push_back(std::move(drawable));
}
auto drawable = std::make_unique<Drawable>(object_mgr_, *geom);
drawable->AddToScene(scene_);
drawable->Update(object_mgr_->GetModel(), scene, *geom);
drawables_.push_back(std::move(drawable));
}
bool headlight_enabled = false;