【Unity3D自学记录】利用代码修改图片属性(Inspector)
2014-10-24 11:19
435 查看
这段时间一直都在打包资源,然后每次导入都要改图片的属性,真是麻烦,所以一直在寻找一键修改并且打包的方法。
终于让我找到了,太坑人了。
根据自己的需求改代码哦,相信大家都能看明白。
核心部分:
TextureImporter ti = (TextureImporter)TextureImporter.GetAtPath(AssetDatabase.GetAssetPath(obj));
ti.textureType = TextureImporterType.GUI;
ti.filterMode = FilterMode.Point;
ti.textureFormat = TextureImporterFormat.RGBA32;
全部代码如下:
using UnityEngine;
using System.Collections;
using UnityEditor;
public class AssetBundleTest : Editor
{
[MenuItem("Creat/CreateAssetBunldes")]
public static void CreateAssetBunldes()
{
Object[] SelectedAsset = Selection.GetFiltered(typeof(Object), SelectionMode.DeepAssets);
foreach (Object obj in SelectedAsset)
{
TextureImporter ti = (TextureImporter)TextureImporter.GetAtPath(AssetDatabase.GetAssetPath(obj));
ti.textureType = TextureImporterType.GUI;
ti.filterMode = FilterMode.Point;
ti.textureFormat = TextureImporterFormat.RGBA32;
string targetPath = Application.dataPath + "/Asset/" + obj.name + ".assetbundle";
if (BuildPipeline.BuildAssetBundle(obj, null, targetPath, BuildAssetBundleOptions.CollectDependencies))
{
Debug.Log(obj.name + "资源打包成功");
}
else
{
Debug.Log(obj.name + "资源打包失败");
}
}
AssetDatabase.Refresh();
}
}
希望大家喜欢。
终于让我找到了,太坑人了。
根据自己的需求改代码哦,相信大家都能看明白。
核心部分:
TextureImporter ti = (TextureImporter)TextureImporter.GetAtPath(AssetDatabase.GetAssetPath(obj));
ti.textureType = TextureImporterType.GUI;
ti.filterMode = FilterMode.Point;
ti.textureFormat = TextureImporterFormat.RGBA32;
全部代码如下:
using UnityEngine;
using System.Collections;
using UnityEditor;
public class AssetBundleTest : Editor
{
[MenuItem("Creat/CreateAssetBunldes")]
public static void CreateAssetBunldes()
{
Object[] SelectedAsset = Selection.GetFiltered(typeof(Object), SelectionMode.DeepAssets);
foreach (Object obj in SelectedAsset)
{
TextureImporter ti = (TextureImporter)TextureImporter.GetAtPath(AssetDatabase.GetAssetPath(obj));
ti.textureType = TextureImporterType.GUI;
ti.filterMode = FilterMode.Point;
ti.textureFormat = TextureImporterFormat.RGBA32;
string targetPath = Application.dataPath + "/Asset/" + obj.name + ".assetbundle";
if (BuildPipeline.BuildAssetBundle(obj, null, targetPath, BuildAssetBundleOptions.CollectDependencies))
{
Debug.Log(obj.name + "资源打包成功");
}
else
{
Debug.Log(obj.name + "资源打包失败");
}
}
AssetDatabase.Refresh();
}
}
希望大家喜欢。
相关文章推荐
- 【Unity3D自学记录】利用代码改动图片属性(Inspector)
- 【Unity3D自学记录】UnityWebPlayer网页全屏模式代码
- 利用代码修改layout_marginBottom的属性
- 【Unity3D自学记录】代码获取隐藏游戏对象
- 【Unity3D自学记录】利用WinRAR的自解压功能单文件发布Unity的PC版本包
- 【Unity3D自学记录】NGUI之编写跟随鼠标代码
- 【Unity3D自学记录】 Unity 延迟执行一段代码的较为优雅的方式
- 带客户端脚本的图片控件,可利用后台代码修改图片显示(C#代码)
- 利用unity3d属性来设置Inspector面板的特殊行为
- 转载 ---- 【Unity3D自学记录】代码获取隐藏游戏对象
- 利用UIEdgeInsets属性修改UIButton的图片,文字位置
- 【Unity3D自学记录】打造网络图片异步加载与本地缓存工具类
- 【Unity3D自学记录】自制插件之简单批量修改
- 利用vbs脚本快速修改hosts记录,提供Google Picasa相册无法显示图片问题的傻瓜级方案(2009.11.11更新) 推荐
- 修改VS2008代码重构模板简化接口属性成员实现
- asp批量修改记录的代码
- asp批量修改记录的代码
- C# 批量修改图片尺寸的代码
- [VB.NET]如何在DataGridView控件中增加、删除和修改记录(用程序代码的方法)
- 利用C#编写修改注册表的程序代码