源战役客户端
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

67 lines
1.9 KiB

  1. using UnityEngine;
  2. public static class Optimizer
  3. {
  4. public static void ChangeSceneObjState(bool isShow)
  5. {
  6. Transform temp_cont = LuaFramework.LuaHelper.GetPanelManager().GetParent("SceneObjContainer");
  7. Animator[] temp_child = temp_cont.GetComponentsInChildren<Animator>();
  8. for (int i = 0; i < temp_child.Length; i++)
  9. {
  10. temp_child[i].enabled = isShow;
  11. }
  12. SkinnedMeshRenderer[] temp_mesh_child = temp_cont.GetComponentsInChildren<SkinnedMeshRenderer>();
  13. int layer = isShow ? LayerMask.NameToLayer("Default") : LayerMask.NameToLayer("Hide");
  14. for (int i = 0; i < temp_mesh_child.Length; i++)
  15. {
  16. temp_mesh_child[i].gameObject.layer = layer;
  17. }
  18. }
  19. public static void ChangeLayer(Transform trans, string targetLayer)
  20. {
  21. if (LayerMask.NameToLayer(targetLayer) == -1)
  22. {
  23. Debug.Log("Layer中不存在,请手动添加LayerName");
  24. return;
  25. }
  26.         trans.gameObject.layer = LayerMask.NameToLayer(targetLayer);
  27. foreach (Transform child in trans)
  28. {
  29. ChangeLayer(child, targetLayer);
  30. // Debug.Log(child.name + "子对象Layer更改成功!");
  31. }
  32. }
  33. public static void CopyOnPC(string input)
  34. {
  35. TextEditor t = new TextEditor();
  36. t.text = input;
  37. t.OnFocus();
  38. t.Copy();
  39. }
  40. public static MaterialPropertyBlock CreateMatPropertyBlock()
  41. {
  42. MaterialPropertyBlock block = new MaterialPropertyBlock();
  43. return block;
  44. }
  45. public static MaterialPropertyBlock[] CreateMatPropertyBlocks(int len)
  46. {
  47. MaterialPropertyBlock[] blocks = new MaterialPropertyBlock[len];
  48. for (int i = 0; i < len; i++)
  49. {
  50. blocks[i] = new MaterialPropertyBlock();
  51. }
  52. return blocks;
  53. }
  54. public static void SetShaderLodValue(int lod)
  55. {
  56. Shader.globalMaximumLOD = lod;
  57. }
  58. }