コード例 #1
0
 public override void ApplyDataSetAppearance()
 {
     if (VuforiaUtilities.GetPrefabType(this.mTarget) == PrefabType.Prefab)
     {
         return;
     }
     using (this.mSerializedObject.Edit())
     {
         ConfigData.ImageTargetData imageTargetData;
         if (this.TrackableInDataSet(this.mSerializedObject.TrackableName, this.mSerializedObject.GetDataSetName()))
         {
             ConfigDataManager.Instance.GetConfigData(this.mSerializedObject.GetDataSetName()).GetImageTarget(this.mSerializedObject.TrackableName, out imageTargetData);
         }
         else if (this.mSerializedObject.ImageTargetType != ImageTargetType.PREDEFINED)
         {
             imageTargetData = VuforiaUtilities.CreateDefaultImageTarget();
         }
         else
         {
             ConfigDataManager.Instance.GetConfigData("--- EMPTY ---").GetImageTarget("--- EMPTY ---", out imageTargetData);
             this.mSerializedObject.DataSetPath   = "--- EMPTY ---";
             this.mSerializedObject.TrackableName = "--- EMPTY ---";
         }
         ImageTargetEditor.UpdateAspectRatio(this.mSerializedObject, imageTargetData.size);
         ImageTargetEditor.UpdateMaterial(this.mSerializedObject);
     }
 }
コード例 #2
0
        private void DrawUserDefinedTargetInspectorUI(bool typeChanged)
        {
            if (typeChanged)
            {
                ConfigData.ImageTargetData imageTargetData = VuforiaUtilities.CreateDefaultImageTarget();
                this.mSerializedObject.TrackableName = string.Empty;
                ImageTargetEditor.UpdateAspectRatio(this.mSerializedObject, imageTargetData.size);
                this.mSerializedObject.SetMaterial(ImageTargetEditor.UpdateMaterial("", "", ImageTargetType.USER_DEFINED, this.mSerializedObject.GetMaterial()));
            }
            if (this.mSerializedObject.TrackableName.Length > 64)
            {
                EditorGUILayout.HelpBox("Target name must not exceed 64 character limit!", MessageType.Error);
            }
            EditorGUILayout.PropertyField(this.mSerializedObject.TrackableNameProperty, new GUIContent("Target Name"), new GUILayoutOption[0]);
            EditorGUILayout.PropertyField(this.mSerializedObject.PreserveChildSizeProperty, new GUIContent("Preserve child size"), new GUILayoutOption[0]);
            bool expr_BB = SceneManager.Instance.SmartTerrainInitializationEnabled();

            if (expr_BB)
            {
                EditorGUILayout.HelpBox("Extended Tracking cannot be enabled at the same time as Smart Terrain.", MessageType.Info);
            }
            GUI.enabled = !expr_BB;
            EditorGUILayout.PropertyField(this.mSerializedObject.ExtendedTrackingProperty, new GUIContent("Enable Extended Tracking"), new GUILayoutOption[0]);
            GUI.enabled = true;
        }
コード例 #3
0
 public static void EditorConfigureTarget(ImageTargetAbstractBehaviour itb, SerializedImageTarget serializedObject)
 {
     if (itb == null)
     {
         Debug.LogError("ImageTargetAbstractBehaviour parameter is null !");
         return;
     }
     if (VuforiaUtilities.GetPrefabType(itb) == PrefabType.Prefab)
     {
         return;
     }
     if (!SceneManager.Instance.SceneInitialized)
     {
         SceneManager.Instance.InitScene();
     }
     using (serializedObject.Edit())
     {
         if (!serializedObject.InitializedInEditor && !EditorApplication.isPlaying)
         {
             ConfigData.ImageTargetData imageTargetData;
             ConfigDataManager.Instance.GetConfigData("--- EMPTY ---").GetImageTarget("--- EMPTY ---", out imageTargetData);
             serializedObject.DataSetPath   = "--- EMPTY ---";
             serializedObject.TrackableName = "--- EMPTY ---";
             ImageTargetEditor.UpdateAspectRatio(serializedObject, imageTargetData.size);
             ImageTargetEditor.UpdateScale(serializedObject, imageTargetData.size);
             ImageTargetEditor.UpdateMaterial(serializedObject);
             serializedObject.InitializedInEditor = true;
         }
         else if (!EditorApplication.isPlaying)
         {
             ImageTargetEditor.CheckMesh(serializedObject);
         }
     }
 }
コード例 #4
0
        private static void UpdateDataSetAppearance(SerializedImageTarget serializedObject)
        {
            ConfigData configData = ConfigDataManager.Instance.GetConfigData(serializedObject.GetDataSetName());

            if (configData.ImageTargetExists(serializedObject.TrackableName))
            {
                ConfigData.ImageTargetData imageTargetData;
                configData.GetImageTarget(serializedObject.TrackableName, out imageTargetData);
                ImageTargetEditor.UpdateAspectRatio(serializedObject, imageTargetData.size);
                ImageTargetEditor.UpdateScale(serializedObject, imageTargetData.size);
            }
            ImageTargetEditor.UpdateMaterial(serializedObject);
        }
コード例 #5
0
        private void DrawCloudRecoTargetInspectorUI(bool typeChanged)
        {
            if (typeChanged)
            {
                ConfigData.ImageTargetData imageTargetData = VuforiaUtilities.CreateDefaultImageTarget();
                this.mSerializedObject.TrackableName = string.Empty;
                ImageTargetEditor.UpdateAspectRatio(this.mSerializedObject, imageTargetData.size);
                this.mSerializedObject.SetMaterial(ImageTargetEditor.UpdateMaterial("", "", ImageTargetType.CLOUD_RECO, this.mSerializedObject.GetMaterial()));
            }
            EditorGUILayout.PropertyField(this.mSerializedObject.PreserveChildSizeProperty, new GUIContent("Preserve child size"), new GUILayoutOption[0]);
            bool expr_7B = SceneManager.Instance.SmartTerrainInitializationEnabled();

            if (expr_7B)
            {
                EditorGUILayout.HelpBox("Extended Tracking cannot be enabled at the same time as Smart Terrain.", MessageType.Info);
            }
            GUI.enabled = !expr_7B;
            EditorGUILayout.PropertyField(this.mSerializedObject.ExtendedTrackingProperty, new GUIContent("Enable Extended Tracking"), new GUILayoutOption[0]);
            GUI.enabled = true;
            SmartTerrainInitializationTargetEditorExtension.DrawInspectorForInitializationTarget(this.mSerializedObject, true);
        }