Unity修改Project下的Assets的子文件的图标

2024-05-24 06:44

本文主要是介绍Unity修改Project下的Assets的子文件的图标,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Unity修改文件夹的图标

示例:
请添加图片描述

在右键可以创建指定文件夹。

github链接
https://github.com/SeaeeesSan/SimpleFolderIconCSDN资源的链接
https://download.csdn.net/download/GoodCooking/89347361
去GitHub下载支持原作者哦。

重要的事情

在这里插入图片描述截图来自GitHub 。

  1. Unity版本是: Unity2019.4 or later
  2. 从GitHub上下载的只能是创建文件夹之后,自己修改名字然后会自动修改图标。修改的图标必须在SimpleFolderIcon/Icons下有对应的图片才会修改,没有对应的图片是不会修改的。
  3. 如果想添加更多风格的文件夹图标,在SimpleFolderIcon/Icons添加图片,然后将图片的名称改为需要修改图标的文件夹名称即可。
  4. 如果修改SimpleFolderIcon的位置,则需要修改IconDictionaryCreator.cs
        private const string AssetsPath = "SimpleFolderIcon/Icons";

的路径。

  1. 自带的文件夹图标有:
Animations
Audio
Editor
Fonts
Materials
Models
Plugins
Prefabs
Presets
Resources
Scenes
Scripts
Settings
Shaders
Sprites
Textures

我自己添加的:

  StreamingAssets    Unity系统定义文件夹 ThirdPartyPlugins   第三方插件CertificateFolder     证书文件夹
  1. 在GIF中右键显示Folder_WithIcon需要添加编辑器脚本CreateCustomStyleFolder.cs
