A game about forced loneliness, made by TACStudios
at master 55 lines 2.0 kB view raw
1using System; 2using UnityEditor.SceneManagement; 3using UnityEngine; 4using UnityEngine.Analytics; 5using UnityEngine.Rendering; 6 7namespace UnityEditor.Rendering.Analytics 8{ 9 // schema = com.unity3d.data.schemas.editor.analytics.uVolumeProfileUsageAnalytic_v4 10 // taxonomy = editor.analytics.uVolumeProfileUsageAnalytic.v4 11 internal class VolumeProfileUsageAnalytic 12 { 13 [AnalyticInfo(eventName: "uVolumeProfileUsageAnalytic", version: 4, vendorKey: "unity.srp" )] 14 class Analytic : IAnalytic 15 { 16 public Analytic(Volume volume, VolumeProfile volumeProfile) 17 { 18 using (GenericPool<Data>.Get(out var data)) 19 { 20 data.volume_name = Hash128.Compute(volume.name).ToString(); 21 data.scene_name = EditorSceneManager.GetActiveScene().GetGUID(); 22 data.volume_profile_asset_guid = AssetDatabase.AssetPathToGUID(AssetDatabase.GetAssetPath(volumeProfile.GetInstanceID())); 23 m_Data = data; 24 } 25 } 26 27 [System.Diagnostics.DebuggerDisplay("{volume_name} - {scene_name}- {volume_profile_asset_guid}")] 28 [Serializable] 29 class Data : IAnalytic.IData 30 { 31 // Naming convention for analytics data 32 public string volume_name; 33 public string scene_name; 34 public string volume_profile_asset_guid; 35 } 36 public bool TryGatherData(out IAnalytic.IData data, out Exception error) 37 { 38 data = m_Data; 39 error = null; 40 return true; 41 } 42 Data m_Data; 43 }; 44 45 public static void Send(Volume volume, VolumeProfile volumeProfile) 46 { 47 if (volume == null || volumeProfile == null) 48 return; 49 50 Analytic analytic = new Analytic(volume, volumeProfile); 51 52 AnalyticsUtils.SendData(analytic); 53 } 54 } 55}