1111
This commit is contained in:
@@ -1,52 +1,52 @@
|
||||
using Stary.Evo.Editor;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Stary.Evo.RKTools
|
||||
{
|
||||
[CustomEditor(typeof(ARTrackedImageEvoObj))]
|
||||
public class ARTrackedImageEvoObjEditor : UnityEditor.Editor
|
||||
{
|
||||
/// <summary>
|
||||
/// 序列化属性,在OnEnable中获取
|
||||
/// </summary>
|
||||
private SerializedProperty domain;
|
||||
|
||||
private SerializedProperty trackedTransform;
|
||||
|
||||
/// <summary>
|
||||
private string[] domainNames;
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
domain = serializedObject.FindProperty("domain");
|
||||
trackedTransform = serializedObject.FindProperty("trackedTransform");
|
||||
domainNames = CreatAssetWindow.GetCreatDomainAllName();
|
||||
}
|
||||
|
||||
public override void OnInspectorGUI()
|
||||
{
|
||||
serializedObject.Update();
|
||||
|
||||
// 获取当前选中的索引
|
||||
int selectedIndex = System.Array.IndexOf(domainNames, domain.stringValue);
|
||||
if (selectedIndex < 0) selectedIndex = 0; // 默认选中第一个
|
||||
|
||||
// 绘制下拉选择框
|
||||
selectedIndex = EditorGUILayout.Popup("Domain", selectedIndex, domainNames);
|
||||
|
||||
// 更新选择的域名
|
||||
domain.stringValue = domainNames[selectedIndex];
|
||||
|
||||
EditorGUI.BeginChangeCheck();
|
||||
var newTrackedTransform
|
||||
= EditorGUILayout.ObjectField(new GUIContent("Tracked Transform"), trackedTransform.objectReferenceValue, typeof(Transform), true) as Transform;
|
||||
if (EditorGUI.EndChangeCheck())
|
||||
{
|
||||
trackedTransform.objectReferenceValue = newTrackedTransform;
|
||||
}
|
||||
serializedObject.ApplyModifiedProperties();
|
||||
base.OnInspectorGUI();
|
||||
}
|
||||
}
|
||||
}
|
||||
// using Stary.Evo.Editor;
|
||||
// using UnityEditor;
|
||||
// using UnityEngine;
|
||||
//
|
||||
// namespace Stary.Evo.RKTools
|
||||
// {
|
||||
// [CustomEditor(typeof(ARTrackedImageEvoObj))]
|
||||
// public class ARTrackedImageEvoObjEditor : UnityEditor.Editor
|
||||
// {
|
||||
// /// <summary>
|
||||
// /// 序列化属性,在OnEnable中获取
|
||||
// /// </summary>
|
||||
// private SerializedProperty domain;
|
||||
//
|
||||
// private SerializedProperty trackedTransform;
|
||||
//
|
||||
// /// <summary>
|
||||
// private string[] domainNames;
|
||||
//
|
||||
// private void OnEnable()
|
||||
// {
|
||||
// domain = serializedObject.FindProperty("domain");
|
||||
// trackedTransform = serializedObject.FindProperty("trackedTransform");
|
||||
// domainNames = CreatAssetWindow.GetCreatDomainAllName();
|
||||
// }
|
||||
//
|
||||
// public override void OnInspectorGUI()
|
||||
// {
|
||||
// serializedObject.Update();
|
||||
//
|
||||
// // 获取当前选中的索引
|
||||
// int selectedIndex = System.Array.IndexOf(domainNames, domain.stringValue);
|
||||
// if (selectedIndex < 0) selectedIndex = 0; // 默认选中第一个
|
||||
//
|
||||
// // 绘制下拉选择框
|
||||
// selectedIndex = EditorGUILayout.Popup("Domain", selectedIndex, domainNames);
|
||||
//
|
||||
// // 更新选择的域名
|
||||
// domain.stringValue = domainNames[selectedIndex];
|
||||
//
|
||||
// EditorGUI.BeginChangeCheck();
|
||||
// var newTrackedTransform
|
||||
// = EditorGUILayout.ObjectField(new GUIContent("Tracked Transform"), trackedTransform.objectReferenceValue, typeof(Transform), true) as Transform;
|
||||
// if (EditorGUI.EndChangeCheck())
|
||||
// {
|
||||
// trackedTransform.objectReferenceValue = newTrackedTransform;
|
||||
// }
|
||||
// serializedObject.ApplyModifiedProperties();
|
||||
// base.OnInspectorGUI();
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
@@ -1,37 +1,37 @@
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using Rokid.UXR.Module;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Stary.Evo.RKTools
|
||||
{
|
||||
public class ARTrackedImageEvoObj : ARTrackedImageObj
|
||||
{
|
||||
[HideInInspector]
|
||||
public string domain;
|
||||
[HideInInspector]
|
||||
public Transform trackedTransform;
|
||||
|
||||
public void Awake()
|
||||
{
|
||||
if (trackedTransform == null)
|
||||
{
|
||||
trackedTransform=this.transform;
|
||||
Debug.Log("StaryEvo:TrackedImageEvoObj: trackedTransform 未赋值,以自动赋值为自身");
|
||||
}
|
||||
OnARTrackedImageAdded.AddListener(OnARTrackedImageAddedEvent); ;
|
||||
}
|
||||
|
||||
private void OnARTrackedImageAddedEvent(ARTrackedImageObj obj)
|
||||
{
|
||||
TrackedImageEvoManager trackedImageEvoManager = ARTrackedImageManager.Instance as TrackedImageEvoManager;
|
||||
trackedImageEvoManager.SetTrackedImageEvoData(trackedImageIndex,domain,trackedTransform);
|
||||
}
|
||||
|
||||
public void OnDestroy()
|
||||
{
|
||||
OnARTrackedImageAdded.RemoveListener(OnARTrackedImageAddedEvent);
|
||||
}
|
||||
}
|
||||
}
|
||||
// using System;
|
||||
// using System.Collections;
|
||||
// using System.Collections.Generic;
|
||||
// using Rokid.UXR.Module;
|
||||
// using UnityEngine;
|
||||
//
|
||||
// namespace Stary.Evo.RKTools
|
||||
// {
|
||||
// public class ARTrackedImageEvoObj : ARTrackedImageObj
|
||||
// {
|
||||
// [HideInInspector]
|
||||
// public string domain;
|
||||
// [HideInInspector]
|
||||
// public Transform trackedTransform;
|
||||
//
|
||||
// public void Awake()
|
||||
// {
|
||||
// if (trackedTransform == null)
|
||||
// {
|
||||
// trackedTransform=this.transform;
|
||||
// Debug.Log("StaryEvo:TrackedImageEvoObj: trackedTransform 未赋值,以自动赋值为自身");
|
||||
// }
|
||||
// OnARTrackedImageAdded.AddListener(OnARTrackedImageAddedEvent); ;
|
||||
// }
|
||||
//
|
||||
// private void OnARTrackedImageAddedEvent(ARTrackedImageObj obj)
|
||||
// {
|
||||
// TrackedImageEvoManager trackedImageEvoManager = ARTrackedImageManager.Instance as TrackedImageEvoManager;
|
||||
// trackedImageEvoManager.SetTrackedImageEvoData(trackedImageIndex,domain,trackedTransform);
|
||||
// }
|
||||
//
|
||||
// public void OnDestroy()
|
||||
// {
|
||||
// OnARTrackedImageAdded.RemoveListener(OnARTrackedImageAddedEvent);
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
@@ -1,81 +1,81 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using Rokid.UXR.Module;
|
||||
using Sirenix.OdinInspector;
|
||||
using UnityEngine;
|
||||
|
||||
namespace Stary.Evo.RKTools
|
||||
{
|
||||
public class TrackedImageEvoManager : ARTrackedImageManager
|
||||
{
|
||||
[TableList] public List<TarkedImageEvoData> TrackedImages;
|
||||
|
||||
private void Start()
|
||||
{
|
||||
TrackedImages = new List<TarkedImageEvoData>();
|
||||
}
|
||||
|
||||
public TarkedImageEvoData GetTrackedImageEvoData(int imageIndex)
|
||||
{
|
||||
foreach (var imageEvoData in TrackedImages)
|
||||
{
|
||||
if (imageEvoData.imageIndex == imageIndex)
|
||||
{
|
||||
return imageEvoData;
|
||||
}
|
||||
}
|
||||
Debug.LogError($"StaryEvo:未找到对应的图片的id数据,请检查是否进行前置识别 index:{imageIndex}");
|
||||
return null;
|
||||
}
|
||||
|
||||
public void SetTrackedImageEvoData(int imageIndex,string domain, Transform transform)
|
||||
{
|
||||
foreach (var imageEvoData in TrackedImages)
|
||||
{
|
||||
if (imageEvoData.imageIndex == imageIndex)
|
||||
{
|
||||
imageEvoData.position = transform.position;
|
||||
imageEvoData.rotation = transform.eulerAngles;
|
||||
imageEvoData.scale = transform.localScale;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public TarkedImageEvoData GetTrackedImageEvoData(string domain)
|
||||
{
|
||||
foreach (var imageEvoData in TrackedImages)
|
||||
{
|
||||
if (imageEvoData.domain == domain)
|
||||
{
|
||||
return imageEvoData;
|
||||
}
|
||||
}
|
||||
Debug.LogError($"StaryEvo:未找到对应的domain的id数据,请检查是否进行前置识别 domain:{domain}");
|
||||
return null;
|
||||
}
|
||||
|
||||
public void SetTrackedImageEvoData(string domain, Transform transform)
|
||||
{
|
||||
foreach (var imageEvoData in TrackedImages)
|
||||
{
|
||||
if (imageEvoData.domain == domain)
|
||||
{
|
||||
imageEvoData.position = transform.position;
|
||||
imageEvoData.rotation = transform.eulerAngles;
|
||||
imageEvoData.scale = transform.localScale;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[Serializable]
|
||||
public class TarkedImageEvoData
|
||||
{
|
||||
[VerticalGroup("key")] public string domain;
|
||||
[VerticalGroup("key")] public int imageIndex;
|
||||
|
||||
[VerticalGroup("transform")] public Vector3 position;
|
||||
[VerticalGroup("transform")] public Vector3 rotation;
|
||||
[VerticalGroup("transform")] public Vector3 scale;
|
||||
}
|
||||
}
|
||||
// using System;
|
||||
// using System.Collections.Generic;
|
||||
// using Rokid.UXR.Module;
|
||||
// using Sirenix.OdinInspector;
|
||||
// using UnityEngine;
|
||||
//
|
||||
// namespace Stary.Evo.RKTools
|
||||
// {
|
||||
// public class TrackedImageEvoManager : ARTrackedImageManager
|
||||
// {
|
||||
// [TableList] public List<TarkedImageEvoData> TrackedImages;
|
||||
//
|
||||
// private void Start()
|
||||
// {
|
||||
// TrackedImages = new List<TarkedImageEvoData>();
|
||||
// }
|
||||
//
|
||||
// public TarkedImageEvoData GetTrackedImageEvoData(int imageIndex)
|
||||
// {
|
||||
// foreach (var imageEvoData in TrackedImages)
|
||||
// {
|
||||
// if (imageEvoData.imageIndex == imageIndex)
|
||||
// {
|
||||
// return imageEvoData;
|
||||
// }
|
||||
// }
|
||||
// Debug.LogError($"StaryEvo:未找到对应的图片的id数据,请检查是否进行前置识别 index:{imageIndex}");
|
||||
// return null;
|
||||
// }
|
||||
//
|
||||
// public void SetTrackedImageEvoData(int imageIndex,string domain, Transform transform)
|
||||
// {
|
||||
// foreach (var imageEvoData in TrackedImages)
|
||||
// {
|
||||
// if (imageEvoData.imageIndex == imageIndex)
|
||||
// {
|
||||
// imageEvoData.position = transform.position;
|
||||
// imageEvoData.rotation = transform.eulerAngles;
|
||||
// imageEvoData.scale = transform.localScale;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// public TarkedImageEvoData GetTrackedImageEvoData(string domain)
|
||||
// {
|
||||
// foreach (var imageEvoData in TrackedImages)
|
||||
// {
|
||||
// if (imageEvoData.domain == domain)
|
||||
// {
|
||||
// return imageEvoData;
|
||||
// }
|
||||
// }
|
||||
// Debug.LogError($"StaryEvo:未找到对应的domain的id数据,请检查是否进行前置识别 domain:{domain}");
|
||||
// return null;
|
||||
// }
|
||||
//
|
||||
// public void SetTrackedImageEvoData(string domain, Transform transform)
|
||||
// {
|
||||
// foreach (var imageEvoData in TrackedImages)
|
||||
// {
|
||||
// if (imageEvoData.domain == domain)
|
||||
// {
|
||||
// imageEvoData.position = transform.position;
|
||||
// imageEvoData.rotation = transform.eulerAngles;
|
||||
// imageEvoData.scale = transform.localScale;
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//
|
||||
// [Serializable]
|
||||
// public class TarkedImageEvoData
|
||||
// {
|
||||
// [VerticalGroup("key")] public string domain;
|
||||
// [VerticalGroup("key")] public int imageIndex;
|
||||
//
|
||||
// [VerticalGroup("transform")] public Vector3 position;
|
||||
// [VerticalGroup("transform")] public Vector3 rotation;
|
||||
// [VerticalGroup("transform")] public Vector3 scale;
|
||||
// }
|
||||
// }
|
||||
@@ -1,6 +1,6 @@
|
||||
{
|
||||
"name": "com.staryevo.rktools",
|
||||
"version": "1.0.7",
|
||||
"version": "1.1.0",
|
||||
"displayName": "07.RKTools",
|
||||
"description": "Rokid工具",
|
||||
"unity": "2021.3",
|
||||
|
||||
Reference in New Issue
Block a user