Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
В следующих разделах описываются темы расширенного использования, не требующиеся для нормальной работы библиотеки.
Другие поддерживаемые трассировщики
Tuning Fork поддерживает несколько трейсеров. Поддерживаются трейсеры со следующими тональностями:
Время между запусками кадров (называется PACED_FRAME_TIME )
Время ЦП: время между началом кадра и окончанием работы ЦП над кадром (называется CPU_TIME ).
Время GPU: время, необходимое графическому процессору для обработки предыдущего кадра (называется GPU_TIME ).
Необработанное время кадра, определяемое как максимальное время центрального и графического процессоров ( RAW_FRAME_TIME ). Разница между этим параметром и PACED_FRAME_TIME заключается в том, что этот параметр не учитывает время ожидания, учитываемое Swappy или VSync.
Эти клавиши инструментов можно найти в справочной документации . Некоторые из них используются автоматически при включении библиотеки Android Frame Pacing, но если вы не включаете эту библиотеку, их следует использовать явно.
Если вы передаете fidelity_params_callback в TuningFork_init в настройках или библиотека находится в масштабируемом режиме, вам не нужно вызывать эту функцию.
Эта функция обращается к серверу для получения параметров точности. Она блокируется до тех пор, пока не произойдет одно из следующих событий:
Параметры точности извлекаются, возвращая значение TFERROR_OK , а returnedParams параметры сохраняются в returnParams. В этом случае все последующие данные тика связываются с returnedParams .
Проходит количество миллисекунд, равное timeout_ms , с возвращаемым значением TFERROR_TIMEOUT . В этом случае все последующие данные тика связываются с defaultFidelityParams .
Перед этой функцией необходимо вызвать TuningFork_init() , причем вызвать ее необходимо в отдельном потоке, отличном от основного (см. TuningFork_startFidelityParamDownloadThread() , где описана вспомогательная функция, выполняющая эту функцию). Вы можете вызвать эту функцию повторно, например, во время загрузки уровня, чтобы снова получить параметры точности с сервера. Это позволяет динамически обновлять параметры, а не загружать их только при запуске. При загрузке новых параметров точности или использовании нового значения по умолчанию все предыдущие данные тиков передаются.
Контент и образцы кода на этой странице предоставлены по лицензиям. Java и OpenJDK – это зарегистрированные товарные знаки корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2025-08-26 UTC.
[[["Прост для понимания","easyToUnderstand","thumb-up"],["Помог мне решить мою проблему","solvedMyProblem","thumb-up"],["Другое","otherUp","thumb-up"]],[["Отсутствует нужная мне информация","missingTheInformationINeed","thumb-down"],["Слишком сложен/слишком много шагов","tooComplicatedTooManySteps","thumb-down"],["Устарел","outOfDate","thumb-down"],["Проблема с переводом текста","translationIssue","thumb-down"],["Проблемы образцов/кода","samplesCodeIssue","thumb-down"],["Другое","otherDown","thumb-down"]],["Последнее обновление: 2025-08-26 UTC."],[],[],null,["The following sections outline advanced usage topics not needed for normal\noperation of the library.\n\nOther supported tracers\n\nTuning Fork supports multiple tracers. Tracers with the following instrument\nkeys are supported:\n\n- Time between frame starts (called `PACED_FRAME_TIME`)\n- CPU Time: Time between the start of the frame and the end of the CPU work for the frame (called `CPU_TIME`)\n- GPU Time: Time for the previous frame to be handled by the GPU (called `GPU_TIME`)\n- The raw frame time, defined as the maximum of the CPU and GPU time (called `RAW_FRAME_TIME`). The difference between this option and `PACED_FRAME_TIME` is that this option does not include any wait time included by Swappy or VSync.\n\nYou can find these instrument keys in the\n[reference documentation](/games/sdk/reference/performance-tuner/custom-engine).\nSome of these keys are used automatically when you enable the Android Frame\nPacing library, but if you are not enabling this library, you should use them\nexplicitly.\n\nGet fidelity parameters\n\n[`TFErrorCode TuningFork_getFidelityParameters(const CProtobufSerialization*\ndefaultParams, CProtobufSerialization* params, uint32_t\ntimeout_ms);`](/games/sdk/reference/performance-tuner/custom-engine/group/tuningfork#tuningfork_getfidelityparameters)\n\nIf you pass `fidelity_params_callback` to `TuningFork_init` in settings or the\nlibrary is in scaled mode, you do not need to call this function.\n\nThis function contacts a server to retrieve fidelity parameters. It blocks until\none of the following occurs:\n\n- Fidelity parameters are retrieved, with a return value of `TFERROR_OK` and `returnedParams` store the parameters. In this case, all subsequent tick data is associated with `returnedParams`.\n- A number of milliseconds equal to `timeout_ms` passes, with a return value of `TFERROR_TIMEOUT`. In this case, all subsequent tick data is associated with `defaultFidelityParams`.\n\nYou must call `TuningFork_init()` before this function, and you must call it on\na separate thread from the main thread (see\n[`TuningFork_startFidelityParamDownloadThread()`](/games/sdk/reference/performance-tuner/custom-engine/group/tuningfork-extra#tuningfork_startfidelityparamdownloadthread)\nfor a utility function that does this for you). You can call this function\nagain, for example at level-loading time, to retrieve fidelity parameters from\nthe server again. This allows you to dynamically update parameters rather than\nhaving to reload them only at start-up. If new fidelity parameters are\ndownloaded or a new default is used, all previous tick data is submitted."]]