This page has been translated automatically.
Видеоуроки
Интерфейс
Основы
Продвинутый уровень
Подсказки и советы
Основы
Программирование на C#
Рендеринг
Профессиональный уровень (SIM)
Принципы работы
Свойства (properties)
Компонентная Система
Рендер
Режимы вывода изображения
Физика
Браузер SDK 2
Лицензирование и типы лицензий
Дополнения (Add-Ons)
Демонстрационные проекты
API Samples
Редактор UnigineEditor
Обзор интерфейса
Работа с ассетами
Контроль версий
Настройки и предпочтения
Работа с проектами
Настройка параметров ноды
Setting Up Materials
Настройка свойств
Освещение
Sandworm
Использование инструментов редактора для конкретных задач
Расширение функционала редактора
Встроенные объекты
Ноды (Nodes)
Объекты (Objects)
Эффекты
Декали
Источники света
Geodetics
World-ноды
Звуковые объекты
Объекты поиска пути
Player-ноды
Программирование
Основы
Настройка среды разработки
Примеры использования
C++
C#
UnigineScript
Унифицированный язык шейдеров UUSL (Unified UNIGINE Shader Language)
Плагины
Форматы файлов
Материалы и шейдеры
Rebuilding the Engine Tools
Интерфейс пользователя (GUI)
Двойная точность координат
API
Animations-Related Classes
Containers
Common Functionality
Controls-Related Classes
Engine-Related Classes
Filesystem Functionality
GUI-Related Classes
Math Functionality
Node-Related Classes
Objects-Related Classes
Networking Functionality
Pathfinding-Related Classes
Physics-Related Classes
Plugins-Related Classes
IG Plugin
CIGIConnector Plugin
Rendering-Related Classes
VR-Related Classes
Работа с контентом
Оптимизация контента
Материалы
Визуальный редактор материалов
Material Nodes Library
Miscellaneous
Input
Math
Matrix
Textures
Art Samples
Учебные материалы

Профилировщик производительности

A performance profiler displays performance data in a timeline. It reports how much time is spent per each frame for updating all aspects of your project: rendering nodes that are in view, updating their states, executing scripts with game logic, calculating physics, etc. Профилировщик производительности отображает данные о производительности на шкале времени. Он сообщает, сколько времени затрачивается на каждый кадр для обновления всех аспектов вашего проекта: визуализации нод, которые находятся в поле зрения, обновления их состояний, выполнения сценариев с игровой логикой, расчета физики и т.д.

With the profiler, you can:С помощью профилировщика вы можете:

  • Detect the bottlenecks of your application Обнаружить узкие места в вашем приложении
  • Check if art assets optimization is required Проверить, требуется ли оптимизация художественных активов.
  • Check if code optimization is required Проверить, требуется ли оптимизация кода.
  • Compare the profiling results before and after the changes Сравнить результаты профилирования до и после изменений.

Performance ProfilerПрофилировщик производительности

Activate Profilers
Активация профилировщика#

To turn the profiler on, click Tools -> Performance Profiler and choose the required profiling mode: Чтобы включить профилировщик, нажмите Tools -> Performance Profiler и выберите нужный режим профилирования:

Примечание
You can also set a hot key (or a key combination) that will run the profiler in the Hotkeys section of the Settings window. However, you will have to create a custom preset. Then you can press this hot key for several times to cycle through profiling modes. Вы также можете установить горячую клавишу (или комбинацию клавиш), которая будет запускать профилировщик в разделе Hotkeys окна Settings. Однако вам нужно будет создать собственный пресет . Затем вы можете нажимать эту горячую клавишу несколько раз, чтобы переключаться между режимами профилирования.

The following profiling modes are available: Доступны следующие режимы профилирования:

  1. Generic profiler shows only the general statistics block. Generic profiler показывает только блок общей статистики.
  2. Rendering profiler shows the detailed rendering statistics and the timeline chart. Rendering profiler показывает подробную статистику рендеринга и временную диаграмму.
  3. Physics profiler shows the detailed physics-related statistics (within the Physics radius) and the timeline chart. Physics profiler показывает подробную статистику по физике (в пределах Physics radius ) и временную диаграмму.
  4. World Management profiler shows the statistics on the whole loaded world. World Management profiler показывает статистику по всему загруженному миру.
  5. Thread profiler shows the statistics on loading threaded resources. Thread profiler показывает статистику загрузки потоковых ресурсов.

