version 2.2.0

This commit is contained in:
srl87
2024-01-10 14:20:05 +08:00
parent 11b730e79b
commit 45b4e46f74
211 changed files with 107849 additions and 1160 deletions

View File

@@ -11,6 +11,8 @@ using UnityEditor.XR.OpenXR.Features;
using UnityEngine;
using UnityEngine.XR.OpenXR;
using UnityEngine.XR.OpenXR.Features;
using UnityEngine.XR.OpenXR.Features.Interactions;
using VIVE.OpenXR.FacialTracking;
using VIVE.OpenXR.Hand;
using VIVE.OpenXR.Tracker;
@@ -249,54 +251,75 @@ namespace VIVE.OpenXR.Editor
internal void AddOpenXRFeatures()
{
bool enableViveWristTracker = false;
bool enableViveHandTracking = false;
bool enableHandtracking = false;
bool enableTracker = false;
bool enableEyetracking = false;
bool enableLipexpression = false;
var settings = OpenXRSettings.GetSettingsForBuildTargetGroup(BuildTargetGroup.Android);
if (null == settings)
return;
foreach (var feature in settings.GetFeatures<OpenXRInteractionFeature>())
{
if (feature is ViveWristTracker)
if ((feature is ViveWristTracker || feature is ViveXRTracker) && feature.enabled)
{
enableViveWristTracker = feature.enabled;
break;
enableHandtracking = true;
enableTracker = true;
}
if (feature is EyeGazeInteraction && feature.enabled)
{
enableEyetracking = true;
}
if (feature is ViveHandInteraction && feature.enabled)
{
enableHandtracking = true;
}
}
foreach (var feature in settings.GetFeatures<OpenXRFeature>())
{
if (feature is ViveHandTracking)
if (feature is ViveHandTracking && feature.enabled)
{
enableViveHandTracking = feature.enabled;
break; ;
enableHandtracking = true;
}
if (feature is ViveFacialTracking && feature.enabled)
{
enableEyetracking = true;
enableLipexpression = true;
}
}
//Debug.Log("enableViveWristTracker " + enableViveWristTracker);
if (enableViveWristTracker)
if (enableHandtracking)
{
{
var newUsesFeature = CreateElement("uses-feature");
newUsesFeature.Attributes.Append(CreateAndroidAttribute("name", "wave.feature.handtracking"));
newUsesFeature.Attributes.Append(CreateAndroidAttribute("required", "true"));
ManifestElement.AppendChild(newUsesFeature);
}
{
var newUsesFeature = CreateElement("uses-feature");
newUsesFeature.Attributes.Append(CreateAndroidAttribute("name", "wave.feature.tracker"));
newUsesFeature.Attributes.Append(CreateAndroidAttribute("required", "true"));
ManifestElement.AppendChild(newUsesFeature);
}
var newUsesFeature = CreateElement("uses-feature");
newUsesFeature.Attributes.Append(CreateAndroidAttribute("name", "wave.feature.handtracking"));
newUsesFeature.Attributes.Append(CreateAndroidAttribute("required", "true"));
ManifestElement.AppendChild(newUsesFeature);
}
else if (enableViveHandTracking)
if (enableTracker)
{
{
var newUsesFeature = CreateElement("uses-feature");
newUsesFeature.Attributes.Append(CreateAndroidAttribute("name", "wave.feature.handtracking"));
newUsesFeature.Attributes.Append(CreateAndroidAttribute("required", "true"));
ManifestElement.AppendChild(newUsesFeature);
}
var newUsesFeature = CreateElement("uses-feature");
newUsesFeature.Attributes.Append(CreateAndroidAttribute("name", "wave.feature.tracker"));
newUsesFeature.Attributes.Append(CreateAndroidAttribute("required", "true"));
ManifestElement.AppendChild(newUsesFeature);
}
if (enableEyetracking)
{
var newUsesFeature = CreateElement("uses-feature");
newUsesFeature.Attributes.Append(CreateAndroidAttribute("name", "wave.feature.eyetracking"));
newUsesFeature.Attributes.Append(CreateAndroidAttribute("required", "true"));
ManifestElement.AppendChild(newUsesFeature);
}
if (enableLipexpression)
{
var newUsesFeature = CreateElement("uses-feature");
newUsesFeature.Attributes.Append(CreateAndroidAttribute("name", "wave.feature.lipexpression"));
newUsesFeature.Attributes.Append(CreateAndroidAttribute("required", "true"));
ManifestElement.AppendChild(newUsesFeature);
}
if (CheckIfSimultaneousInteractionEnabled.IsEnabled)

View File

@@ -101,7 +101,7 @@ namespace VIVE.OpenXR.Editor
return true;
}
static void OnUpdate()
static void CheckScriptingDefineSymbols()
{
// Adds the script symbol if Vive OpenXR Plugin - Android is imported and assigned in XR Plugin-in Management.
if (ViveOpenXRAndroidAssigned)
@@ -122,6 +122,10 @@ namespace VIVE.OpenXR.Editor
}
}
}
static void OnUpdate()
{
//CheckScriptingDefineSymbols();
}
static CheckIfVIVEEnabled()
{
EditorApplication.update += OnUpdate;