|
|
- using UnityEngine;
-
- public static class Optimizer
- {
- public static void ChangeSceneObjState(bool isShow)
- {
- Transform temp_cont = LuaFramework.LuaHelper.GetPanelManager().GetParent("SceneObjContainer");
-
- Animator[] temp_child = temp_cont.GetComponentsInChildren<Animator>();
- for (int i = 0; i < temp_child.Length; i++)
- {
- temp_child[i].enabled = isShow;
- }
-
- SkinnedMeshRenderer[] temp_mesh_child = temp_cont.GetComponentsInChildren<SkinnedMeshRenderer>();
- int layer = isShow ? LayerMask.NameToLayer("Default") : LayerMask.NameToLayer("Hide");
- for (int i = 0; i < temp_mesh_child.Length; i++)
- {
- temp_mesh_child[i].gameObject.layer = layer;
- }
- }
-
- public static void ChangeLayer(Transform trans, string targetLayer)
- {
- if (LayerMask.NameToLayer(targetLayer) == -1)
- {
- Debug.Log("Layer中不存在,请手动添加LayerName");
- return;
- }
- trans.gameObject.layer = LayerMask.NameToLayer(targetLayer);
- foreach (Transform child in trans)
- {
- ChangeLayer(child, targetLayer);
- // Debug.Log(child.name + "子对象Layer更改成功!");
- }
- }
-
- public static void CopyOnPC(string input)
- {
- TextEditor t = new TextEditor();
- t.text = input;
- t.OnFocus();
- t.Copy();
- }
-
- public static MaterialPropertyBlock CreateMatPropertyBlock()
- {
- MaterialPropertyBlock block = new MaterialPropertyBlock();
- return block;
- }
-
- public static MaterialPropertyBlock[] CreateMatPropertyBlocks(int len)
- {
- MaterialPropertyBlock[] blocks = new MaterialPropertyBlock[len];
- for (int i = 0; i < len; i++)
- {
- blocks[i] = new MaterialPropertyBlock();
- }
- return blocks;
- }
-
- public static void SetShaderLodValue(int lod)
- {
- Shader.globalMaximumLOD = lod;
- }
-
-
- }
|