keyle_xiao 转载 https://zhuanlan.zhihu.com/p/591864923 一、简介 本文主要盘点些GitHub上的一些关于unity的不错的库,有了这些库,大家可以少造不少轮子,即便造也可以有所参考,当然那些非常出名的库大家都了解的就不列出了。本文也会持续跟进完善。 除了下面列出的库,大家还可以看看每个库作者下的其他库,当一个作者的1个库很有用的时候,往往他名下还有其他很多有用的库。 二、编辑器工具库 unity-editor-icon、drawgraph等github地址。https://github.com/nukadelic; 反向资源引用查找工具。https://github.com/yasirkula/UnityAssetUsageDetector; 工具扩展属性,类似于odin的特性。https://github.com/dbrizov/NaughtyAttributes; xnode:node节点编程工具。https://github.com/Siccity/xNode; 粒子效果支持预览。https://github.com/akof1314/UnityParticleSystemPreview; unity快速读取展示xlsx表单工具。https://github.com/kimsama/Unity-QuickSheet; 编辑器扩展之可搜索的枚举。https://github.com/roboryantron/UnityEditorJunkie; unity工具菜单扩展,运行暂停那个菜单。https://github.com/marijnz/unity-toolbar-extender; 仅支持windows平台的增量编译工具(不清楚能否提高日常效率)。https://github.com/SaladLab/Unity3D.IncrementalCompiler; shader剔除库,加快打包速度。https://github.com/SixWays/UnityShaderStripper; 处理纹理的小工具(可以把多张纹理融合,思路也可以用来处理别的纹理)。https://github.com/andydbc/unity-texture-packer; 工具的属性,类似与odin,但比odin多一些特性。https://github.com/arimger/Unity-Editor-Toolbox; 配置工具,需程序写好类,策划就可以拿来配置,不过没有excel方便。https://github.com/KeyleXiao/UNITY3D-DATA-VIEWER; unity调用windows的窗口等。https://github.com/Meragon/Unity-WinForms; texture2d绘制扩展。https://github.com/ProtoTurtle/UnityBitmapDrawing; 项目代码等静态分析工具。https://github.com/Unity-Technologies/ProjectAuditor; 有一个大型的工具收集库。https://github.com/crazyshader/GameDev; 一个批量重命名game对象的工具,似乎有点用。https://github.com/redbluegames/unity-mulligan-renamer; 又一份unity-icon集合。https://github.com/halak/unity-editor-icons; 又一个node -editor。https://github.com/Seneral/Node_Editor_Framework; 播放、暂停的toolabar扩展,加入了调整时间比例等。https://github.com/smkplus/CustomToolbar; 数组显示扩展。https://github.com/garettbass/UnityExtensions.ArrayDrawer; 查找missing引用的工具。https://github.com/liortal53/MissingReferencesUnity; 工具扩展。https://github.com/Thundernerd/Unity3D-ExtendedEditor; 节点编辑器,目前发现最好的。https://github.com/alelievr/NodeGraphProcessor; 6边形格子编辑器。https://github.com/RoryDungan/HexTiles; 高端工具集,uv、lightmap、mat cleaner。https://github.com/lujian101/UnityToolDist; 可以提供程序集编译的时间线(查看编译效果的同时,有类似编辑器效果需求的也可以参考)。https://github.com/needle-tools/compilation-visualizer; 变体收集剔除工具,GitHub - crossous/SocoTools: Crossous’s unity tools,currently contains shader variant stripper tools; 引用查找工具,https://github.com/yasirkula/UnityAssetUsageDetector ; 三、运行时调试工具 运行时 unity层级视图及inspector。https://github.com/yasirkula/UnityRuntimeInspector; unityexporer:可能类似与runtimeinspector。https://github.com/sinai-dev/UnityExplorer; 运行时transoform。https://github.com/HiddenMonk/Unity3DRuntimeTransformGizmo; unity代码钩子。https://github.com/HearthSim/UnityHook; 动态日志,检视版,层级视图,tab页签等。https://assetstore.unity.com/packages/tools/gui/dynamic-panels-114126; 运行时debug代码工具,具体还不太了解。https://github.com/NeighTools/UnityDoorstop; 运行时node图(行为树可能会用到)。https://github.com/cemuka/UnityRuntimeNodeEditor; 运行时预览纹理(评价还可以,还不确定能干啥,好像是可以把game对象拍成纹理展示)。https://github.com/yasirkula/UnityRuntimePreviewGenerator; 运行时工具,和前面的略有不同。https://github.com/ManlyMarco/RuntimeUnityEditor; 可以运行时看mesh 线框。https://github.com/miguel12345/UnityWireframeRenderer; 工具扩展之运行时imgui。https://github.com/realgamessoftware/dear-imgui-unity; 绘制特定形状的api。https://github.com/miguel12345/UnityShapes; 运行时场景gizmoz。https://github.com/yasirkula/UnityRuntimeSceneGizmo。 monohook库,可以重定向C#代码库,运行时更改一些方法的执行逻辑。https://github.com/Misaka-Mikoto-Tech/MonoHook; 动画调试工具 GitHub - SolarianZ/UnityPlayableGraphMonitorTool: A tool for monitoring the PlayableGraph in real-time within the Unity Editor; URP Debug Views | Utilities Tools | Unity Asset StoreURP调试插件; RShell调试插件:其乐陶陶:Unity开发工具之RShell调试器 。 四、UI相关 sprintUI组件:饼图、折线图等。https://github.com/spr1ngd/UnityCodes; 300多种ui扩展,不确定ugui是否适用。https://github.com/toly1994328/FlutterUnit; 装备表现及优化。https://github.com/zouchunyi/UnityAvater; 翻书效果。https://github.com/Dandarawy/UnityBookPageCurl; 可视化图标插件。https://github.com/XCharts-Team/XCharts; ui切换效果库。https://github.com/Haruma-K/UnityScreenNavigator; unity内置的网页窗口。https://github.com/search?p=41&q=unity&type=Repositories; ui渐变支持。https://github.com/azixMcAze/Unity-UIGradient; 比较另类的循环滚动列表。https://github.com/setchi/FancyScrollView; 为ugui增加的timeline轨道。https://github.com/Haruma-K/UnityUIPlayables; 解码并使用gif。https://github.com/WestHillApps/UniGif; ui图标圆角化等效果。https://github.com/kirevdokimov/Unity-UI-Rounded-Corners; 图片裁剪器。https://github.com/yasirkula/UnityImageCropper; 可以把gameplay快速转化gif播放,但库比较老了。https://github.com/Chman/Moments; 1个drawcall绘制所有血条。https://github.com/sinbad/UnityInstancedHealthBars; 一个ui、屏幕高斯模糊库。https://github.com/PavelDoGreat/Super-Blur; ui转轮实现。https://github.com/pavelkomiagin/unity3d-fortune-wheel; ugui扩展,主要是镜像效果。https://github.com/L-Lawliet/UGUIExtend; runtime dialog工具。https://github.com/YarnSpinnerTool/YarnSpinner-Unity; ugui的扩展。https://github.com/eral/UnityUIExtention; ui扩展组件。https://github.com/LingJiJian/uLui; ui形状绘制。https://github.com/thisotherthing/ui-shapes-kit; ugui dragand drop。https://github.com/Xander93/unity3d-draganddrop; 五、渲染 丰富的shader效果。https://github.com/QianMo/Awesome-Unity-Shader; 丰富的shader效果。https://github.com/WorldOfZero/UnityVisualizations; 几何着色器绘制的草。https://github.com/IronWarrior/UnityGrassGeometryShader; 高品质后处理库。https://github.com/QianMo/X-PostProcessing-Library; 给力的水效果。https://github.com/AsehesL/UnityWaveEquation; 毛发shader。https://github.com/hecomi/UnityFurURP#fin; 深度图相关的shader效果。https://github.com/chenjd/UnitySpecialEffectWithDepth; upr屏幕空间反射。https://github.com/ColinLeung-NiloCat/UnityURP-MobileScreenSpacePlanarReflection; 不错的涂鸦库。https://github.com/EsProgram/InkPainter; 用skinmesh做的炫酷特效。https://github.com/keijiro/Skinner; 技术美术学习课程。https://github.com/ipud2/Unity-Basic-Shader; 大量给力的shader特效作者。https://github.com/keijiro; 大海、湖泊效果。https://github.com/techizgit/UnityPlayground; 类似涂鸦,但功能更改丰富,还有涂鸦流动等效果。https://github.com/slipster216/VertexPaint; 有点东西的shader基础实践案例。https://github.com/csdjk/LearnUnityShader; 大气散射的案例。https://github.com/SlightlyMad/AtmosphericScattering; 光线步进,还不太了解,和光追有点关系。https://github.com/hecomi/uRaymarching; 大海系统。https://github.com/Scrawk/Ceto; 可以把shadertoy(好像是一个在线的编辑shader工具)转化为hlsl/cgshader。https://github.com/smkplus/ShaderMan; 类似于imposter插件,可以批量烘焙(具体等使用时在查看)。https://github.com/xraxra/IMP; 体积雾。https://github.com/ArthurBrussee/Vapor; gpu加速的粒子系统。https://github.com/keijiro/KvantSpray; 声波特效。https://github.com/keijiro/SonarFx; 比较老的玻璃效果的实现。https://github.com/andydbc/unity-frosted-glass; 会动的草,但时间很老了。https://github.com/keijiro/KvantGrass; low-poly水效果。https://github.com/danielzeller/Lowpoly-Water-Unity; 体积光,实现比较老。https://github.com/MaxwellGengYF/Unity-Volumetric-Light; 体积渲染。https://github.com/hecomi/UnityVolumeRendering; 非写实水效果。https://github.com/danielshervheim/unity-stylized-water; gpu+几何着色器生成海量草。https://github.com/chenjd/Realistic-Real-Time-Grass-Rendering-With-Unity; unity折射shader。https://github.com/keijiro/UnityRefractionShader; 一群线,有点特殊的线渲染。https://github.com/keijiro/KvantSwarm; taa抗锯齿for urp。https://github.com/sienaiwun/TAA_Unity_URP; 流体库。https://github.com/Scrawk/PBD-Fluid-in-Unity; 用projector实现阴影,说是兼顾效果与效率,适合与多角色的阴影。https://github.com/xieliujian/UnityDemo_ProjectorShadow; gpu instance+boids+animationbaker。https://github.com/kitasenjudesign/UnityGpuInstancing; 大量shader效果,不过略显粗糙。https://github.com/knapeczadam/Unity-Shaders; 天空盒扩展。https://github.com/keijiro/SkyboxPlus; 动态体积gi系统。https://github.com/sonicether/SEGI; 体积光。https://github.com/robcupisz/LightShafts; 平面阴影。https://github.com/xieliujian/UnityDemo_PlanarShadow; 屏幕空间雾效处理。https://github.com/OCASM/SSMS; mesh体素化。https://github.com/Scrawk/Mesh-Voxelization; 雨滴效果。https://github.com/yumayanagisawa/Unity-Raindrops; mesh变形shader。https://github.com/keijiro/NoiseBall; 鬼灭之刃的shader。https://github.com/Aerthas/UNITY-Arc-system-Works-Shader; 中阶shader教程。https://github.com/JiepengTan/FishManShaderTutorial; noise shader库。https://github.com/keijiro/NoiseShader; 适用于初学者的3d shader。https://github.com/lettier/3d-game-shaders-for-beginners; 卡通渲染shader。https://github.com/Kink3d/kShading; 两点间绘制电流(buitin)。https://github.com/keijiro/SpektrLightning; hsv shader控制颜色。https://github.com/greggman/hsva-unity; 下雨效果:https://assetstore.unity.com/packages/vfx/particles/environment/rain-maker-2d-and-3d-rain-particle-system-for-unity-34938。 六、数学、物理、数据结构、算法 强化的数学库。https://github.com/FreyaHolmer/Mathfs; 水浮力效果模拟。https://github.com/dbrizov/NaughtyWaterBuoyancy; 3d sat碰撞库。https://github.com/jeffvella/UnityNativeCollision; 子弹碰撞库。https://github.com/Phong13/BulletSharpUnity3d; 数学数据分析。https://github.com/zezba9000/UnityMathReference; 动态避障库rvo。https://github.com/warmtrue/RVO2-Unity; navmesh数据导出工具。https://github.com/LingJiJian/NavmeshExport; 四叉树碰撞过检测项目。https://github.com/cr4yz/Unity3d-QuadTree-Collision-Detection; unity的一些常用库,如数学、debug、物理等。https://github.com/TheAllenChou/unity-cj-lib; 八叉树。https://github.com/Nition/UnityOctree; 寻路算法案例。https://github.com/dbrizov/Unity-PathFindingAlgorithms; gpu集群。https://github.com/Shinao/Unity-GPU-Boids; 神经网络实现。https://github.com/Blueteak/Unity-Neural-Network; 双端寻路(C++)。https://github.com/recastnavigation/recastnavigation; 基于DOTS的RVO动态避障库。 GitHub - Nebukam/com.nebukam.orca: ORCA / RVO2 Implementation for Unity — Multithreaded using the job system. 七、程序化生成 程序化生成地图。https://github.com/SebLague/Procedural-Landmass-Generation; 道路生成仓库。https://github.com/MicroGSD/RoadArchitect; 程序化生成工具集。https://github.com/Syomus/ProceduralToolkit; 关卡设计工具。https://github.com/sabresaurus/SabreCSG; 6边形格子生成器。https://github.com/Amaranthos/UnityHexGrid; 地下城生成器。https://github.com/DMeville/Unity3d-Dungeon-Generator; 3d笔刷 tile3d。https://github.com/NoelFB/UnityTile3D; 无限生成地图。https://github.com/marian42/wavefunctioncollapse; 关卡生成及建模工具。https://github.com/LogicalError/realtime-CSG-for-unity; 程序化生成地图工具。https://github.com/jongallant/DungeonGenerator; 多边形地图生成,目前不知道哪里用。https://github.com/staff0rd/polygon-map-unity; 程序化控制水、地形、音效。https://github.com/konsfik/Unity3D-Coding-Examples; 地形图算法。https://github.com/Scrawk/Terrain-Topology-Algorithms; 地图生成器。https://github.com/tangrams/tangram-unity; 2d地图生成器(待定)。https://github.com/selfsame/unity-wave-function-collapse; 八、原生交互 原生相机。https://github.com/yasirkula/UnityNativeCamera; android原生权限请求。https://github.com/yasirkula/UnityAndroidRuntimePermissions; 原生工具集。https://github.com/ryanw3bb/unity-native-toolkit。 九、优化 unity内存分析器。https://github.com/pschraut/UnityHeapExplorer; 自动生成模型的lod。https://github.com/Unity-Technologies/AutoLOD; sprite优化,只记录差异化的数据,从而减少大小。https://github.com/Elringus/SpriteDicing; memoryprofiler的扩展。https://github.com/robertoardila/support-unity-memoryprofiler; 性能分析的工具,可以学习下实现。https://github.com/GameBuildingBlocks/PerfAssist; 可以捕获Reload程序集时的帧数据,从而分析优化reload时间。https://github.com/Unity-Technologies/com.unity.editoriterationprofiler。 十、unity类扩展 一些unity类的小扩展,如rectransform、random等的扩展。https://github.com/nubick/unity-utils; 可以传参的unityevent。https://github.com/Thundernerd/Unity3D-ExtendedEvent; utility库。https://github.com/TobiasWehrum/unity-utilities。 十一、资源管理 清理未使用资源的工具。https://github.com/tsubaki/UnityAssetCleaner; 资源引用管理套件。https://github.com/akof1314/UnityAssetDanshari; 资源规范库,管理命名,资源类型查找等,还未验证过。https://github.com/stillwwater/UnityStyleGuide。 十二、整体框架或全面的库 看起来还不错的开源框架。https://github.com/GaoKaiHaHa/MyUnityFrameWork; 给力的工具集,包含项目大量好用的代码。https://github.com/michidk/Unity-Script-Collection; 丰富的扩展功能。https://github.com/chromealex/Unity3d.UI.Windows; 总结了大量的库及工具,和之前的内容略有重复,不过看起来很全面。https://github.com/StefanoCecere/awesome-opensource-unity。 总结了大量游戏相关的库: https://github.com/killop/anything_about_game?tab=readme-ov-file#%E4%B8%AD%E6%96%87。 十三、有趣的Gameplay效果 穿越的入口:一扇可以看到另已世界的门。https://github.com/SebLague/Portals; 破碎效果。https://github.com/ElasticSea/unity-fracture; 强大的变形库。https://github.com/keenanwoodall/Deform; 破坏效果。https://github.com/OskarSigvardsson/unity-delaunay; 屏幕空间去除部分图形展示。https://github.com/hecomi/UnityScreenSpaceBoolean; 换装案例。https://github.com/xieliujian/UnityDemo_Avatar; 控制移动的小工具,懒的写可以用。https://github.com/Olezen/UnitySourceMovement; 相机震动效果可参考。https://github.com/andersonaddo/EZ-Camera-Shake-Unity; 普通一点的破碎效果实现。https://github.com/williambl/unity-destruction; 手势工具集。https://github.com/prime31/TouchKit; easing动画库。https://github.com/noisecrime/Unity-EasingLibraryVisualisation; 时间回溯支持。https://github.com/SitronX/UnityTimeRewinder; 直升机控制。https://github.com/suncube/Base-Helicopter-Controller; 3d mesh切割实践。https://github.com/hugoscurti/mesh-cutter。 十四、其他库 可以把绿色背景替换为别的背景,说不定回用上。https://github.com/otdavies/UnityChromakey; 可调整unity工具主题。https://github.com/zios/unity-themes; 可以捕捉人脸等信息。https://github.com/luxonis/depthai-unity; 代码混淆工具。https://github.com/DrFlower/Unity-Obfuscator; 无需复制资源即可clone项目,还未了解如何做到的。https://github.com/hwaet/UnityProjectCloner; unity里看markdown工具。https://github.com/gwaredd/UnityMarkdownViewer; 启动unity项目的扩展工具。https://github.com/unitycoder/UnityLauncherPro; unity的gpuinstance动画。https://github.com/piti6/UnityGpuInstancedAnimation; 解释执行c#语句。https://github.com/deniszykov/csharp-eval-unity3d; 对象池系统,可以学习学习,还不太了解做了什么。https://github.com/prime31/RecyclerKit; 把unityapp做成android壁纸。https://github.com/PavelDoGreat/Unity-Android-Live-Wallpaper; 面试题总结。https://github.com/Lafree317/Unity-InterviewQuestion; 解释执行C# code(REPL)。https://github.com/search?p=99&q=unity&type=Repositories; ecs实现navmesh。https://github.com/zulfajuniadi/unity-ecs-navmesh; unity and python交互的网络连接库。https://github.com/off99555/Unity3D-Python-Communication; 局部传递视频流的组件。https://github.com/keijiro/KlakNDI; 破解unity资源的方案。https://github.com/imadr/Unity-game-hacking; dnSpy:(卧龙推荐)可以用来调试编辑.net和unity程序集(即使没有源码)。https://github.com/dnSpy/dnSpy。