unity使用代码修改Texture属性,一键生成精灵

发下牢骚:unity基础组件不是个人强项,我主要作引擎和项目实战结合的,如何利用unity引擎去高效的实现游戏的功能是我主要的研究方向。编辑器

但是就任后一直作UI,调组件,摆布局,不开森,不开森!函数

今天阿亮给你们分享的是一个小工具,本身写的。由于公司的UI比较丰富,各类底图什么的都很是多。为了避免让图片资源重复等缘由,要求导入图片工具

时须要一张一张的从美工资源那边拿,一张一张的比对后才能添加到项目中。而后按照惯例,对图片进行修改,作成精灵。布局

图片添加到项目资源默认是这样的,spa

要求的属性设置是这样的:code

若是手动调的话,太麻烦了,点击选择,还要应用选项,而后我立刻写了个小工具。用C#写代码真好啊,惋惜orm

我如今只能用Lua写。对象

如今把这个小工具分享给你们。blog

今天心情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前面有空格)。

相关文章
相关标签/搜索