Scene Inspector: вкладки, дерево сцены, свойства

Scene Inspector — это мощный инструмент для анализа и отладки 3D-сцен в Babylon.js. Он позволяет визуально исследовать сцену, управлять объектами, изменять их свойства и контролировать рендеринг в реальном времени. Inspector интегрируется с веб-приложением и предоставляет интерфейс, состоящий из нескольких вкладок и панелей, каждая из которых отвечает за отдельный аспект сцены.


Вкладки Scene Inspector

Scene Inspector делится на несколько ключевых вкладок, каждая из которых служит для определённых задач:

  1. Scene Explorer Основная вкладка для навигации по сцене. Позволяет просматривать все элементы сцены в виде дерева, включая камеры, светильники, меши, материалы, текстуры и эффекты.

    • Дерево сцены (Hierarchy Tree) Все объекты сцены отображаются в иерархической структуре. Родительские объекты можно разворачивать, чтобы увидеть вложенные дочерние элементы.

      • Камеры и светильники располагаются в отдельной ветке.
      • Меши отображаются с иконками, обозначающими тип объекта (Mesh, GroundMesh, LinesMesh и т.д.).
      • Ветви дерева можно фильтровать по типу объекта.
    • Контекстное меню объектов При клике правой кнопкой на объект открывается меню с действиями:

      • Изменение видимости (setVisibility)
      • Удаление объекта
      • Фокусировка камеры на объекте
      • Быстрый доступ к материалам и свойствам
  2. Properties (Свойства) Панель свойств отображает все атрибуты выбранного объекта. Для мешей это может быть:

    • Позиция, вращение и масштаб (Vector3)
    • Свойства материала: цвет, прозрачность, текстуры
    • Физические свойства (масса, столкновения, имитация гравитации)

    Свойства можно изменять динамически через интерфейс, что позволяет моментально видеть результат в сцене.

  3. Tools Вкладка с дополнительными инструментами:

    • Picking — выбор объектов по клику мышью
    • Debug Layer Options — управление отображением гизмо и вспомогательных линий
    • Performance Monitor — статистика производительности сцены: FPS, время рендеринга, количество draw calls
  4. Statistics Показывает метрики сцены:

    • Количество мешей, вершин, текстур
    • Загруженные шейдеры и материалы
    • Потребление памяти и состояние GPU
  5. GUI Editor Интегрированная среда для работы с 2D/3D GUI элементами (AdvancedDynamicTexture, кнопки, панели). Позволяет визуально редактировать интерфейсные элементы сцены.


Дерево сцены: структура и взаимодействие

Дерево сцены — основной инструмент для навигации и управления объектами.

  • Иерархия объектов Дочерние объекты наследуют трансформации родителя. Например, перемещение родительского меша автоматически сдвигает все вложенные объекты.
  • Выделение объектов При выделении объекта в дереве его свойства автоматически отображаются в панели Properties.
  • Группировка Можно создавать пустые TransformNode для объединения нескольких мешей в логическую группу, облегчая манипуляции и организацию сцены.

Свойства объектов: подробности

Каждый объект в Babylon.js имеет набор свойств, доступных через Scene Inspector:

  • Transformations

    • position — координаты объекта
    • rotation / rotationQuaternion — вращение объекта
    • scaling — масштабирование
  • Материалы и текстуры

    • Присвоение стандартного или PBR материала
    • Настройка diffuse, specular, emissive цветов
    • Добавление текстур: diffuse, bump, opacity maps
  • Поведение и физика

    • Включение столкновений (checkCollisions)
    • Управление физическим движком: масса, сила гравитации, импульсы
  • Анимации Scene Inspector позволяет просматривать и воспроизводить анимации объектов, изменять ключевые кадры и редактировать кривые анимации в реальном времени.


Работа с материалами и эффектами

Inspector предоставляет быстрый доступ к материалам:

  • Возможность применять материалы к объектам перетаскиванием
  • Настройка шейдеров и параметров PBR
  • Вкладка Inspector Materials позволяет управлять текстурами, каналами отражения, прозрачностью и освещением без необходимости писать код

Производительность и отладка

Scene Inspector не только показывает структуру сцены, но и позволяет отслеживать её производительность:

  • FPS и время рендеринга
  • Количество активных мешей и draw calls
  • Загрузка текстур и ресурсов GPU

Использование этих данных помогает выявлять узкие места, оптимизировать сцену и улучшать визуализацию.


Scene Inspector в Babylon.js — комплексный инструмент для глубокого анализа сцены, редактирования свойств объектов и контроля производительности. Его вкладки, дерево сцены и панели свойств обеспечивают полное визуальное управление 3D-миром, позволяя работать эффективно и наглядно.