To show profiler statistics in the in-game mode, type the show_profiler 1 command in the console. To disable the profiler in the in-game mode, type show_profiler 0 in the console.Чтобы отобразить статистику профилировщика во внутриигровом режиме, введите команду show_profiler 1 в консоли. Чтобы отключить профилировщик в игровом режиме, введите show_profiler 0 в консоли.

Generic Profiler
Универсальный профилировщик#

Generic Profiler Enabled Общий профилировщик включен
Total Total time in milliseconds taken to both calculate and render the current frame. This is the duration of the main loop in the application execution sequence.
Total = Total CPU + Waiting GPU
Общее время в миллисекундах, затраченное на расчет и визуализацию текущего кадра. Это продолжительность основного цикла в последовательности выполнения приложения.
Total = Total CPU + Waiting GPU
Total CPU Total time in milliseconds taken to prepare the current frame (including update, render, and swap). Общее время в миллисекундах, затраченное на подготовку текущего кадра (включая обновление, рендеринг и свопинг ).
Total GPU Total time in milliseconds taken to render the current frame on the GPU.
Примечание
This counter may not work on some GPUs.This counter may not work on some GPUs.
This counter may not work on some GPUs.
Общее время в миллисекундах, затраченное на рендеринг текущего кадра на графическом процессоре.
Примечание
This counter may not work on some GPUs.Этот счетчик может не работать на некоторых графических процессорах.
Update Time taken to update application logic. This includes executing all steps in the update() function of the world script. It also includes the update of states of all nodes (for example, update of the skinned animation or of a particle system to spawn new particles).
  • If the Update time is too high, it signals that you need to optimize the application logic executed each frame.If the Update time is too high, it signals that you need to optimize the application logic executed each frame.
  • You may also need to decrease the number of objects in the world, as updating their states (spawn particles by the particle systems, play skinned mesh animation, etc.) increases the load.You may also need to decrease the number of objects in the world, as updating their states (spawn particles by the particle systems, play skinned mesh animation, etc.) increases the load.
If the Update time is too high, it signals that you need to optimize the application logic executed each frame.You may also need to decrease the number of objects in the world, as updating their states (spawn particles by the particle systems, play skinned mesh animation, etc.) increases the load.
Время, затраченное на обновление логики приложения. Это включает выполнение всех шагов функции update() world-скрипта. Он также включает в себя обновление состояний всех нод (например, обновление skinned-анимации со скинами или системы частиц для генерации новых частиц).
  • If the Update time is too high, it signals that you need to optimize the application logic executed each frame. Если время обновления слишком велико, это означает, что вам необходимо оптимизировать логику приложения, выполняемого каждый кадр.
  • You may also need to decrease the number of objects in the world, as updating their states (spawn particles by the particle systems, play skinned mesh animation, etc.) increases the load. Вам также может потребоваться уменьшить количество объектов в мире, так как обновление их состояний (создание частиц системами частиц, воспроизведение анимации скелетного меша и т.д.) увеличивает нагрузку.
Render CPU Time taken to prepare all data to be rendered in the current frame and feed rendering commands from the CPU to the GPU. If Render CPU time is too high, it signals that art assets may need to be optimized, for example:
  • LOD system should be used;LOD system should be used;
  • polygon count of models should be reduced.polygon count of models should be reduced.
LOD system should be used;polygon count of models should be reduced.
Время, необходимое для подготовки всех данных к рендерингу в текущем кадре и передачи команд рендеринга из ЦП в ГП. Если процессорное время рендеринга слишком велико, это сигнализирует о необходимости оптимизации художественных ресурсов, например:
  • LOD system should be used; LOD система должна использоваться;
  • polygon count of models should be reduced. количество полигонов моделей должно быть уменьшено.
Waiting GPU Time between completing all calculations on the CPU up to the moment when the GPU has finished rendering the frame. (See the illustration). This counter is useful to analyze the bottleneck in your application's performance.
  • When Waiting GPU time is equal to 0, it signals that scripts take too long to be updated and calculations are too intensive for CPU to perform them fast enough. In this case, your application has a CPU bottleneck. Optimize your update block in the world scripts or reduce the number of objects updated each frame.When Waiting GPU time is equal to 0, it signals that scripts take too long to be updated and calculations are too intensive for CPU to perform them fast enough. In this case, your application has a CPU bottleneck. Optimize your update block in the world scripts or reduce the number of objects updated each frame.
  • High Waiting GPU time means one of the following:
    • low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case.low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case.
    • consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script.consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script.
    low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case.consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script.
    High Waiting GPU time means one of the following:
    • low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case.low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case.
    • consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script.consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script.
