diff --git a/.PhotoshopScript/JSZXPsd2Unity/PSD导出Unity.js b/.PhotoshopScript/JSZXPsd2Unity/PSD导出Unity.js index ba42ab2..8cb3947 100644 --- a/.PhotoshopScript/JSZXPsd2Unity/PSD导出Unity.js +++ b/.PhotoshopScript/JSZXPsd2Unity/PSD导出Unity.js @@ -874,9 +874,21 @@ function s2t(t) { return stringIDToTypeID(t) } } this.baseFolder.remove(); } + this.baseFolder.create(); + + // 导出整个psd作为png参考图 + saveFile = new File(this.baseFolder.fsName + "/" + "__background__.png"); + options = new ExportOptionsSaveForWeb(); + options.format = SaveDocumentType.PNG; + options.PNG8 = false; + options.optimized = true; + options.interlaced = false; + document.exportDocument(saveFile, ExportType.SAVEFORWEB, options); + targets = this.allLayers(document); //snapShotId = Util.takeSnapshot(document); + results = []; for (k = 0, len = targets.length; k < len; k++) { target = targets[k]; diff --git a/.psd2uguiExamples/Sample.psd b/.psd2uguiExamples/Sample.psd index 0b47cba..2e8c8cd 100644 Binary files a/.psd2uguiExamples/Sample.psd and b/.psd2uguiExamples/Sample.psd differ diff --git a/.psd2uguiExamples/Sample/Sample.layout.txt b/.psd2uguiExamples/Sample/Sample.layout.txt new file mode 100644 index 0000000..432115b --- /dev/null +++ b/.psd2uguiExamples/Sample/Sample.layout.txt @@ -0,0 +1 @@ +{"info":{"version":"0.6.1","canvas":{"image":{"w":930,"h":2048},"size":{"w":930,"h":2048},"base":{"x":465,"y":1024}}},"root":{"type":"Root","name":"Sample","elements":[{"type":"Group","elements":[{"type":"Text","text":"神仙","font":"AdobeHeitiStd-Regular","size":35,"color":"E7E3B1","align":"center","x":605,"y":1406,"w":66,"h":33,"opacity":100,"imageName":"shenxian","name":"shenxian"},{"type":"Text","text":"修仙","font":"AdobeHeitiStd-Regular","size":48,"color":"FFFFFF","align":"center","x":151,"y":859,"w":90,"h":44,"opacity":100,"imageName":"xiuxian","name":"xiuxian"},{"type":"Button","elements":[{"type":"Image","image":"shitou1","x":94,"y":1351,"w":112,"h":121,"opacity":100,"imageName":"shitou1","name":"shitou1"},{"type":"Image","image":"shitou3","x":342,"y":1408,"w":79,"h":80,"opacity":100,"imageName":"shitou3","name":"shitou3"},{"type":"Image","image":"shitou2","x":209,"y":1393,"w":108,"h":100,"opacity":100,"imageName":"shitou2","name":"shitou2"},{"type":"Image","image":"Background_1","x":20,"y":360,"w":878,"h":353,"opacity":100,"imageName":"Background_1","name":"Background_1"}],"pivot":"top","imageName":"buttonWZZT","name":"buttonWZZT"},{"type":"Button","elements":[{"type":"Image","image":"bgJingjie","x":76,"y":834,"w":339,"h":92,"opacity":100,"imageName":"bgJingjie","name":"bgJingjie"},{"type":"Image","image":"person","x":546,"y":1299,"w":181,"h":136,"opacity":100,"imageName":"person","name":"person"},{"type":"Image","image":"person","x":437,"y":761,"w":429,"h":330,"opacity":100,"imageName":"person","name":"person"},{"type":"Image","image":"Background_2","x":20,"y":1139,"w":871,"h":354,"opacity":100,"imageName":"Background_2","name":"Background_2"},{"type":"Image","image":"Background_2","x":28,"y":749,"w":871,"h":354,"opacity":100,"imageName":"Background_2","name":"Background_2"}],"pivot":"top","imageName":"buttonXiuLian","name":"buttonXiuLian"},{"type":"Image","image":"title","x":287,"y":140,"w":363,"h":114,"opacity":100,"pivot":"top","imageName":"title","name":"title"},{"type":"Image","image":"bj_mo_2","x":0,"y":0,"w":930,"h":2048,"opacity":100,"imageName":"bj_mo_2","name":"bj_mo_2"}],"full":"True","stretchxy":"True","imageName":"panel","name":"panel"}]}} \ No newline at end of file diff --git a/.psd2uguiExamples/Sample/Sample/Background_1.png b/.psd2uguiExamples/Sample/Sample/Background_1.png new file mode 100644 index 0000000..ae18723 Binary files /dev/null and b/.psd2uguiExamples/Sample/Sample/Background_1.png differ diff --git a/.psd2uguiExamples/Sample/Sample/Background_2.png b/.psd2uguiExamples/Sample/Sample/Background_2.png new file mode 100644 index 0000000..787317c Binary files /dev/null and b/.psd2uguiExamples/Sample/Sample/Background_2.png differ diff --git a/.psd2uguiExamples/Sample/Sample/__background__.png b/.psd2uguiExamples/Sample/Sample/__background__.png new file mode 100644 index 0000000..d17e8db Binary files /dev/null and b/.psd2uguiExamples/Sample/Sample/__background__.png differ diff --git a/.psd2uguiExamples/Sample/Sample/bgJingjie.png b/.psd2uguiExamples/Sample/Sample/bgJingjie.png new file mode 100644 index 0000000..6964fa7 Binary files /dev/null and b/.psd2uguiExamples/Sample/Sample/bgJingjie.png differ diff --git a/.psd2uguiExamples/Sample/Sample/bj_mo_2.png b/.psd2uguiExamples/Sample/Sample/bj_mo_2.png new file mode 100644 index 0000000..d1769b9 Binary files /dev/null and b/.psd2uguiExamples/Sample/Sample/bj_mo_2.png differ diff --git a/.psd2uguiExamples/Sample/Sample/person.png b/.psd2uguiExamples/Sample/Sample/person.png new file mode 100644 index 0000000..26f7fee Binary files /dev/null and b/.psd2uguiExamples/Sample/Sample/person.png differ diff --git a/.psd2uguiExamples/Sample/Sample/shitou1.png b/.psd2uguiExamples/Sample/Sample/shitou1.png new file mode 100644 index 0000000..5576153 Binary files /dev/null and b/.psd2uguiExamples/Sample/Sample/shitou1.png differ diff --git a/.psd2uguiExamples/Sample/Sample/shitou2.png b/.psd2uguiExamples/Sample/Sample/shitou2.png new file mode 100644 index 0000000..e79659a Binary files /dev/null and b/.psd2uguiExamples/Sample/Sample/shitou2.png differ diff --git a/.psd2uguiExamples/Sample/Sample/shitou3.png b/.psd2uguiExamples/Sample/Sample/shitou3.png new file mode 100644 index 0000000..4c3389e Binary files /dev/null and b/.psd2uguiExamples/Sample/Sample/shitou3.png differ diff --git a/.psd2uguiExamples/Sample/Sample/title.png b/.psd2uguiExamples/Sample/Sample/title.png new file mode 100644 index 0000000..7b0cd08 Binary files /dev/null and b/.psd2uguiExamples/Sample/Sample/title.png differ diff --git a/.psd2uguiExamples/ui_image/Background.png b/.psd2uguiExamples/ui_image/Background.png new file mode 100644 index 0000000..a8c824e Binary files /dev/null and b/.psd2uguiExamples/ui_image/Background.png differ diff --git a/.psd2uguiExamples/ui_image/__background__.png b/.psd2uguiExamples/ui_image/__background__.png new file mode 100644 index 0000000..d17e8db Binary files /dev/null and b/.psd2uguiExamples/ui_image/__background__.png differ diff --git a/.psd2uguiExamples/ui_image/bgJingjie.png b/.psd2uguiExamples/ui_image/bgJingjie.png new file mode 100644 index 0000000..7e1692c Binary files /dev/null and b/.psd2uguiExamples/ui_image/bgJingjie.png differ diff --git a/.psd2uguiExamples/ui_image/bj_mo_2.png b/.psd2uguiExamples/ui_image/bj_mo_2.png new file mode 100644 index 0000000..9016667 Binary files /dev/null and b/.psd2uguiExamples/ui_image/bj_mo_2.png differ diff --git a/.psd2uguiExamples/ui_image/person.png b/.psd2uguiExamples/ui_image/person.png new file mode 100644 index 0000000..78ea171 Binary files /dev/null and b/.psd2uguiExamples/ui_image/person.png differ diff --git a/.psd2uguiExamples/ui_image/shitou2.png b/.psd2uguiExamples/ui_image/shitou2.png new file mode 100644 index 0000000..225cbe8 Binary files /dev/null and b/.psd2uguiExamples/ui_image/shitou2.png differ diff --git a/.psd2uguiExamples/ui_image/title.png b/.psd2uguiExamples/ui_image/title.png new file mode 100644 index 0000000..c721aaf Binary files /dev/null and b/.psd2uguiExamples/ui_image/title.png differ diff --git a/Assets/Editor/Helper/CommandHelper.cs b/Assets/Editor/Helper/CommandHelper.cs index 405730b..8212342 100644 --- a/Assets/Editor/Helper/CommandHelper.cs +++ b/Assets/Editor/Helper/CommandHelper.cs @@ -10,16 +10,17 @@ namespace UguiToolkit.Editor { public static class CommandHelper { - public static void CalcRotScale(string srcImgDirPath, string targetImgDirPath, Action callback) + public static void CalcRotScale(string srcImgDirPath, string targetImgDirPath, float distanceDifference, Action callback) { var rotScaleInfoFilePath = Path.GetFullPath(EditorConst.RotScaleInfoFilePath); var rotScaleInfoToolFilePath = Path.GetFullPath(EditorConst.RotScaleInfoToolFilePath); if (File.Exists(rotScaleInfoFilePath)) File.Delete(rotScaleInfoFilePath); - _ = RunCmdAsync(string.Format("{0} -src {1} -target {2} -distance_difference 0.06 -output_path {3}", + _ = RunCmdAsync(string.Format("{0} -src {1} -target {2} -distance_difference {3} -output_path {4}", rotScaleInfoToolFilePath, Path.GetFullPath(srcImgDirPath), Path.GetFullPath(targetImgDirPath), + distanceDifference, Path.GetFullPath(rotScaleInfoFilePath)), (output, error) => { Debug.Log(output); diff --git a/Assets/Editor/Manager/EntityManager.cs b/Assets/Editor/Manager/EntityManager.cs index 9932dca..6bee623 100644 --- a/Assets/Editor/Manager/EntityManager.cs +++ b/Assets/Editor/Manager/EntityManager.cs @@ -130,7 +130,8 @@ namespace UguiToolkit.Editor private void UpdatePanelCache(string srcImgDirPath, string targetImgDirPath) { - CacheScriptObject.CalcRotScaleInfos(srcImgDirPath, targetImgDirPath, (rotScaleInfoMap) => + float distanceDifference = GlobalManager.Instance.setting.distanceDifference; + CacheScriptObject.CalcRotScaleInfos(srcImgDirPath, targetImgDirPath, distanceDifference,(rotScaleInfoMap) => { if (!m_stageManager) return; // 拷贝数据 diff --git a/Assets/Editor/ScriptObject/CacheScriptObject.cs b/Assets/Editor/ScriptObject/CacheScriptObject.cs index 7d812f7..8dfb95b 100644 --- a/Assets/Editor/ScriptObject/CacheScriptObject.cs +++ b/Assets/Editor/ScriptObject/CacheScriptObject.cs @@ -46,10 +46,10 @@ namespace UguiToolkit.Editor } } - public static void CalcRotScaleInfos(string srcImgDirPath, string targetImgDirPath, Action>> callback) + public static void CalcRotScaleInfos(string srcImgDirPath, string targetImgDirPath, float distanceDifference, Action>> callback) { // 执行cmd - CommandHelper.CalcRotScale(srcImgDirPath, targetImgDirPath, (jsonData) => + CommandHelper.CalcRotScale(srcImgDirPath, targetImgDirPath, distanceDifference,(jsonData) => { if (jsonData == null || jsonData.data == null) return; Dictionary> rotScaleInfos = new(); diff --git a/Assets/Editor/ScriptObject/SettingScriptObject.cs b/Assets/Editor/ScriptObject/SettingScriptObject.cs index 813da36..1ff8ae4 100644 --- a/Assets/Editor/ScriptObject/SettingScriptObject.cs +++ b/Assets/Editor/ScriptObject/SettingScriptObject.cs @@ -8,6 +8,8 @@ namespace UguiToolkit.Editor { [LabelText("ui预制体存放的路径"), FolderPath] public string prefabForUIDirPath; + + public float distanceDifference = 0.2f; } } #endif \ No newline at end of file diff --git a/Assets/Editor/Windows/PanelCacheWindow.cs b/Assets/Editor/Windows/PanelCacheWindow.cs index b05842e..3d00735 100644 --- a/Assets/Editor/Windows/PanelCacheWindow.cs +++ b/Assets/Editor/Windows/PanelCacheWindow.cs @@ -35,7 +35,8 @@ namespace UguiToolkit.Editor.Windows if (m_panelCache == null) { var targetImgDirPath = PanelCache.GetTargetImgDirPath(m_layoutInfoFilePath); - CacheScriptObject.CalcRotScaleInfos(m_srcImgDirPath, targetImgDirPath, (rotScaleInfos) => + float distanceDifference = GlobalManager.Instance.setting.distanceDifference; + CacheScriptObject.CalcRotScaleInfos(m_srcImgDirPath, targetImgDirPath, distanceDifference, (rotScaleInfos) => { if (!stageManager) return;