利用mklink维护Unity工程的Platform

在使用Unity开发的过程中,切换Platform是非常费时的,这里有一个小技巧,可以让同一份Unity的AssetsProjectSettings同时能打开多个平台的工程。

首先我们知道Unity切换平台时,要重新生成Library文件夹,这个文件夹保存了Unity针对不同平台生成的文件缓存。那如何让同一份AssetsProjectSettings同时能打开多个平台的工程,我们只需要保证每个工程文件夹共用AssetsProjectSettings文件夹,独享Library文件夹即可。mklink命令恰巧可以帮我们完成这个需求,我们只需要新建不同平台的目录,然后把AssetsProjectSettings文件夹使用mklink命令链接到平台目录即可,然后Unity打开这个目录就是一份独立的工程,并且可以同步修改Assets中的资源。

mklink是一个很棒的命令,灵活使用,可以让很多事情简单化。

附上我自己使用的批处理

@echo off

set MAINPRO=MyUnityProject

set /p COPY_PROJECT=请输入link工程的名字: 

mkdir %COPY_PROJECT%\%MAINPRO%
cd %COPY_PROJECT%\%MAINPRO%

mklink /d Assets %~dp0\%MAINPRO%\Assets
mklink /d ProjectSettings %~dp0\%MAINPRO%\ProjectSettings
mklink /d AssetBundles %~dp0\%MAINPRO%\AssetBundles
mklink /d ExportProjects %~dp0\%MAINPRO%\ExportProjects

::这算一个优化
::link出来的工程目录,同时link出来sln和csproj文件,可以只维护一份VS工程,方便调试

mklink %MAINPRO%.sln %~dp0\%MAINPRO%\%MAINPRO%.sln
mklink %MAINPRO%.CSharp.csproj %~dp0\%MAINPRO%\%MAINPRO%.CSharp.csproj
mklink %MAINPRO%.CSharp.Editor.csproj %~dp0\%MAINPRO%\%MAINPRO%.CSharp.Editor.csproj
mklink %MAINPRO%.CSharp.Editor.Plugins.csproj %~dp0\%MAINPRO%\%MAINPRO%.CSharp.Editor.Plugins.csproj
mklink %MAINPRO%.CSharp.Plugins.csproj %~dp0\%MAINPRO%\%MAINPRO%.CSharp.Plugins.csproj
添加新评论