Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Aşağıdaki bölümlerde, kitaplığın normal çalışması için gerekli olmayan gelişmiş kullanım konuları özetlenmektedir.
Desteklenen diğer izleyiciler
Tuning Fork, birden fazla izleyiciyi destekler. Aşağıdaki enstrüman anahtarlarına sahip izleyiciler desteklenir:
Kare başlangıçları arasındaki süre (PACED_FRAME_TIME olarak adlandırılır)
CPU Süresi: Karenin başlangıcı ile karenin CPU işinin sonu arasındaki süre (CPU_TIME olarak adlandırılır)
GPU Süresi: Önceki karenin GPU tarafından işlenme süresi (GPU_TIME olarak adlandırılır)
CPU ve GPU süresinin maksimum değeri olarak tanımlanan ham kare süresi (RAW_FRAME_TIME olarak adlandırılır). Bu seçenek ile PACED_FRAME_TIME arasındaki fark, bu seçeneğin Swappy veya VSync tarafından eklenen bekleme süresini içermemesidir.
Bu enstrüman anahtarlarını referans belgelerinde bulabilirsiniz.
Bu anahtarlardan bazıları Android Frame Pacing kitaplığını etkinleştirdiğinizde otomatik olarak kullanılır. Ancak bu kitaplığı etkinleştirmiyorsanız bunları açıkça kullanmanız gerekir.
Ayarlarda fidelity_params_callback değerini TuningFork_init değerine aktarırsanız veya kitaplık ölçeklendirilmiş moddaysa bu işlevi çağırmanız gerekmez.
Bu işlev, doğruluk parametrelerini almak için bir sunucuyla iletişime geçer. Aşağıdaki durumlardan biri gerçekleşene kadar engeller:
Doğruluk parametreleri TFERROR_OK dönüş değeriyle alınır ve returnedParams parametreleri depolar. Bu durumda, sonraki tüm tick verileri returnedParams ile ilişkilendirilir.
timeout_ms milisaniyeye eşit bir süre geçer ve TFERROR_TIMEOUT dönüş değeri elde edilir. Bu durumda, sonraki tüm tick verileri defaultFidelityParams ile ilişkilendirilir.
Bu işlevden önce TuningFork_init() işlevini çağırmanız ve ana iş parçacığından ayrı bir iş parçacığında çağırmanız gerekir (Bunu sizin için yapan bir yardımcı işlev için TuningFork_startFidelityParamDownloadThread() işlevine bakın). Bu işlevi, örneğin seviye yükleme sırasında tekrar çağırarak doğruluk parametrelerini sunucudan tekrar alabilirsiniz. Bu sayede, parametreleri yalnızca başlangıçta yeniden yüklemek yerine dinamik olarak güncelleyebilirsiniz. Yeni doğruluk parametreleri indirilirse veya yeni bir varsayılan kullanılırsa önceki tüm tick verileri gönderilir.
Bu sayfadaki içerik ve kod örnekleri, İçerik Lisansı sayfasında açıklanan lisanslara tabidir. Java ve OpenJDK, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-08-26 UTC.
[[["Anlaması kolay","easyToUnderstand","thumb-up"],["Sorunumu çözdü","solvedMyProblem","thumb-up"],["Diğer","otherUp","thumb-up"]],[["İhtiyacım olan bilgiler yok","missingTheInformationINeed","thumb-down"],["Çok karmaşık / çok fazla adım var","tooComplicatedTooManySteps","thumb-down"],["Güncel değil","outOfDate","thumb-down"],["Çeviri sorunu","translationIssue","thumb-down"],["Örnek veya kod sorunu","samplesCodeIssue","thumb-down"],["Diğer","otherDown","thumb-down"]],["Son güncelleme tarihi: 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."]]