When Waiting GPU time is equal to 0, it signals that scripts take too long to be updated and calculations are too intensive for CPU to perform them fast enough. In this case, your application has a CPU bottleneck. Optimize your update block in the world scripts or reduce the number of objects updated each frame.High Waiting GPU time means one of the following:
  • low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case.low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case.
  • consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script.consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script.
low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case.consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script.
Время между завершением всех вычислений на ЦП до момента, когда графический процессор завершил рендеринг кадра. (См. иллюстрацию ). Этот счетчик полезен для анализа узких мест в производительности вашего приложения.
  • When Waiting GPU time is equal to 0, it signals that scripts take too long to be updated and calculations are too intensive for CPU to perform them fast enough. In this case, your application has a CPU bottleneck. Optimize your update block in the world scripts or reduce the number of objects updated each frame. Если время ожидания GPU равно 0 , это означает, что скрипты слишком долго обновляются, а вычисления слишком интенсивны, чтобы ЦП мог их выполнять достаточно быстро. В этом случае ваше приложение имеет узкое место в ЦП. Оптимизируйте блок обновления в скриптах мира или уменьшите количество объектов, обновляемых в каждом кадре.
  • High Waiting GPU time means one of the following:
    • low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case.low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case.
    • consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script.consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script.
    low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case.consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script.
    Время высокого ожидания GPU означает одно из следующих:
    • low framerate signals that there exists a GPU bottleneck. The art content needs to be optimized in this case. низкая частота кадров свидетельствует о наличии узкого места в графическом процессоре. В этом случае необходимо оптимизировать художественное содержание.
    • consistently high framerate means you have free CPU resources available to process more numbers in the update() of the world script. стабильно высокая частота кадров означает, что у вас есть свободные ресурсы ЦП для обработки большего количества чисел в update () сценария world.
Interface Time taken to render all GUI widgets. Время, затраченное на рендеринг всех виджетов GUI.
Total Physics Time taken to perform all physics calculations. Время, затраченное на выполнение всех физических расчетов.
Waiting Physics Time period during which the physics module waits for the completion of rendering process to return to the Main thread and execute the rest of the physics ticks.Период времени, в течение которого физический модуль дожидается завершения процесса рендеринга для того, чтобы вернуться в основной поток и выполнить остальные кадры физики.
CPU ram free The amount of currently available memory.Объем доступной в данный момент памяти.
CPU ram usage physics The current size of the working set. The working set is the set of memory pages currently visible in physical RAM (check the source).Текущий размер рабочего набора. Рабочий набор - это набор страниц памяти, которые в данный момент отображаются в физической оперативной памяти (см. источник).
CPU ram usage committed The total amount of private memory that the memory manager has committed for a running process (check the source).Общий объем частной памяти, выделенный менеджером памяти для запущенного процесса (см. источник).
CPU ram malloc The amount of memory allocated by the UNIGINE custom allocator.Объем памяти, выделяемый пользовательским аллокатором UNIGINE.
CPU ram static pool The amount of memory allocated in static pools.Объем памяти, выделяемой в статических пулах.
CPU ram dynamic pool The amount of memory allocated in dynamic pools. Available on Windows only.Объем памяти, выделяемой в динамических пулах. Доступно только в Windows.
CPU ram instance pool The amount of memory allocated in instance pools.Объем памяти, выделяемой в пулах экземпляров.
Frame Allocations The number of allocations made per frame. The UNIGINE allocator allocates memory in pools which allows the allocation to be faster and more efficient.Количество выделений, выполняемых для каждого кадра. Аллокатор UNIGINE распределяет память в пулах, что позволяет распределять память быстрее и эффективнее.
Live Allocations The current number of allocations made / The maximum number of allocations made during runtime (peak consumption).Текущее количество выполненных распределений / Максимальное количество распределений, выполненных во время выполнения (пиковое потребление).
GPU vram free The amount of currently available video memory.Объем доступной в данный момент видеопамяти.
GPU vram usage The amount of VRAM used by GPU. This value is provided by a graphics driver.Объем видеопамяти, используемый графическим процессором. Это значение задается графическим драйвером.
GPU ram usage The amount of RAM used by GPU. This value is provided by a graphics driver.Объем оперативной памяти, используемый графическим процессором. Это значение задается графическим драйвером.
GPU alloc The number of allocations made by the engine on GPU.Количество выделений, выполненных движком на графическом процессоре.
GPU Frame Allocations The number of video memory allocations made per frame.Количество выделяемой видеопамяти для каждого кадра.
GPU Live Allocations The current number of allocations made / The maximum number of allocations made during runtime (peak consumption).Текущее количество выполненных распределений / Максимальное количество распределений, выполненных во время выполнения (пиковое потребление).

