namespace AddressableAssets.DocExampleCode { //Prevent Unity from actually registering the rule in this example using RuntimeInitializeOnLoadMethod = Dummy; #if UNITY_EDITOR #region doc_Transformer using UnityEngine.ResourceManagement.ResourceLocations; using UnityEngine.ResourceManagement.ResourceProviders; using UnityEngine.AddressableAssets; static class IDTransformer { //Implement a method to transform the internal ids of locations static string MyCustomTransform(IResourceLocation location) { if (location.ResourceType == typeof(IAssetBundleResource) && location.InternalId.StartsWith("http", System.StringComparison.Ordinal)) return location.InternalId + "?customQueryTag=customQueryValue"; return location.InternalId; } //Override the Addressables transform method with your custom method. //This can be set to null to revert to default behavior. [RuntimeInitializeOnLoadMethod] static void SetInternalIdTransform() { Addressables.InternalIdTransformFunc = MyCustomTransform; } } #endregion #endif }