Unity 使用代码修改Texture属性 一键生成精灵
2016-11-29 12:48
1566 查看
因为公司的UI比较丰富,各种底图什么的都非常多。为了不让图片资源重复等原因,要求导入图片
时需要一张一张的从美工资源那边拿,一张一张的比对后才能添加到项目中。然后按照惯例,对图片进行修改,做成精灵。
图片添加到项目资源默认是这样的,
要求的属性设置是这样的:
如果手动调的话,太麻烦了,点击选择,还要应用选项,然后我马上写了个小工具。用C#写代码真好啊,可惜
我现在只能用Lua写。
现在把这个小工具分享给大家。
今天心情So Down,不想注释。代码很简单,就是设置一些属性的。大家可以尝试修改达到自己想要的要求
using UnityEngine;
using System.Collections;
using UnityEditor;
using System.IO;
/// <summary>
/// 这个函数是自动对图片资源自动处理,设置类型,格式等
/// </summary>
public class TextureEditor {
static Object targetObj;
[MenuItem("TextureEdit/Edit")]
static void EditTexture() {
targetObj = Selection.activeObject;//这个函数可以得到你选中的对象
if (targetObj && targetObj is Texture)
{
string path = AssetDatabase.GetAssetPath(targetObj);
TextureImporter texture = AssetImporter.GetAtPath(path) as TextureImporter;
texture.textureType = TextureImporterType.Sprite;
texture.spritePixelsPerUnit = 1;
texture.filterMode = FilterMode.Trilinear;
texture.mipmapEnabled = false;
texture.textureFormat = TextureImporterFormat.AutomaticTruecolor;
AssetDatabase.ImportAsset(path);
}
}
}
写完后,可能需要重新打开项目,然后你就会看到这个东东:
选中图片然后点击Edit,自己看效果吧!
10月22日更新:自定义编辑器快捷键.
首先感谢阿升哥哥。他的博客在这里:http://home.cnblogs.com/u/shenggege/
OK,用鼠标点击菜单完成编辑功能还是有点麻烦,自定义一个快捷键吧:
[MenuItem("TextureEdit/Edit &C")]
然后你就会在编辑器中看到这个
选中图片然后按下Alt + C,图片秒设……
以下内容来自API:
可以使用一下指定字符创建热键:% (Windows上为ctrl, OS X上为cmd), # (shift), & (alt), _ (无修改键)。例如创建一个菜单热键为shift-alt-g使用GameObject/Do Something #&g。创建一个菜单热键g并没有修改键(组合键),使用GameObject/Do Something _g。热键文本必须在前面加一个空格字符(GameObject/Do_g不会被解释为热键,而是GameObject/Do _g这样,注意_g前面有空格)。
时需要一张一张的从美工资源那边拿,一张一张的比对后才能添加到项目中。然后按照惯例,对图片进行修改,做成精灵。
图片添加到项目资源默认是这样的,
要求的属性设置是这样的:
如果手动调的话,太麻烦了,点击选择,还要应用选项,然后我马上写了个小工具。用C#写代码真好啊,可惜
我现在只能用Lua写。
现在把这个小工具分享给大家。
今天心情So Down,不想注释。代码很简单,就是设置一些属性的。大家可以尝试修改达到自己想要的要求
using UnityEngine;
using System.Collections;
using UnityEditor;
using System.IO;
/// <summary>
/// 这个函数是自动对图片资源自动处理,设置类型,格式等
/// </summary>
public class TextureEditor {
static Object targetObj;
[MenuItem("TextureEdit/Edit")]
static void EditTexture() {
targetObj = Selection.activeObject;//这个函数可以得到你选中的对象
if (targetObj && targetObj is Texture)
{
string path = AssetDatabase.GetAssetPath(targetObj);
TextureImporter texture = AssetImporter.GetAtPath(path) as TextureImporter;
texture.textureType = TextureImporterType.Sprite;
texture.spritePixelsPerUnit = 1;
texture.filterMode = FilterMode.Trilinear;
texture.mipmapEnabled = false;
texture.textureFormat = TextureImporterFormat.AutomaticTruecolor;
AssetDatabase.ImportAsset(path);
}
}
}
写完后,可能需要重新打开项目,然后你就会看到这个东东:
选中图片然后点击Edit,自己看效果吧!
10月22日更新:自定义编辑器快捷键.
首先感谢阿升哥哥。他的博客在这里:http://home.cnblogs.com/u/shenggege/
OK,用鼠标点击菜单完成编辑功能还是有点麻烦,自定义一个快捷键吧:
[MenuItem("TextureEdit/Edit &C")]
然后你就会在编辑器中看到这个
选中图片然后按下Alt + C,图片秒设……
以下内容来自API:
可以使用一下指定字符创建热键:% (Windows上为ctrl, OS X上为cmd), # (shift), & (alt), _ (无修改键)。例如创建一个菜单热键为shift-alt-g使用GameObject/Do Something #&g。创建一个菜单热键g并没有修改键(组合键),使用GameObject/Do Something _g。热键文本必须在前面加一个空格字符(GameObject/Do_g不会被解释为热键,而是GameObject/Do _g这样,注意_g前面有空格)。
相关文章推荐
- unity使用代码修改Texture属性,一键生成精灵
- unity使用代码修改Texture属性,一键生成精灵
- 运行时使用代码动态的修改AspxGridView的列属性
- 在使用shape的同时,用代码修改shape的颜色属性
- 在使用shape的同时,用代码修改shape的颜色属性
- 在使用shape的同时,用代码修改shape的颜色属性
- 黄聪:C#代码生成工具:文本模板初体验 使用T4批量修改实体框架(转载)
- 在使用shape的同时,用代码修改shape的颜色属性
- Unity修改自动生成的代码模板
- 将texturepacker生成的png和xml资源反向生成小图供unity使用
- 开始玩qt,使用代码修改设计模式生成的菜单
- 使用storyboard显示UITableView时,如果不修改系统默认生成的tableView:cellForRowAtIndexPath:方法中的代码,则必须为UITableViewCell注册(填写)重用标识符:identifier.必须要代码方法中的标识符一致.
- 在使用shape的同时,用代码修改shape的颜色属性
- 使用代码修改材质的属性
- 5.使用 unity GUI代码生成按钮
- 使用sencha cmd 一键生成你的应用程序代码
- Yii——使用CHtml::link()等方法时,设置htmlOptions属性可快速生成js代码和ajax请求
- 在使用shape的同时,用代码修改shape的颜色属性
- vue.js学习10之动手使用vue-cli搭建项目及生成的代码进行修改练手