Memory Profiler
Профилировщик памяти#

Memory Profiler EnabledПрофилировщик памяти включен

The following statistics are displayed in addition to the generic one:В дополнение к общей статистике отображаются следующие статистические данные:

Примечание
The memory statistics provided in this section is available within the Rendering profiler when enabled via the UnigineEditor interface (Tools -> Performance Profiler -> Rendering).
However, you can enable the Memory profiler separately by using the show_profiler_memory 1 console command. In this case, only memory statistics will be displayed.
Статистика памяти, представленная в этом разделе, доступна в профилировщике рендеринга, если он включен через интерфейс UnigineEditor (Tools -> Performance Profiler -> Rendering).
Однако вы можете включить профилировщик памяти отдельно, используя консольную команду show_profiler_memory 1. В этом случае будет отображаться только статистика по памяти.
GPU Allocator small pool size The maximum size of the VRAM pool for small allocations.Максимальный размер пула видеопамяти для небольших выделений.
GPU Allocator small pool usage Actual usage of the video memory pool for small allocations.Фактическое использование пула видеопамяти для небольших выделений.
GPU Allocator skinned The amount of video memory allocated for skinned meshes.Объем видеопамяти, выделенный для Skinned Mesh.
GPU Allocator decals The amount of video memory allocated for decals.Объем видеопамяти, выделенный для декалей.
RAM ImagePool Memory (RAM) amount currently used for the image pool.Объем памяти (RAM), используемый в данный момент для пула изображений.
RAM StringPool Memory (RAM) amount currently used for the global string pool that stores duplicate strings. The string pool increases performance, as it stores only one string instead of its several duplicates. However, this pool is cleared only on the engine shutdown, so it is important to keep its size at the adequate level during runtime.Объем оперативной памяти (RAM), используемый в настоящее время для глобального пула строк, в котором хранятся повторяющиеся строки. Пул строк повышает производительность, поскольку в нем хранится только одна строка вместо нескольких ее дубликатов. Однако этот пул очищается только при завершении работы движка, поэтому важно поддерживать его размер на достаточном уровне во время выполнения.
RAM Sounds Memory (RAM) amount currently used for sound samples, in megabytes.Объем оперативной памяти (RAM), используемый в настоящее время для обработки звуковых сэмплов, в мегабайтах.
RAM Terrain Memory (RAM) amount currently used for terrain streaming, and the memory limit set for it, in megabytes. The memory limit is the maximum amount of RAM that can be used for terrain streaming.Объем оперативной памяти (RAM), используемый в настоящее время для асинхронной загрузки ландшафта, и максимальный объем оперативной памяти, который может для этого использоваться, в мегабайтах.
RAM Animations Memory (RAM) amount currently used for animations (stored in the .anim files).Объем памяти (RAM), используемый в данный момент для анимации (хранится в файлах .anim).
RAM Meshes Static All Total amount of RAM currently used for streaming static meshes.
Примечание
The same static mesh will use more RAM than VRAM, as additional data is generated in RAM to calculate collisions, intersections, spatial trees and so on.The same static mesh will use more RAM than VRAM, as additional data is generated in RAM to calculate collisions, intersections, spatial trees and so on.
The same static mesh will use more RAM than VRAM, as additional data is generated in RAM to calculate collisions, intersections, spatial trees and so on.
Общий объем оперативной памяти, используемый в настоящее время для потоковой передачи статических мешей.
Примечание
The same static mesh will use more RAM than VRAM, as additional data is generated in RAM to calculate collisions, intersections, spatial trees and so on.Один и тот же статический меш будет использовать больше оперативной памяти, чем VRAM, поскольку в оперативной памяти генерируются дополнительные данные для расчета столкновений, пересечений, пространственных деревьев и так далее.
RAM Meshes Static Active Amount of RAM actively used for static meshes rendering.Объем оперативной памяти, активно используемый для рендеринга статических мешей.
RAM Meshes Static Cache Amount of RAM used for cached static meshes.Объем оперативной памяти, используемый для кэширования статических мешей.
RAM Meshes Skinned All Total amount of RAM currently used for streaming skinned meshes.Общий объем оперативной памяти, используемый в настоящее время для потоковой передачи Skinned Mesh.
RAM Meshes Skinned Active Amount of RAM actively used for skinned meshes rendering.Объем оперативной памяти, активно используемый для рендеринга Skinned Mesh.
RAM Meshes Skinned Cache Amount of RAM used for cached skinned meshes.Объем оперативной памяти, используемый для кэширования Skinned Mesh.
VRAM Render Buffers Amount of VRAM currently used for rendering buffers (Gbuffer, post-effects, etc.), in megabytes.Объем видеопамяти, используемый в данный момент для рендеринга буферов (Gbuffer, постэффектов и т.д.), в мегабайтах.
VRAM Particles Amount of VRAM currently used for vertices of particle systems, and the maximum amount of VRAM that can be used for them, in megabytes.Объем видеопамяти, используемой в настоящее время для вершин систем частиц, и максимальный объем видеопамяти, который может быть использован для них, в мегабайтах.
VRAM Meshes Static All Total amount of VRAM currently used for streaming static meshes.Общий объем видеопамяти, используемый в настоящее время для потоковой передачи статических мешей.
VRAM Meshes Static Active Amount of VRAM actively used for static meshes rendering.Объем видеопамяти, активно используемый для рендеринга статических мешей.
VRAM Meshes Static Cache Amount of VRAM used for cached static meshes.Объем видеопамяти, используемой для кэширования статических мешей.
VRAM Meshes Skinned All Total amount of VRAM currently used for skinned meshes.Общий объем видеопамяти, используемый в настоящее время для Skinned Mesh.
VRAM Meshes Skinned Active Amount of VRAM actively used for skinned meshes rendering.Объем видеопамяти, активно используемый для рендеринга Skinned Mesh.
VRAM Meshes Skinned Cache Amount of VRAM used for cached skinned meshes.Объем видеопамяти, используемый для кэширования Skinned Mesh.
VRAM Textures All Total amount of VRAM currently used for textures, and the maximum amount of VRAM that can be used for them, in megabytes.Общий объем видеопамяти, используемый в данный момент для текстур, и максимальный объем видеопамяти, который может быть использован для них, в мегабайтах.
VRAM Textures Active Amount of VRAM actively used for textures rendering.Объем видеопамяти, активно используемый для рендеринга текстур.
VRAM Textures Cache Amount of VRAM currently used for textures cache, in megabytes.Объем видеопамяти, используемой в настоящее время для кэширования текстур, в мегабайтах.
VRAM Terrain Cache Amount of VRAM cache currently used for Landscape Terrain tiles, in megabytes.Объем кэша VRAM, используемого в настоящее время для фрагментов Landscape Terrain, в мегабайтах.
VRAM Terrain Virtual Texture Amount of VRAM currently used for the Landscape Terrain virtual texture, in megabytes.Объем видеопамяти, используемый в настоящее время для виртуальной текстуры Landscape Terrain, в мегабайтах.
VRAM Terrain Detail Textures Amount of VRAM currently used for Landscape Terrain details, in megabytes.Объем видеопамяти, используемый в настоящее время для получения сведений о Landscape Terrain, в мегабайтах.
RAM Streaming need Amount of RAM that is currently need to be streamed.Объем оперативной памяти, который в данный момент требуется для потоковой передачи.
VRAM Streaming need Amount of VRAM that is currently need to be streamed.Объем видеопамяти, который в данный момент требуется для потоковой передачи.

