1,取消勾选RaycastTarget.
因为在制作UI界面时往往背景等Image组件和Tast组件不需要响应事件,一般都是使用按钮来实现响应事件,所以为了节省效率还是取消勾选吧。
可以写一个脚本来取消勾选。
[MenuItem("GameObject/UI/Image")]static void CreatImage()
{
if(Selection.activeTransform)
{
if(Selection.activeTransform.GetComponentInParent<Canvas>())
{
GameObject go = new GameObject("image",typeof(Image));
go.GetComponent<Image>().raycastTarget = false;
go.transform.SetParent(Selection.activeTransform);
}
}
}
将需要取消勾选的东西设置一个层就行了。
2.同一个UI界面的图片尽量放在一个图集中,这样可以降低drawcall.
3.共用的图片放到一个共享的图集中,例如通用的弹框和按钮等。可以降低切换界面加载的速度。
4.不同格式的图片放在不同的图集中,例如透明和不透明的图片放到一个图集中,节省内存。
5.适当的降低图片的尺寸。