using UnityEngine;
using UnityEditor;
using System.IO;/// <summary>
/// 创建自定义风格的文件夹
/// </summary>
public class CreateCustomStyleFolder : MonoBehaviour
{[MenuItem("Assets/Create/Folder_WithIcon/Animations", false, 10)]private static void CreateAnimationsFolder(){CreateFolder("Animations");}[MenuItem("Assets/Create/Folder_WithIcon/Audio", false, 11)]private static void CreateAudioFolder(){CreateFolder("Audio");}[MenuItem("Assets/Create/Folder_WithIcon/Editor", false, 12)]private static void CreateEditorFolder(){CreateFolder("Editor");}[MenuItem("Assets/Create/Folder_WithIcon/Fonts", false, 13)]private static void CreateFontsFolder(){CreateFolder("Fonts");}[MenuItem("Assets/Create/Folder_WithIcon/Materials", false, 14)]private static void CreateMaterialsFolder(){CreateFolder("Materials");}[MenuItem("Assets/Create/Folder_WithIcon/Models", false, 15)]private static void CreateModelsFolder(){CreateFolder("Models");}[MenuItem("Assets/Create/Folder_WithIcon/Plugins", false, 16)]private static void CreatePluginsFolder(){CreateFolder("Plugins");}[MenuItem("Assets/Create/Folder_WithIcon/Prefabs", false, 17)]private static void CreatePrefabsFolder(){CreateFolder("Prefabs");}[MenuItem("Assets/Create/Folder_WithIcon/Presets", false, 18)]private static void CreatePresetsFolder(){CreateFolder("Presets");}[MenuItem("Assets/Create/Folder_WithIcon/Resources", false, 19)]private static void CreateResourcesFolder(){CreateFolder("Resources");}[MenuItem("Assets/Create/Folder_WithIcon/Scenes", false, 20)]private static void CreateScenesFolder(){CreateFolder("Scenes");}[MenuItem("Assets/Create/Folder_WithIcon/Scripts", false, 21)]private static void CreateScriptsFolder(){CreateFolder("Scripts");}[MenuItem("Assets/Create/Folder_WithIcon/Settings", false, 22)]private static void CreateSettingsFolder(){CreateFolder("Settings");}[MenuItem("Assets/Create/Folder_WithIcon/Shaders", false, 23)]private static void CreateShadersFolder(){CreateFolder("Shaders");}[MenuItem("Assets/Create/Folder_WithIcon/Sprites", false, 24)]private static void CreateSpritesFolder(){CreateFolder("Sprites");}[MenuItem("Assets/Create/Folder_WithIcon/Textures", false, 25)]private static void CreateTexturesFolder(){CreateFolder("Textures");}[MenuItem("Assets/Create/Folder_WithIcon/StreamingAssets", false, 26)]private static void CreateStreamingAssetsFolder(){CreateFolder("StreamingAssets");}[MenuItem("Assets/Create/Folder_WithIcon/ThirdPartyPlugins", false, 27)]private static void CreateThirdPartyPluginsFolder(){CreateFolder("ThirdPartyPlugins");}[MenuItem("Assets/Create/Folder_WithIcon/CertificateFolder", false, 28)]private static void CreateCertificateFolder(){CreateFolder("CertificateFolder");}private static void CreateFolder(string folderName){// 获取鼠标右键点击的位置的路径string assetPath = AssetDatabase.GetAssetPath(Selection.activeObject);if (string.IsNullOrEmpty(assetPath)){assetPath = "Assets";}else if (Path.GetExtension(assetPath) != ""){assetPath = assetPath.Replace(Path.GetFileName(AssetDatabase.GetAssetPath(Selection.activeObject)), "");}// 创建文件夹string newFolderPath = AssetDatabase.GenerateUniqueAssetPath(assetPath + "/" + folderName);AssetDatabase.CreateFolder(assetPath, folderName);AssetDatabase.Refresh();Debug.Log("Created folder at: " + newFolderPath);}
}

这篇关于Unity修改Project下的Assets的子文件的图标的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/997670

相关文章

macOS无效Launchpad图标轻松删除的4 种实用方法

《macOS无效Launchpad图标轻松删除的4种实用方法》mac中不在appstore上下载的应用经常在删除后它的图标还残留在launchpad中,并且长按图标也不会出现删除符号,下面解决这个问... 在 MACOS 上,Launchpad(也就是「启动台」)是一个便捷的 App 启动工具。但有时候,应

Python实现无痛修改第三方库源码的方法详解

《Python实现无痛修改第三方库源码的方法详解》很多时候,我们下载的第三方库是不会有需求不满足的情况,但也有极少的情况,第三方库没有兼顾到需求,本文将介绍几个修改源码的操作,大家可以根据需求进行选择... 目录需求不符合模拟示例 1. 修改源文件2. 继承修改3. 猴子补丁4. 追踪局部变量需求不符合很

Linux修改pip和conda缓存路径的几种方法

《Linux修改pip和conda缓存路径的几种方法》在Python生态中,pip和conda是两种常见的软件包管理工具,它们在安装、更新和卸载软件包时都会使用缓存来提高效率,适当地修改它们的缓存路径... 目录一、pip 和 conda 的缓存机制1. pip 的缓存机制默认缓存路径2. conda 的缓

Linux修改pip临时目录方法的详解

《Linux修改pip临时目录方法的详解》在Linux系统中,pip在安装Python包时会使用临时目录(TMPDIR),但默认的临时目录可能会受到存储空间不足或权限问题的影响,所以本文将详细介绍如何... 目录引言一、为什么要修改 pip 的临时目录?1. 解决存储空间不足的问题2. 解决权限问题3. 提

Linux文件名修改方法大全

《Linux文件名修改方法大全》在Linux系统中,文件名修改是一个常见且重要的操作,文件名修改可以更好地管理文件和文件夹,使其更具可读性和有序性,本文将介绍三种在Linux系统下常用的文件名修改方法... 目录一、引言二、使用mv命令修改文件名三、使用rename命令修改文件名四、mv命令和rename命

mybatis-plus 实现查询表名动态修改的示例代码

《mybatis-plus实现查询表名动态修改的示例代码》通过MyBatis-Plus实现表名的动态替换,根据配置或入参选择不同的表,本文主要介绍了mybatis-plus实现查询表名动态修改的示... 目录实现数据库初始化依赖包配置读取类设置 myBATis-plus 插件测试通过 mybatis-plu

Linux下修改hostname的三种实现方式

《Linux下修改hostname的三种实现方式》:本文主要介绍Linux下修改hostname的三种实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录linux下修改ho编程stname三种方式方法1:修改配置文件方法2:hFvEWEostnamectl命

Git如何修改已提交人的用户名和邮箱

《Git如何修改已提交人的用户名和邮箱》文章介绍了如何修改Git已提交人的用户名和邮箱,包括注意事项和具体步骤,确保操作正确无误... 目录git修改已提交人的用户名和邮箱前言第一步第二步总结git修改已提交人的用户名和邮箱前言需注意以下两点内容:需要在顶层目录下(php就是 .git 文件夹所在的目

Python使用PIL库将PNG图片转换为ICO图标的示例代码

《Python使用PIL库将PNG图片转换为ICO图标的示例代码》在软件开发和网站设计中,ICO图标是一种常用的图像格式,特别适用于应用程序图标、网页收藏夹图标等场景,本文将介绍如何使用Python的... 目录引言准备工作代码解析实践操作结果展示结语引言在软件开发和网站设计中,ICO图标是一种常用的图像

修改若依框架Token的过期时间问题

《修改若依框架Token的过期时间问题》本文介绍了如何修改若依框架中Token的过期时间,通过修改`application.yml`文件中的配置来实现,默认单位为分钟,希望此经验对大家有所帮助,也欢迎... 目录修改若依框架Token的过期时间修改Token的过期时间关闭Token的过期时js间总结修改若依