Создание кастомных инструментов редактора Unity для VR графики

При разработке VR-приложений на Unity стандартный редактор не предоставляет инструментов для контроля специфических метрик: Draw Call budget per-eye, валидации ассетов под требования Oculus VRC, проверки полигонажа с учётом Multiview. Каждый раз открывать Frame Debugger и вручную считать — потеря вр

Наши компетенции

Другие услуги студии

VR/AR/MR приложения на заказ

Впечатляйте клиентов и обучайте команду в виртуальной реальности

Разработка игр на Unity

От идеи до релиза — игры, которые запоминаются

3D-моделирование и анимация

Оживим ваш продукт в объёмной графике и анимации

VR-тренажёры промышленного оборудования

Тренируем операторов на технике без риска и простоя

AR-инструкции для производства

Пошаговые подсказки прямо на оборудовании — без бумаги

Safety-тренажёры

Отработка ЧС и техники безопасности без выхода на объект

VR/AR-тренинги

Обучаем персонал сервису, адаптации и soft skills в VR

Обучающие викторины

Проверка знаний в формате игры — легко и без стресса

Корпоративные видеоинструкции

Понятные ролики для обучения сотрудников и клиентов

Геймификация бизнес-процессов

Мотивируем команду через игровые механики в KPI и HR

Приложения для инфокиосков

Интерактивные экраны для магазинов, стендов и офисов

VR/AR-инсталляции

Wow-эффект для брендов на выставках, ивентах и в шоу-румах

Виртуальные выставки и музеи

Ваша экспозиция доступна из любой точки мира — 24/7

Event-квесты и брендированные игры

Запоминающиеся игры для конференций и клиентских ивентов

Часто задаваемые вопросы

Последние работы

  • image_games_mortal_motors_495_0.webp
    Разработка игры для компании Mortal Motors
    1505
  • image_games_a_turnbased_strategy_game_set_in_a_fantasy_setting_with_fire_and_sword_603_0.webp
    Пошаговая стратегия в фэнтези сеттинге With Fire And Sword
    1006
  • image_games_second_team_604_0.webp
    Разработка игры для компании Second term
    635
  • image_games_phoenix_ii_606_0.webp
    3D-анимация — тизер для игры phoenix 2.
    716
  • image_training-quizzes_kids_shopping_quiz_614_0.webp
    Обучающая викторина для детей «Покупки в магазине»
    96

При разработке VR-приложений на Unity стандартный редактор не предоставляет инструментов для контроля специфических метрик: Draw Call budget per-eye, валидации ассетов под требования Oculus VRC, проверки полигонажа с учётом Multiview. Каждый раз открывать Frame Debugger и вручную считать — потеря времени. Наша команда с опытом более 5 лет в VR-разработке создаёт кастомные Editor Tools, которые автоматизируют эти процессы и ускоряют пайплайн в несколько раз. Закажите разработку инструментов под ваш проект — мы оценим задачу за 1–2 дня.

Проблемы стандартных инструментов для VR

VR имеет жёсткие FPS-бюджеты (72–90 кадров/с) и специфические требования к рендерингу: multivew, тайловый рендеринг, фиксированный FOV. Стандартный Inspector не показывает количество треугольников per-eye, а LOD Group рассчитывает переключение в процентах экрана, не учитывая IPD и разрешение HMD. Именно здесь кастомные инструменты дают прирост скорости.

Какие инструменты реально нужны VR-команде

Самый востребованный класс — Asset Validator. VRC Guideline для Oculus требует: меш персонажа не более 70 000 треугольников, текстуры не выше 2048x2048, все материалы на стандартных шейдерах без Tessellation. Проверять это руками на каждом ассете невозможно при команде 5+ человек. Editor Window с AssetDatabase.FindAssets() + AssetImporter сканирует всю папку за секунды и показывает нарушителей списком с быстрой навигацией.

Второй инструмент — Scene Complexity Dashboard. Прямо в Scene View показывает текущий Draw Call count, количество Shadow Casters, статистику по материалам. Реализуется через EditorWindow + SceneView.duringSceneGui делегат + UnityEditor.Handles для оверлеев. Обновляется при любом изменении иерархии через EditorApplication.hierarchyChanged.

Третий — LOD Preview Tool. Стандартный LOD Group Inspector показывает переключение по проценту экрана, но в VR LOD distance зависит от IPD, FOV и разрешения HMD. Кастомный инструмент пересчитывает LOD transitions в реальные метры для целевого устройства (Quest 3: 96°, 2064x2208 per eye) и показывает, что игрок реально увидит на дистанции 1, 3, 10 метров.