Rendering Profiler
Профилировщик рендеринга#

Rendering Profiler EnabledВключен профилировщик рендеринга

The following statistics are displayed in addition to the generic and memory statistics:В дополнение к общей статистике и статистике по памяти отображаются следующие статистические данные:

Примечание
When enabled via the UnigineEditor interface (Tools -> Performance Profiler -> Rendering), the profiler additionally provides the memory statistics.
However, if you enable it using the show_profiler_render 1 console command, only statistics provided below will be displayed.
При включении через интерфейс UnigineEditor (Tools -> Performance Profiler -> Rendering) профилировщик дополнительно предоставляет статистику по памяти.
Однако, если вы включите его с помощью консольной команды show_profiler_render 1, будут отображаться только приведенные ниже статистические данные.
Terrain Reload Tiles Number of Landscape Terrain tiles that are currently awaiting reloading after being modified. Количество тайлов Landscape Terrain, ожидающих перезагрузки после модификации.
Terrain Reload Bounds Number of events causing reloading of tiles (one bound may cause reloading of multiple tiles). Количество событий, вызывающих перезагрузку тайлов (одна граница может вызвать перезагрузку нескольких тайлов).
Dynamic Reflections The number of dynamic reflections drawn per frame. In case of cubemap reflections, if all six faces are updated, six reflections are rendered each frame. Количество динамических отражений, отрисовываемых за кадр. В случае отражений кубической текстуры, если обновлены все шесть граней, в каждом кадре рендерится шесть отражений.
Lights Number of light passes rendered per frame. This means that the counter displays the number of all light sources that are currently seen illuminating something in the viewport. This value also includes additional passes for rendering lights in the reflecting surfaces (if dynamical reflections are used). Plain 2D reflection will multiply the number of rendering passes by two, while cubemap-based reflection with six faces updated each frame will multiply the number of rendering passes by six.
Примечание
Each light redraws mesh polygons it illuminates. That is why the higher the number of light sources, the higher the number of polygons the graphics card has to render, and the lower the performance. For example, using two omni lights will as much as double the rendered geometry they shine on.Each light redraws mesh polygons it illuminates. That is why the higher the number of light sources, the higher the number of polygons the graphics card has to render, and the lower the performance. For example, using two omni lights will as much as double the rendered geometry they shine on.
Each light redraws mesh polygons it illuminates. That is why the higher the number of light sources, the higher the number of polygons the graphics card has to render, and the lower the performance. For example, using two omni lights will as much as double the rendered geometry they shine on.
Количество проходов света, визуализируемых на кадр. Это означает, что счетчик отображает количество всех источников света, которые в данный момент видны и освещают что-то во вьюпорте. Это значение также включает дополнительные проходы для визуализации источников света на отражающих поверхностях (если используются динамические отражения). Простое 2D-отражение умножит количество проходов рендеринга на два, в то время как отражение на кубической карте с шестью гранями, обновленными в каждом кадре, умножит количество проходов рендеринга на шесть.
Примечание
Each light redraws mesh polygons it illuminates. That is why the higher the number of light sources, the higher the number of polygons the graphics card has to render, and the lower the performance. For example, using two omni lights will as much as double the rendered geometry they shine on. Каждый источник света перерисовывает полигоны меша, который он освещает. Вот почему, чем больше количество источников света, тем большее количество полигонов должна визуализировать видеокарта и тем ниже производительность. Например, использование двух всенаправленных источников света вдвое увеличивает количество отрисовываемой геометрии, на которую они светят.
Shadows Number of shadow passes rendered per frame. Each light requires a shadow pass to calculate the shadows. Again, if there are reflecting surfaces with shadows drawn reflected, this will increase the number of shadow passes. Количество проходов тени, визуализируемых за кадр. Для каждого источника света требуется проход тени для расчета теней. Опять же, если есть отражающие поверхности с нарисованными отраженными тенями, это увеличит количество проходов тени.
Decals

