Sine.

Unity插件开发规范

梳理 Unity 插件的目录结构、Package 配置、依赖管理、README 内容和授权协议建议。

项目目录结构

开发中使用以下目录架构

📁 Assets(项目根目录)
└── 📁 SineStudio (工作室名称)
	└── 📁 PluginsName(插件名称)
		├── 📁 ......
		├── 📦 README.md
		└── 📦 Licence

直接选中导出成Package

开源项目

开源项目仓库不包含UnityProject,仅包含插件部分.

📁 PluginsName(插件名称,以插件名称作为仓库名称)
├── 📁 ......
├── 📦 README.md
└── 📦 Licenc

Unity Package配置文件

是否使用Unity Package配置文件,取决于插件是否需要放在Package中

一般情况下

  • 资产类插件不需要使用这个配置文件
  • 代码类插件建议使用这个配置文件

示例

{
  "name": "xyz.aiferu.aiferuarttools",       
  "displayName": "Aiferu Art Tools",          
  "version": "1.0.0",    
  "unity": "2022.3",  
  "license": "MIT",  
  "description": "ArtToolset",
  "documentationUrl": "",
  "author": {
    "name": "Aiferu",
    "email": "",
    "url": "https://www.aiferu.xyz"
  }
    "dependencies": {
    "com.unity.textmeshpro": "3.0.6",
    "com.other.dependency": "1.2.0"
  }
}

依赖相关

依赖必须是:

  • 官方 UPM 包(Unity Registry)
  • 或 Git URL 包
  • 或 Scoped Registry 包

ReadMe内容

ReadMe中的内容参考Unity商店页面

概述
	描述他是干嘛的
SRP兼容性
	Unity版本   |内置渲染管线|通用渲染管线|高清渲染管线
	2022.3.56f1     兼容        兼容       兼容
	2019.4.16f1     兼容        兼容      不兼容
描述
	优点
	● A
	● B
	● C
	支持的功能
	✔️ A
	✔️ B
	✔️ C
	EULA(商用插件才需要)

参考https://assetstore.unity.com/packages/tools/utilities/hot-reload-edit-code-without-compiling-254358

EULA最终用户许可协议

Unity 插件通常建议:
✔ GitHub:MIT(代码)
✔ 商业插件:EULA(使用限制)
✔ Asset Store:EULA + Unity平台条款

公开演示资产存放在一个单独的Git仓库中,方便代码引用