- 1、本文档共21页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课题:Unity3d删除无用的美术资源
Unity3d删除无用的美术资源
这个插件是我在国外网站逛论坛发现的,试用了一下非常好用,是一个轻量级的插件就一个类。开发中尤其是和美术合作的时候,可能你会发现Project视图中有很多没有用到的资源,但是你又不敢删除,因为你不知道那些资源是没用到的,那些资源是用到的。这时候ResourceChecker可以帮上大忙。
将ResourceChecker放在Project视图中的Editor文件夹中,如果没有该文件夹就创建一个。如下图所示,在Unity导航菜单栏中选择 Windows - Resource Checker 即可呼出窗口。
?
?
在Textures选项卡最下面点击 Select Al l 可在Project视图中展开目录结构,这时候你删除没有选中的文件就可以。。?
?
定位贴图、材质、网格。定位所有文件,总这这个小插件你值得拥有!
代码如下:
using UnityEngine;
using UnityEditor;
using System.Collections.Generic;
?
?
public class TextureDetails
{
public bool isCubeMap;
public int memSizeKB;
publicTexture texture;
publicTextureFormat format;
public int mipMapCount;
public ListObject FoundInMaterials=new ListObject();
public ListObject FoundInRenderers=new ListObject();
public TextureDetails()
{
?
}
};
?
public class MaterialDetails
{
?
publicMaterial material;
?
public ListRenderer FoundInRenderers=new ListRenderer();
?
public MaterialDetails()
{
?
}
};
?
public class MeshDetails
{
?
publicMesh mesh;
?
public ListMeshFilter FoundInMeshFilters=new ListMeshFilter();
public ListSkinnedMeshRenderer FoundInSkinnedMeshRenderer=new ListSkinnedMeshRenderer();
?
public MeshDetails()
{
?
}
};
?
publicclass ResourceChecker : EditorWindow {
?
?
string[] inspectToolbarStrings = {Textures, Materials,Meshes} ;
?
enum InspectType?
{
Textures,Materials,Meshes
} ;
?
InspectType ActiveInspectType=InspectType.Textures;
?
float ThumbnailWidth=40;
float ThumbnailHeight=40;
?
ListTextureDetails ActiveTextures=new ListTextureDetails();
ListMaterialDetails ActiveMaterials=new ListMaterialDetails();
ListMeshDetails ActiveMeshDetails=new ListMeshDetails();
?
Vector2 textureListScrollPos=new Vector2(0,0);
Vector2 materialListScrollPos=new Vector2(0,0);
Vector2 meshListScrollPos=new Vector2(0,0);
?
int TotalTextureMemory=0;
int TotalMeshVertices=0;
?
bool ctrlPressed=false;
?
static int MinWidth=455;
?? ?
? ? [MenuItem (Window/Resource Checker)]
? ? static void Init ()
{? ?
? ? ? ? ResourceChecker window = (ResourceChecker) EditorWindow.GetWindow (typeof (R
文档评论(0)