Number of decals rendered per frame (in all rendering passes). If a decal has any additional effect (is transparent, emits light, lit by a light source, or has any other visual effect) that involves an additional rendering pass for this decal, this decal will be rendered additionally in every corresponding pass, thus the total number of rendered decals will increase. Количество декалей, отображаемых за кадр (во всех проходах рендеринга ). Если для декали предусмотрен дополнительный эффект (прозрачность, эмиссия, освещенность или другой эффект), который подразумевает дополнительный проход рендеринга для этой декали, то эта декаль будет дополнительно отрисовываться в каждом соответствующем проходе, таким образом число отрисованных декалей увеличится.

Surfaces

Number of surfaces rendered per frame (in all rendering passes). If a surface has any additional effect (is transparent, emits light, lit by a light source, or has any other visual effect) that involves an additional rendering pass for this surface, this surface will be rendered additionally in every corresponding pass, thus the total number of rendered surfaces will increase. Количество поверхностей, визуализируемых за кадр (во всех проходах рендеринга ). Если для поверхности предусмотрен дополнительный эффект (прозрачность, эмиссия, освещенность или другой эффект), который подразумевает дополнительный проход рендеринга для этой поверхности, то эта поверхность будет дополнительно отрисовываться в каждом соответствующем проходе, таким образом число отрисованных поверхностей увеличится.

