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

相关文章

Python函数的基本用法、返回值特性、全局变量修改及异常处理技巧

《Python函数的基本用法、返回值特性、全局变量修改及异常处理技巧》本文将通过实际代码示例,深入讲解Python函数的基本用法、返回值特性、全局变量修改以及异常处理技巧,感兴趣的朋友跟随小编一起看看... 目录一、python函数定义与调用1.1 基本函数定义1.2 函数调用二、函数返回值详解2.1 有返

Nginx屏蔽服务器名称与版本信息方式(源码级修改)

《Nginx屏蔽服务器名称与版本信息方式(源码级修改)》本文详解如何通过源码修改Nginx1.25.4,移除Server响应头中的服务类型和版本信息,以增强安全性,需重新配置、编译、安装,升级时需重复... 目录一、背景与目的二、适用版本三、操作步骤修改源码文件四、后续操作提示五、注意事项六、总结一、背景与

Unity新手入门学习殿堂级知识详细讲解(图文)

《Unity新手入门学习殿堂级知识详细讲解(图文)》Unity是一款跨平台游戏引擎,支持2D/3D及VR/AR开发,核心功能模块包括图形、音频、物理等,通过可视化编辑器与脚本扩展实现开发,项目结构含A... 目录入门概述什么是 UnityUnity引擎基础认知编辑器核心操作Unity 编辑器项目模式分类工程

C#和Unity中的中介者模式使用方式

《C#和Unity中的中介者模式使用方式》中介者模式通过中介者封装对象交互,降低耦合度,集中控制逻辑,适用于复杂系统组件交互场景,C#中可用事件、委托或MediatR实现,提升可维护性与灵活性... 目录C#中的中介者模式详解一、中介者模式的基本概念1. 定义2. 组成要素3. 模式结构二、中介者模式的特点

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

苹果macOS 26 Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色

《苹果macOS26Tahoe主题功能大升级:可定制图标/高亮文本/文件夹颜色》在整体系统设计方面,macOS26采用了全新的玻璃质感视觉风格,应用于Dock栏、应用图标以及桌面小部件等多个界面... 科技媒体 MACRumors 昨日(6 月 13 日)发布博文,报道称在 macOS 26 Tahoe 中

Oracle修改端口号之后无法启动的解决方案

《Oracle修改端口号之后无法启动的解决方案》Oracle数据库更改端口后出现监听器无法启动的问题确实较为常见,但并非必然发生,这一问题通常源于​​配置错误或环境冲突​​,而非端口修改本身,以下是系... 目录一、问题根源分析​​​二、保姆级解决方案​​​​步骤1:修正监听器配置文件 (listener.

Linux中修改Apache HTTP Server(httpd)默认端口的完整指南

《Linux中修改ApacheHTTPServer(httpd)默认端口的完整指南》ApacheHTTPServer(简称httpd)是Linux系统中最常用的Web服务器之一,本文将详细介绍如何... 目录一、修改 httpd 默认端口的步骤1. 查找 httpd 配置文件路径2. 编辑配置文件3. 保存

idea中project的显示问题及解决

《idea中project的显示问题及解决》:本文主要介绍idea中project的显示问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录idea中project的显示问题清除配置重China编程新生成配置总结idea中project的显示问题新建空的pr

Nginx 413修改上传文件大小限制的方法详解

《Nginx413修改上传文件大小限制的方法详解》在使用Nginx作为Web服务器时,有时会遇到客户端尝试上传大文件时返回​​413RequestEntityTooLarge​​... 目录1. 理解 ​​413 Request Entity Too Large​​ 错误2. 修改 Nginx 配置2.1