123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using UnityEngine;
- namespace UnityEditor.XR.Management.Metadata
- {
- internal class KnownPackages
- {
- internal static string k_KnownPackageMockHMDLoader = "Unity.XR.MockHMD.MockHMDLoader";
- class KnownLoaderMetadata : IXRLoaderMetadata
- {
- public string loaderName { get; set; }
- public string loaderType { get; set; }
- public List<BuildTargetGroup> supportedBuildTargets { get; set; }
- }
- class KnownPackageMetadata : IXRPackageMetadata
- {
- public string packageName { get; set; }
- public string packageId { get; set; }
- public string settingsType { get; set; }
- public List<IXRLoaderMetadata> loaderMetadata { get; set; }
- }
- class KnownPackage : IXRPackage
- {
- public IXRPackageMetadata metadata { get; set; }
- public bool PopulateNewSettingsInstance(ScriptableObject obj) { return true; }
- }
- private static Lazy<List<IXRPackage>> s_KnownPackages = new Lazy<List<IXRPackage>>(InitKnownPackages);
- internal static List<IXRPackage> Packages => s_KnownPackages.Value;
- static List<IXRPackage> InitKnownPackages()
- {
- List<IXRPackage> packages = new List<IXRPackage>();
- packages.Add(new KnownPackage() {
- metadata = new KnownPackageMetadata(){
- packageName = "Windows XR Plugin",
- packageId = "com.unity.xr.windowsmr",
- settingsType = "UnityEditor.XR.WindowsMR.WindowsMRPackageSettings",
- loaderMetadata = new List<IXRLoaderMetadata>() {
- new KnownLoaderMetadata() {
- loaderName = "Windows Mixed Reality",
- loaderType = "UnityEngine.XR.WindowsMR.WindowsMRLoader",
- supportedBuildTargets = new List<BuildTargetGroup>() {
- BuildTargetGroup.Standalone,
- BuildTargetGroup.WSA
- }
- },
- }
- }
- });
- packages.Add(new KnownPackage() {
- metadata = new KnownPackageMetadata(){
- packageName = "Oculus XR Plugin",
- packageId = "com.unity.xr.oculus",
- settingsType = "Unity.XR.Oculus.OculusSettings",
- loaderMetadata = new List<IXRLoaderMetadata>() {
- new KnownLoaderMetadata() {
- loaderName = "Oculus",
- loaderType = "Unity.XR.Oculus.OculusLoader",
- supportedBuildTargets = new List<BuildTargetGroup>() {
- BuildTargetGroup.Standalone,
- BuildTargetGroup.Android,
- }
- },
- }
- }
- });
- packages.Add(new KnownPackage() {
- metadata = new KnownPackageMetadata(){
- packageName = "Magic Leap XR Plugin",
- packageId = "com.unity.xr.magicleap",
- settingsType = "UnityEngine.XR.MagicLeap.MagicLeapSettings",
- loaderMetadata = new List<IXRLoaderMetadata>() {
- new KnownLoaderMetadata() {
- loaderName = "Magic Leap Zero Iteration",
- loaderType = "UnityEngine.XR.MagicLeap.MagicLeapLoader",
- supportedBuildTargets = new List<BuildTargetGroup>() {
- BuildTargetGroup.Standalone,
- }
- },
- new KnownLoaderMetadata() {
- loaderName = "Magic Leap",
- loaderType = "UnityEngine.XR.MagicLeap.MagicLeapLoader",
- supportedBuildTargets = new List<BuildTargetGroup>() {
- BuildTargetGroup.Lumin
- }
- },
- }
- }
- });
- packages.Add(new KnownPackage() {
- metadata = new KnownPackageMetadata(){
- packageName = "ARCore XR Plugin",
- packageId = "com.unity.xr.arcore",
- settingsType = "UnityEditor.XR.ARCore.ARCoreSettings",
- loaderMetadata = new List<IXRLoaderMetadata>() {
- new KnownLoaderMetadata() {
- loaderName = "ARCore",
- loaderType = "UnityEngine.XR.ARCore.ARCoreLoader",
- supportedBuildTargets = new List<BuildTargetGroup>() {
- BuildTargetGroup.Android,
- }
- },
- }
- }
- });
- packages.Add(new KnownPackage() {
- metadata = new KnownPackageMetadata(){
- packageName = "ARKit XR Plugin",
- packageId = "com.unity.xr.arkit",
- settingsType = "UnityEditor.XR.ARKit.ARKitSettings",
- loaderMetadata = new List<IXRLoaderMetadata>() {
- new KnownLoaderMetadata() {
- loaderName = "ARKit",
- loaderType = "UnityEngine.XR.ARKit.ARKitLoader",
- supportedBuildTargets = new List<BuildTargetGroup>() {
- BuildTargetGroup.iOS,
- }
- },
- }
- }
- });
- packages.Add(new KnownPackage() {
- metadata = new KnownPackageMetadata() {
- packageName = "MockHMD XR Plugin",
- packageId = "com.unity.xr.mock-hmd",
- settingsType = "Unity.XR.MockHMD.MockHMDBuildSettings",
- loaderMetadata = new List<IXRLoaderMetadata>() {
- new KnownLoaderMetadata() {
- loaderName = "Unity Mock HMD",
- loaderType = k_KnownPackageMockHMDLoader,
- supportedBuildTargets = new List<BuildTargetGroup>() {
- BuildTargetGroup.Standalone,
- BuildTargetGroup.Android
- }
- },
- }
- }
- });
- return packages;
- }
- }
- }
|