zoukankan      html  css  js  c++  java
  • unity使用代码修改Texture属性,一键生成精灵

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

    可是就职后一直做UI,调组件,摆布局,不开森,不开森!

    今天阿亮给大家分享的是一个小工具,自己写的。因为公司的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前面有空格)。

  • 相关阅读:
    【Web】JavaScript 语法入门
    tar 和gzip 的区别
    状态码,好记
    PyCharm与git/GitHub取消关联
    在Ubuntu下安装deb包需要使用dpkg命令
    linux每日命令(4):解压命令
    Python之os.path.join()
    Python的JAVA胶水——jpype
    python之chardet验证编码格式
    python之arrow时间处理模块
  • 原文地址:https://www.cnblogs.com/jqg-aliang/p/4873148.html
Copyright © 2011-2022 走看看