Triangles All Total number of triangles rendered per frame including all polygons that are currently visible in the viewport as well as the ones rendered in the process of shadows rendering. Общее количество треугольников, визуализируемых за кадр, включая все полигоны, которые в данный момент видны во вьюпорте, а также те, которые отображаются в процессе визуализации теней.
Triangles Shadows Number of triangles rendered per frame in the process of shadows rendering. Each light source has to redraw the geometry it illuminates, increasing the overall count of rendered triangles. In order to avoid GPU bottleneck, keep the number of dynamic light sources and their radius as low, as possible. Количество треугольников, визуализируемых за кадр в процессе визуализации теней. Каждый источник света должен повторно отрисовывать геометрию, которую он освещает, увеличивая общее количество визуализированных треугольников. Чтобы избежать проблем с графическим процессором, делайте количество динамических источников света и их радиус как можно меньше.
Triangles Viewport Number of triangles rendered per frame. This includes all polygons that are currently visible in the viewport (geometry). Количество треугольников, отображаемых за кадр. Сюда входят все полигоны, которые в данный момент видны во вьюпорте (геометрия).
Primitives Number of geometric primitives rendered per frame. This includes points, lines, triangles, and polygons. The visualizer and the profiler itself also add to this counter. The value differs dramatically if tessellation is used. In this case, Triangles reports the number of triangles in the coarse mesh, while Primitives shows statistics on the number of tessellated primitives. Количество геометрических примитивов, визуализируемых за кадр. Сюда входят точки, линии, треугольники и многоугольники. Визуализатор и сам профилировщик также добавляются к этому счетчику. При использовании тесселяции значение сильно отличается. В этом случае Triangles отображает количество треугольников в грубом меше, а Primitives показывает статистику количества тесселированных примитивов.
Dips The number of draw calls. The higher the number of identical mesh surfaces with the same material, the more effective the instancing is (enabled by default). This means, the number of draw calls is minimized offloading both the CPU and the GPU.
You can compare the number of surfaces (Surfaces) and the number of DIPs used to render them. For example, if there are 30000 surfaces and 1000 DIPs, it means that 30 instanced surfaces of meshes are rendered per only one draw call (Surfaces/Dips). Thus the instancing provides performance boost.
Количество вызовов отрисовки. Чем больше количество идентичных поверхностей меша с одним и тем же материалом, тем эффективнее создание экземпляров (по умолчанию включено). Это означает, что количество вызовов отрисовки сводится к минимуму, разгружая как ЦП, так и ГП.
Вы можете сравнить количество поверхностей (Surfaces) и количество DIP, используемых для их рендеринга. Например, если имеется 30000 поверхностей и 1000 DIP, это означает, что 30 экземпляров поверхностей мешей визуализируются всего за один вызов отрисовки (Surfaces / Dips). Таким образом, инстансинг обеспечивает повышение производительности.
Materials Number of materials set per frame. (Materials are set in each of the rendering passes.) Количество материалов, установленных для каждого кадра. (Материалы задаются в каждом из проходов рендеринга.)
Shaders Number of shaders set per frame. (Shaders are set in each of the rendering passes; hence if only one material used, its shader still needs to be set several times. When nothing is visible and the screen is black, even in this case the composite shader is still used.) Количество шейдеров, установленных на кадр. (Шейдеры устанавливаются в каждом из проходов рендеринга ; следовательно, если используется только один материал, его шейдер все равно нужно установить несколько раз. Когда ничего не видно и экран черный, даже в этом случае композитный шейдер все еще используется.)
Compiled PSO Number of PSOs that are currently compiled.Количество PSO, которые в настоящее время скомпилированы.
Loaded PSO Current number of loaded PSOs.Текущее количество загруженных PSO.
Compiled Shaders Number of shaders that are currently compiled.Количество скомпилированных в данный момент шейдеров.
Loaded Shaders Number of shaders loaded to RAM.Количество шейдеров, загруженных в оперативную память.
Примечание
Values less then 1 Mb are displayed as 0. Значения меньше 1 Мб отображаются как 0 .

Physics Profiler
Профилировщик физики#

