(1)找到脚本 删除脚本
if(gameObject.GetComponent<MouseDrag>())
{
Destroy(gameObject.GetComponent<MouseDrag>());
}
(2)生成Perfabs
public GameObject Perfabs;
Object prefab = PrefabUtility.CreateEmptyPrefab("Assets/预制体.prefab");
PrefabUtility.ReplacePrefab(Perfabs,prefab,ReplacePrefabOptions.ConnectToPrefab);
(3)查找Tag
GameObject[] GG= GameObject.FindGameObjectsWithTag("Tag");
(4)添加脚本
if(!gameObject.GetComponent<添加脚本名字>())
{
gameObject.AddComponent<添加脚本名字>();
}
(5)提高IOS的fps上限
提示:ios默认的fps上限是30,在第一个界面任何物体加上
void Awake()
{
Application.targetFrameRate = 60;
}
(6)在场景切换时必要保存的对象
MyObject = FindMyObjectInScene();
if (MyObjet == null)
{
MyObject = SpawnMyObject();
}
(7)为Invoke, StartCoroutine and Instantiate 定义安全调用方法
提示:定义一个委托任务(delegate Task),用它来定义需要调用的方法,而不要使用字符串属性方法名称。
public void Invoke(Task task, float time)
{
Invoke(task.Method.Name, time);
}
(8)使用扩展来让代码书写更便捷
public static class CSTransform
{
public static void SetX(this Transform transform, float x)
{
Vector3 newPosition =
new Vector3(x, transform.position.y, transform.position.z);
transform.position = newPosition;
}
...
}
(9)修改shader
GetComponent<Renderer>().material.SetFloat("_WaveScale", 0.5f);
(10)调整相机效果脚本
Cam.GetComponent<UnityStandardAssets.ImageEffects.DepthOfFieldDeprecated>().focalZDistance = focalDistance;
以后我每周都会把我遇见的,用到的实用小代码整理一下分享给大家 !