Как кастомные инструменты ускоряют ревью ассетов?

Из практики: в проекте архитектурной VR-визуализации команда тратила 40 минут на каждое ревью ассетов от 3D-художников — проверка полигонажа, UV-развёртки, настроек импорта. После внедрения Asset Validator + AssetPostprocessor это сократилось до 5 минут: инструмент сразу подсвечивает проблемы и применяет стандартные настройки автоматически. Это в 8 раз быстрее — сравнение, которое подтверждает эффективность автоматизации.

Согласно Oculus VR Best Practices Guide, корректная настройка импорта ассетов критична для производительности. Кастомные инструменты гарантируют соблюдение этих рекомендаций без ручных проверок.

Технические детали реализации

Unity Editor API даёт несколько уровней кастомизации:

  • EditorWindow — независимое окно с любым GUI. Для сложных UI с таблицами и фильтрами используем UI Toolkit (рекомендован с Unity 2022 LTS) — он с виртуализацией не лагает на списках из 500+ ассетов.
  • Custom Inspector через [CustomEditor(typeof(MyComponent))] — расширяет стандартный Inspector: добавляем кнопки «Validate FOV Settings», «Check IPD Range», «Preview at Quest 3 Resolution».
  • SceneView Tools через EditorTool (с Unity 2019.1) — кастомный инструмент для «VR Scale Reference»: отображает фигуру человека 1.75 м рядом с любым объектом для оценки масштаба.
  • AssetPostprocessor — хук на импорт ассетов: автоматически применяет нужные настройки к FBX.

Для шейдерного пайплайна делаем ShaderGraph Validator: проверяет совместимость нод с URP Mobile (нет Screen Space, Tessellation, GrabPass-аналогов). Реализуется через ShaderGraph.GraphData API.

Пример кода Asset Validator (EditorWindow)
public class AssetValidator : EditorWindow { [MenuItem("Tools/Asset Validator")] public static void ShowWindow() => GetWindow<AssetValidator>(); private void OnGUI() { if (GUILayout.Button("Validate All Models")) { string[] guids = AssetDatabase.FindAssets("t:Model"); foreach (string guid in guids) { string path = AssetDatabase.GUIDToAssetPath(guid); ModelImporter importer = AssetImporter.GetAtPath(path) as ModelImporter; if (importer != null) { // Check poly count, texture size, etc. } } } } } 

Сравнение стандартных и кастомных инструментов

Характеристика Стандартный редактор Кастомный инструмент
Проверка полигонажа per-eye Только через Frame Debugger Мгновенный Asset Validator
Мониторинг Draw Call Нет встроенного Scene Complexity Dashboard
LOD дистанции под HMD Процент экрана Реальные метры
Автоматическое применение настроек Нет AssetPostprocessor

Что входит в разработку кастомного инструмента?

В рамках работы мы предоставляем:

  • Исходный код инструментов в виде Unity Package с ассемблерами, документацией и примерами использования.
  • Интеграцию с вашей системой контроля версий и инструкции по обновлению через Package Manager.
  • Обучение команды работе с инструментами и поддержку на этапе внедрения.
  • Адаптацию под версию Unity и специфику проекта (Oculus, SteamVR, Pico, HTC Vive).

Этапы работы

  1. Сбор требований. Интервью с командой, выявление наиболее болезненных ручных проверок.
  2. Прототип. Быстрая EditorWindow для ключевой задачи — обратная связь за 1–2 дня.
  3. Полная реализация. UI Toolkit, интеграция с Asset Database, настройка AssetPostprocessor, документация.
  4. Пакетизация. Упаковка в Unity Package для версионирования и распространения.
Тип инструмента Ориентировочные сроки
Простой Asset Validator (EditorWindow) 2–5 дней
Scene Complexity Dashboard с оверлеями 1–2 недели
Полный набор (validator + dashboard + LOD preview) 3–5 недель

Наши компетенции

Более 5 лет коммерческой разработки VR-проектов на Unity (Quest, SteamVR, Pico). Десятки реализованных кастомных инструментов для студий и продакшенов. Используем современные версии Unity (2022 LTS и новее), UI Toolkit, профилирование через Profiler и RenderDoc. Гарантируем, что инструменты покрывают требования Oculus VRC и проходят ревью стор.

Свяжитесь с нами для оценки вашего проекта — мы подготовим предложение под ключ за 1–2 дня. Получите консультацию по автоматизации вашего пайплайна.