This profiler shows statistics within the Physics radius. Этот профилировщик показывает статистику в пределах Радиуса физики.

Примечание
You can enable this profiler via the UnigineEditor interface (Tools -> Performance Profiler -> Physics) and via the show_profiler_physics 1 console command.Вы можете включить этот профилировщик через интерфейс UnigineEditor (Tools -> Performance Profiler -> Physics) и с помощью консольной команды show_profiler_physics 1.

Physics Profiler Enabled Профилировщик физики включен

The following statistics are displayed in addition to the generic one:Следующая статистика отображается в дополнение к общей статистике:

PIslands Number of physical islands within the physics radius that could be calculated separately. The lower this number, the less efficient multi-threading is. Число физических островов в пределах радиуса физики, которое можно рассчитать отдельно. Чем меньше это число, тем менее эффективна многопоточность .
PBodies Number of bodies within the physics radius. Количество тел в пределах радиуса физики.
PJoints Number of joints within the physics radius. Количество сочленений в пределах радиуса физики.
PContacts Total number of contacts within the physics radius; this includes contacts between the bodies (their shapes) and body-mesh contacts. Общее количество контактов в пределах радиуса физики; это включает контакты между телами (их формы) и контакты тела и геометрии.
PCollision Duration of the collision detection phase of physic simulation when collisions between objects are found. Продолжительность фазы обнаружения столкновений физического моделирования при обнаружении столкновений между объектами.
PSimulation Duration of all simulation phases added together. Продолжительность всех этапов моделирования, суммированных вместе.

Watch an overview of the Physics Profiler options in our video tutorial on physics. Посмотрите обзор параметров Physics Profiler в нашем видеоуроке по физике .

World Management Profiler
Профилировщик управления миром#

This profiler shows statistics on the whole world. Этот профилировщик показывает статистику для мира в целом.

Примечание
When in the editor mode, enabling and disabling of the node, body or a joint can increase values of world profiler counters, as a (limited) number of clones are created for undo/redo purposes. В режиме редактора включение и выключение ноды, тела или сочленения может увеличить значения счетчиков профилировщика мира, поскольку для целей отмены/повтора создается (ограниченное) количество клонов.

World Management Profiler Enabled World Management Profiler включен
Примечание
You can enable this profiler via the UnigineEditor interface (Tools -> Performance Profiler -> World Management) and via the show_profiler_world 1 console command.Вы можете включить этот профилировщик через интерфейс UnigineEditor (Tools -> Performance Profiler -> World Management) и с помощью консольной команды show_profiler_world 1.

The following statistics is displayed in addition to the generic one:Следующая статистика отображается в дополнение к общей статистике:

WNodes Total number of nodes in the world (both enabled and disabled).Общее количество нод в мире (как включенных, так и выключенных).
WBodies Total number of bodies in the world.Общее количество тел в мире.
WShapes Total number of shapes in the world.Общее количество форм в мире.
WJoints Total number of joints in the world.Общее количество соединений в мире.
WSpawn Time in milliseconds that the engine spends on generating content in procedural nodes (such as grass, clutters, world layers). Время в миллисекундах, затрачиваемое движком на создание контента в процедурных нодах (например, трава, клаттеры, слои мира).

Thread Profiler
Профилировщик потоков#

Thread Profiler Enabled Профилировщик потоков включен
Примечание
You can enable this profiler via the UnigineEditor interface (Tools -> Performance Profiler -> Thread) and via the show_profiler_thread 1 console command.Вы можете включить этот профилировщик через интерфейс UnigineEditor (Tools -> Performance Profiler -> Thread) и с помощью консольной команды show_profiler_thread 1.

The following statistics are displayed in addition to the generic one:В дополнение к общей статистике , отображаемой, отображается следующая статистика:

AsyncQueue Time of asynchronous loading of resources (files/meshes/images/nodes), in milliseconds. Время асинхронной загрузки ресурсов (файлов / мешей / изображений / нод), в миллисекундах.
Sound Time of asynchronous loading of sounds, in milliseconds.Время асинхронной загрузки звуков, в миллисекундах.
PathFind Time of asynchronous pathfinding calculations, in milliseconds. Время асинхронных вычислений поиска пути в миллисекундах.
CPUShaders Threads Number of internal engine threads used for CPU shaders.Количество внутренних потоков движка, используемых для шейдеров центрального процессора.
Последнее обновление: 13.12.2024
Build: ()