SW 중심대학 OSS GIT 서버 박건태, 이승준, 고기완, 이준호 새로운 배포
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

95 lines
4.8 KiB

4 years ago
  1. using System;
  2. using System.Runtime.InteropServices;
  3. using UnityEngine.XR.ARSubsystems;
  4. namespace UnityEngine.XR.ARKit
  5. {
  6. internal static class EnvironmentProbeApi
  7. {
  8. #if UNITY_IOS && !UNITY_EDITOR
  9. [DllImport("__Internal")]
  10. internal static extern void UnityARKit_EnvironmentProbeProvider_Construct();
  11. [DllImport("__Internal")]
  12. internal static extern void UnityARKit_EnvironmentProbeProvider_Destruct();
  13. [DllImport("__Internal")]
  14. internal static extern void UnityARKit_EnvironmentProbeProvider_Start();
  15. [DllImport("__Internal")]
  16. internal static extern void UnityARKit_EnvironmentProbeProvider_Stop();
  17. [DllImport("__Internal")]
  18. internal static extern void UnityARKit_EnvironmentProbeProvider_SetAutomaticPlacementEnabled(bool enabled);
  19. [DllImport("__Internal")]
  20. internal static extern bool UnityARKit_EnvironmentProbeProvider_TrySetEnvironmentTextureHDREnabled(bool enabled);
  21. [DllImport("__Internal")]
  22. internal static extern bool UnityARKit_EnvironmentProbeProvider_TryAddEnvironmentProbe(Pose pose,
  23. Vector3 scale,
  24. Vector3 size,
  25. out XREnvironmentProbe environmentProbe);
  26. [DllImport("__Internal")]
  27. internal static extern bool UnityARKit_EnvironmentProbeProvider_TryRemoveEnvironmentProbe(TrackableId id);
  28. [DllImport("__Internal")]
  29. internal static extern IntPtr UnityARKit_EnvironmentProbeProvider_AcquireChanges(out int numAddedEnvironmentProbes, out IntPtr addedEnvironmentProbes,
  30. out int numUpdatedEnvironmentProbes, out IntPtr updatedEnvironmentProbes,
  31. out int numRemovedEnvironmentProbeIds, out IntPtr removedEnvironmentProbeIds,
  32. out int stride);
  33. [DllImport("__Internal")]
  34. internal static extern void UnityARKit_EnvironmentProbeProvider_ReleaseChanges(IntPtr context);
  35. [DllImport("__Internal")]
  36. internal static extern bool UnityARKit_EnvironmentProbeProvider_IsSupported();
  37. #else
  38. internal static void UnityARKit_EnvironmentProbeProvider_Construct() {}
  39. internal static void UnityARKit_EnvironmentProbeProvider_Destruct() {}
  40. internal static void UnityARKit_EnvironmentProbeProvider_Start() {}
  41. internal static void UnityARKit_EnvironmentProbeProvider_Stop() {}
  42. internal static void UnityARKit_EnvironmentProbeProvider_SetAutomaticPlacementEnabled(bool enabled) {}
  43. internal static bool UnityARKit_EnvironmentProbeProvider_TrySetEnvironmentTextureHDREnabled(bool enabled) { return false; }
  44. internal static bool UnityARKit_EnvironmentProbeProvider_TryAddEnvironmentProbe(Pose pose,
  45. Vector3 scale,
  46. Vector3 size,
  47. out XREnvironmentProbe environmentProbe)
  48. {
  49. environmentProbe = XREnvironmentProbe.defaultValue;
  50. return false;
  51. }
  52. internal static bool UnityARKit_EnvironmentProbeProvider_TryRemoveEnvironmentProbe(TrackableId id) { return false; }
  53. internal static IntPtr UnityARKit_EnvironmentProbeProvider_AcquireChanges(out int numAddedEnvironmentProbes, out IntPtr addedEnvironmentProbes,
  54. out int numUpdatedEnvironmentProbes, out IntPtr updatedEnvironmentProbes,
  55. out int numRemovedEnvironmentProbeIds, out IntPtr removedEnvironmentProbeIds,
  56. out int stride)
  57. {
  58. numAddedEnvironmentProbes = 0;
  59. addedEnvironmentProbes = IntPtr.Zero;
  60. numUpdatedEnvironmentProbes = 0;
  61. updatedEnvironmentProbes = IntPtr.Zero;
  62. numRemovedEnvironmentProbeIds = 0;
  63. removedEnvironmentProbeIds = IntPtr.Zero;
  64. stride = 0;
  65. return IntPtr.Zero;
  66. }
  67. internal static void UnityARKit_EnvironmentProbeProvider_ReleaseChanges(IntPtr context) {}
  68. internal static bool UnityARKit_EnvironmentProbeProvider_IsSupported() { return false; }
  69. #endif
  70. }
  71. }