Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

Tracy

Дивись також

Будь ласка, дивіться tracing profiler instructions для отримання додаткової інформації.

Tracy — це профайлер з відкритим кодом, який працює на широкому спектрі платформ, включаючи Windows, Linux та macOS. Хоча це, перш за все, профайлер трасування, він також може періодично вибірково проводити вибірку даних, як sampling profiler, що надає деякі переваги обох підходів.

Створіть Godot за підтримки Tracy

Спочатку клонуйте останню версію вихідного коду Tracy ("0.13.0" на момент написання) за допомогою Git:

git clone -b v0.13.0 --single-branch https://github.com/wolfpld/tracy.git

Це створить каталог tracy — ви можете розмістити його будь-де.

Далі, створіть шаблони релізів для вашої платформи, використовуючи scons, але додавши аргументи profiler=tracy profiler_path=шлях/до/tracy з реальним шляхом до каталогу tracy, а також debug_symbols=yes, щоб дозволити роботі функцій семплінгу Tracy.

Примітка

Вам не потрібно створювати шаблони релізів, ви також можете створити шаблони налагодження або навіть редактор. Однак, загалом рекомендується профілювати шаблони релізів, оскільки це версія, яку використовуватимуть ваші гравці, і вона працюватиме інакше, ніж інші типи збірок.

Наприклад, щоб створити шаблони випусків для Windows:

scons platform=windows target=template_release debug_symbols=yes profiler=tracy profiler_path=path/to/tracy

Отримайте Tracy "server"

У термінології Tracy, програма, яку ви профілюєте, називається «клієнтом», а та, що отримує дані, — «сервером».

Якщо ви користуєтеся Windows, ви можете завантажити попередньо зібраний файл tracy-profiler.exe зі сторінки релізів Tracy <https://github.com/wolfpld/tracy/releases>`_.

Однак, якщо ви користуєтеся Linux або macOS, вам потрібно буде або знайти попередньо зібраний бінарний файл з менеджера пакетів (наприклад, brew або nix), або зібрати його самостійно з вихідного коду.

Примітка

Якщо ви використовуєте попередньо зібраний бінарний файл, обов'язково використовуйте ту саму версію, яку ви використовували під час збирання Godot.

Зберіть сервер Tracy з вихідного коду

Щоб зібрати Tracy, вам потрібно буде встановити cmake, який можна завантажити з веб-сайту CMake, або, можливо, встановити за допомогою менеджера пакетів (наприклад, brew або nix).

Повні інструкції щодо збірки Tracy з вихідного коду можна знайти в Tracy manual, але ось TL;DR:

# On Linux, Tracy uses Wayland by default, so if you use X11 add -DLEGACY=1
cmake -B profiler/build -S profiler -DCMAKE_BUILD_TYPE=Release
cmake --build profiler/build --config Release --parallel

Це розмістить бінарний файл за адресою tracy/profiler/build/tracy-profiler або tracy/profiler/build/tracy-profiler.exe (у Windows).

Записати трасування

Запустіть сервер Tracy — ви побачите щось подібне:

../../../_images/cpp_profiler_tracy_start.webp

Натисніть «підключитися». Це гарантує, що Tracy одразу ж встановить підключення після запуску гри. Якщо ви забудете натиснути «підключитися», Tracy зберігатиме системні події в оперативній пам’яті, що може швидко збільшити використання пам’яті (див. документацію TRACY_ON_DEMAND).

Тепер експортуйте свою гру, використовуючи шаблони релізів, які ви створили вище, та запустіть її. Щойно обидві програми запустяться, і ви натиснете кнопку «Підключитися» в Tracy, ви побачите надходження даних:

../../../_images/cpp_profiler_tracy_recording.webp

Коли ви вважаєте, що зібрали достатньо даних, натисніть кнопку «Стоп». Якщо ви десь клацнули, і поле з кнопкою «Стоп» зникло, ви можете натиснути на значок у верхньому лівому куті, щоб повернути його.

Дослідження сліду

Ось деякі основні елементи керування:

  • Збільшення/зменшення масштабу за допомогою коліщатка миші

  • Клацніть правою кнопкою миші та перетягніть, щоб переміщатися вперед/назад по часовій шкалі

  • У верхній панелі натисніть кнопки зі стрілками ліворуч та праворуч біля пункту «Кадри», щоб перемістити один кадр на часовій шкалі

Щоб дізнатися більше, див. посібник Tracy <https://github.com/wolfpld/tracy/releases/latest/download/tracy.pdf>.