Keine Beschreibung
Du kannst nicht mehr als 25 Themen auswählen Themen müssen mit entweder einem Buchstaben oder einer Ziffer beginnen. Sie können Bindestriche („-“) enthalten und bis zu 35 Zeichen lang sein.

TestUtility.cs 1.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. using UnityEditor;
  2. using System.Collections;
  3. using System.Diagnostics.CodeAnalysis;
  4. using NUnit.Framework;
  5. using UnityEngine;
  6. using Object = UnityEngine.Object;
  7. namespace Unity.AI.Navigation.Editor.Tests
  8. {
  9. public class TestUtility
  10. {
  11. [return: NotNull]
  12. public static GameObject InstantiatePrefab(GameObject prefab, string name)
  13. {
  14. GameObject result;
  15. if (EditorApplication.isPlaying)
  16. result = Object.Instantiate(prefab);
  17. else
  18. result = PrefabUtility.InstantiatePrefab(prefab) as GameObject;
  19. Assume.That(result, Is.Not.Null);
  20. result!.name = name;
  21. return result!;
  22. }
  23. public static IEnumerator BakeNavMeshAsync(NavMeshSurface surface, int defaultArea)
  24. {
  25. surface.defaultArea = defaultArea;
  26. NavMeshAssetManager.instance.StartBakingSurfaces(new Object[] { surface });
  27. yield return new WaitWhile(() => NavMeshAssetManager.instance.IsSurfaceBaking(surface));
  28. }
  29. public static void EliminateFromScene(ref GameObject go, bool keepDeactivated = false)
  30. {
  31. if (go == null)
  32. return;
  33. if (keepDeactivated)
  34. go.SetActive(false);
  35. else
  36. Object.DestroyImmediate(go);
  37. }
  38. }
  39. enum RunMode
  40. {
  41. EditMode,
  42. PlayMode
  43. }
  44. }