mirror of
https://github.com/wechat-miniprogram/minigame-tuanjie-transform-sdk.git
synced 2025-11-12 19:25:55 +08:00
Auto-publish.
This commit is contained in:
parent
85f060e303
commit
116107bdae
136
Editor/BuildProfile/WeixinMiniGameSettings.cs
Normal file
136
Editor/BuildProfile/WeixinMiniGameSettings.cs
Normal file
@ -0,0 +1,136 @@
|
||||
#if TUANJIE_1_4_OR_NEWER
|
||||
using System;
|
||||
using System.IO;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.Reflection;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using UnityEditor.Build.Profile;
|
||||
|
||||
namespace WeChatWASM
|
||||
{
|
||||
public class WeixinMiniGameSettings : MiniGameSettings
|
||||
{
|
||||
public WXProjectConf ProjectConf;
|
||||
public SDKOptions SDKOptions;
|
||||
public CompileOptions CompileOptions;
|
||||
public CompressTexture CompressTexture;
|
||||
public List<string> PlayerPrefsKeys = new List<string>();
|
||||
public FontOptions FontOptions;
|
||||
|
||||
[SerializeField] public bool m_AutomaticFillInstantGame = true;
|
||||
|
||||
public WeixinMiniGameSettings(MiniGameSettingsEditor editor) : base(editor)
|
||||
{
|
||||
}
|
||||
|
||||
public bool PreprocessBuild(BuildProfile buildProfile, BuildOptions options)
|
||||
{
|
||||
bool result = true;
|
||||
if (!string.IsNullOrEmpty(buildProfile.buildPath))
|
||||
{
|
||||
this.ProjectConf.DST = buildProfile.buildPath;
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogError("Build Path is empty!");
|
||||
result = false;
|
||||
}
|
||||
this.CompileOptions.DevelopBuild = buildProfile.platformSettings.development;
|
||||
this.CompileOptions.AutoProfile = buildProfile.platformSettings.connectProfiler;
|
||||
|
||||
this.CompileOptions.CleanBuild = ((int)options & (int)BuildOptions.CleanBuildCache) != 0;
|
||||
this.CompileOptions.ScriptOnly = ((int)options & (int)BuildOptions.BuildScriptsOnly) != 0;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
internal void FillAutoStreamingAutomatically()
|
||||
{
|
||||
// Instant Game
|
||||
if (WXConvertCore.IsInstantGameAutoStreaming())
|
||||
{
|
||||
if (m_AutomaticFillInstantGame)
|
||||
{
|
||||
ProjectConf.CDN = WXConvertCore.GetInstantGameAutoStreamingCDN();
|
||||
if (!ProjectConf.bundlePathIdentifier.Contains("CUS/CustomAB;"))
|
||||
{
|
||||
ProjectConf.bundlePathIdentifier = "CUS/CustomAB;" + ProjectConf.bundlePathIdentifier;
|
||||
}
|
||||
if (!ProjectConf.bundlePathIdentifier.Contains("AS;"))
|
||||
{
|
||||
ProjectConf.bundlePathIdentifier = "AS;" + ProjectConf.bundlePathIdentifier;
|
||||
}
|
||||
ProjectConf.dataFileSubPrefix = "CUS";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void AutoStreamingLoad()
|
||||
{
|
||||
if (!WXConvertCore.IsInstantGameAutoStreaming())
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
// Generate
|
||||
Type asTextureUIType = Type.GetType("Unity.AutoStreaming.ASTextureUI,Unity.InstantGame.Editor");
|
||||
if (asTextureUIType == null)
|
||||
{
|
||||
Debug.LogError("Type 'Unity.AutoStreaming.ASTextureUI' not found. ");
|
||||
return;
|
||||
}
|
||||
MethodInfo generateTextureAssetBundlesMethod = asTextureUIType.GetMethod("GenerateTextureAssetBundles", BindingFlags.NonPublic | BindingFlags.Static);
|
||||
generateTextureAssetBundlesMethod?.Invoke(null, new object[] { false });
|
||||
|
||||
// reflection to get WXConvertCore.FirstBundlePath
|
||||
String FirstBundlePath = "";
|
||||
var type = Type.GetType("WeChatWASM.WXConvertCore,WxEditor");
|
||||
if (type == null)
|
||||
{
|
||||
Debug.LogError("Type 'WeChatWASM.WXConvertCore,WxEditor' not found. ");
|
||||
return;
|
||||
}
|
||||
FieldInfo fieldInfo = type.GetField("FirstBundlePath", BindingFlags.Public | BindingFlags.Static);
|
||||
if (fieldInfo != null)
|
||||
{
|
||||
FirstBundlePath = fieldInfo.GetValue(null) as String;
|
||||
}
|
||||
|
||||
if (!string.IsNullOrEmpty(FirstBundlePath) && File.Exists(FirstBundlePath))
|
||||
{
|
||||
Type igBuildPipelineType = Type.GetType("Unity.InstantGame.IGBuildPipeline,Unity.InstantGame.Editor");
|
||||
if (igBuildPipelineType == null)
|
||||
{
|
||||
Debug.LogError("Type 'Unity.InstantGame.IGBuildPipeline' not found. ");
|
||||
return;
|
||||
}
|
||||
MethodInfo uploadMethod = igBuildPipelineType.GetMethod("UploadWeChatDataFile", BindingFlags.Public | BindingFlags.Static);
|
||||
|
||||
bool returnValue = false;
|
||||
if (uploadMethod != null)
|
||||
{
|
||||
object[] parameters = new object[] { FirstBundlePath };
|
||||
object result = uploadMethod.Invoke(null, parameters);
|
||||
returnValue = Convert.ToBoolean(result);
|
||||
}
|
||||
|
||||
if (returnValue)
|
||||
{
|
||||
Debug.Log("转换完成并成功上传首包资源");
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogError("首包资源上传失败,请检查网络以及Auto Streaming配置是否正确。");
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogError("转换失败");
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
#endif
|
||||
7
Editor/BuildProfile/WeixinMiniGameSettings.cs.meta
Normal file
7
Editor/BuildProfile/WeixinMiniGameSettings.cs.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 35f480205054085db3ceb2be04b7e97a
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
586
Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs
Normal file
586
Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs
Normal file
@ -0,0 +1,586 @@
|
||||
#if TUANJIE_1_4_OR_NEWER
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using System.Reflection;
|
||||
using UnityEditor;
|
||||
using UnityEditor.Build.Profile;
|
||||
using UnityEngine;
|
||||
using static WeChatWASM.WXConvertCore;
|
||||
|
||||
namespace WeChatWASM
|
||||
{
|
||||
public class WeixinMiniGameSettingsEditor : MiniGameSettingsEditor
|
||||
{
|
||||
private Vector2 scrollRoot;
|
||||
private bool foldBaseInfo = true;
|
||||
private bool foldLoadingConfig = true;
|
||||
private bool foldSDKOptions = true;
|
||||
private bool foldDebugOptions = true;
|
||||
|
||||
private bool foldInstantGame = false;
|
||||
|
||||
private bool foldFontOptions = false;
|
||||
private Dictionary<string, string> formInputData = new Dictionary<string, string>();
|
||||
private Dictionary<string, int> formIntPopupData = new Dictionary<string, int>();
|
||||
private Dictionary<string, bool> formCheckboxData = new Dictionary<string, bool>();
|
||||
public Texture tex;
|
||||
|
||||
public override void OnMiniGameSettingsIMGUI(SerializedObject serializedObject, SerializedProperty miniGameProperty)
|
||||
{
|
||||
OnSettingsGUI(serializedObject, miniGameProperty);
|
||||
}
|
||||
|
||||
public void OnSettingsGUI(SerializedObject serializedObject, SerializedProperty miniGameProperty)
|
||||
{
|
||||
loadData(serializedObject, miniGameProperty);
|
||||
|
||||
scrollRoot = EditorGUILayout.BeginScrollView(scrollRoot);
|
||||
|
||||
GUIStyle linkStyle = new GUIStyle(GUI.skin.label);
|
||||
linkStyle.normal.textColor = Color.yellow;
|
||||
linkStyle.hover.textColor = Color.yellow;
|
||||
linkStyle.stretchWidth = false;
|
||||
linkStyle.alignment = TextAnchor.UpperLeft;
|
||||
linkStyle.wordWrap = true;
|
||||
|
||||
foldBaseInfo = EditorGUILayout.Foldout(foldBaseInfo, "基本信息");
|
||||
if (foldBaseInfo)
|
||||
{
|
||||
EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true));
|
||||
|
||||
formInput("appid", "游戏AppID");
|
||||
formInput("cdn", "游戏资源CDN");
|
||||
formInput("projectName", "小游戏项目名");
|
||||
formIntPopup("orientation", "游戏方向", new[] { "Portrait", "Landscape", "LandscapeLeft", "LandscapeRight" }, new[] { 0, 1, 2, 3 });
|
||||
formInput("memorySize", "UnityHeap预留内存(?)", "单位MB,预分配内存值,超休闲游戏256/中轻度496/重度游戏768,需预估游戏最大UnityHeap值以防止内存自动扩容带来的峰值尖刺。预估方法请查看GIT文档《优化Unity WebGL的内存》");
|
||||
|
||||
EditorGUILayout.EndVertical();
|
||||
}
|
||||
|
||||
foldLoadingConfig = EditorGUILayout.Foldout(foldLoadingConfig, "启动Loading配置");
|
||||
if (foldLoadingConfig)
|
||||
{
|
||||
EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true));
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
string targetBg = "bgImageSrc";
|
||||
EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10));
|
||||
tex = (Texture)EditorGUILayout.ObjectField("启动背景图/视频封面", tex, typeof(Texture2D), false);
|
||||
var currentBgSrc = AssetDatabase.GetAssetPath(tex);
|
||||
if (!string.IsNullOrEmpty(currentBgSrc) && currentBgSrc != formInputData[targetBg])
|
||||
{
|
||||
formInputData[targetBg] = currentBgSrc;
|
||||
saveData(serializedObject, miniGameProperty);
|
||||
}
|
||||
GUILayout.EndHorizontal();
|
||||
|
||||
formInput("videoUrl", "加载阶段视频URL");
|
||||
formIntPopup("assetLoadType", "首包资源加载方式", new[] { "CDN", "小游戏包内" }, new[] { 0, 1 });
|
||||
formCheckbox("compressDataPackage", "压缩首包资源(?)", "将首包资源Brotli压缩, 降低资源大小. 注意: 首次启动耗时可能会增加200ms, 仅推荐使用小游戏分包加载时节省包体大小使用");
|
||||
formInput("bundleExcludeExtensions", "不自动缓存文件类型(?)", "(使用;分割)当请求url包含资源'cdn+StreamingAssets'时会自动缓存,但StreamingAssets目录下不是所有文件都需缓存,此选项配置不需要自动缓存的文件拓展名。默认值json");
|
||||
formInput("bundleHashLength", "Bundle名称Hash长度(?)", "自定义Bundle文件名中hash部分长度,默认值32,用于缓存控制。");
|
||||
formInput("preloadFiles", "预下载文件列表(?)", "使用;间隔,支持模糊匹配");
|
||||
|
||||
EditorGUILayout.EndVertical();
|
||||
}
|
||||
|
||||
foldSDKOptions = EditorGUILayout.Foldout(foldSDKOptions, "SDK功能选项");
|
||||
if (foldSDKOptions)
|
||||
{
|
||||
EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true));
|
||||
|
||||
formCheckbox("useFriendRelation", "使用好友关系链");
|
||||
formCheckbox("useMiniGameChat", "使用社交组件");
|
||||
formCheckbox("preloadWXFont", "预加载微信字体(?)", "在game.js执行开始时预载微信系统字体,运行期间可使用WX.GetWXFont获取微信字体");
|
||||
formCheckbox("disableMultiTouch", "禁止多点触控");
|
||||
|
||||
EditorGUILayout.EndVertical();
|
||||
}
|
||||
|
||||
foldDebugOptions = EditorGUILayout.Foldout(foldDebugOptions, "调试编译选项");
|
||||
if (foldDebugOptions)
|
||||
{
|
||||
EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true));
|
||||
// formCheckbox("developBuild", "Development Build");
|
||||
formCheckbox("autoProfile", "Auto connect Profiler");
|
||||
formCheckbox("scriptOnly", "Scripts Only Build");
|
||||
#if TUANJIE_2022_3_OR_NEWER
|
||||
// TODO: if overwrite by OverwritePlayerSettings
|
||||
bool UseIL2CPP = PlayerSettings.GetScriptingBackend(BuildTargetGroup.WeixinMiniGame) == ScriptingImplementation.IL2CPP;
|
||||
#else
|
||||
bool UseIL2CPP = true;
|
||||
#endif
|
||||
formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项,勾选时使用OptimizeSize(默认推荐),生成代码小15%左右,取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed,在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP);
|
||||
formCheckbox("profilingFuncs", "Profiling Funcs");
|
||||
formCheckbox("profilingMemory", "Profiling Memory");
|
||||
|
||||
formCheckbox("webgl2", "WebGL2.0(beta)");
|
||||
formCheckbox("iOSPerformancePlus", "iOSPerformancePlus(?)", "是否使用iOS高性能+渲染方案,有助于提升渲染兼容性、降低WebContent进程内存");
|
||||
formCheckbox("EmscriptenGLX", "EmscriptenGLX(?)", "是否使用EmscriptenGLX渲染方案");
|
||||
formCheckbox("iOSMetal", "iOSMetal(?)", "是否使用iOSMetal渲染方案,需要开启iOS高性能+模式,有助于提升运行性能,降低iOS功耗");
|
||||
formCheckbox("deleteStreamingAssets", "Clear Streaming Assets");
|
||||
formCheckbox("cleanBuild", "Clean WebGL Build");
|
||||
// formCheckbox("cleanCloudDev", "Clean Cloud Dev");
|
||||
formCheckbox("fbslim", "首包资源优化(?)", "导出时自动清理UnityEditor默认打包但游戏项目从未使用的资源,瘦身首包资源体积。(团结引擎已无需开启该能力)", UnityUtil.GetEngineVersion() > 0, (res) =>
|
||||
{
|
||||
var fbWin = EditorWindow.GetWindow(typeof(WXFbSettingWindow), false, "首包资源优化配置面板", true);
|
||||
fbWin.minSize = new Vector2(680, 350);
|
||||
fbWin.Show();
|
||||
});
|
||||
formCheckbox("autoAdaptScreen", "自适应屏幕尺寸(?)", "移动端旋转屏幕和PC端拉伸窗口时,自动调整画布尺寸");
|
||||
formCheckbox("showMonitorSuggestModal", "显示优化建议弹窗");
|
||||
formCheckbox("enableProfileStats", "显示性能面板");
|
||||
formCheckbox("enableRenderAnalysis", "显示渲染日志(dev only)");
|
||||
|
||||
{
|
||||
formCheckbox("brotliMT", "brotli多线程压缩(?)", "开启多线程压缩可以提高出包速度,但会降低压缩率。如若不使用wasm代码分包请勿用多线程出包上线");
|
||||
}
|
||||
EditorGUILayout.EndVertical();
|
||||
}
|
||||
|
||||
if (WXConvertCore.IsInstantGameAutoStreaming())
|
||||
{
|
||||
foldInstantGame = EditorGUILayout.Foldout(foldInstantGame, "Instant Game - AutoStreaming");
|
||||
if (foldInstantGame)
|
||||
{
|
||||
var automaticfillinstantgame = miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame");
|
||||
EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true));
|
||||
GUILayout.BeginHorizontal();
|
||||
EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10));
|
||||
formCheckbox("m_AutomaticFillInstantGame", "自动填写AutoStreaming", "仅在开启AutoStreaming生效");
|
||||
GUILayout.EndHorizontal();
|
||||
formInput("bundlePathIdentifier", "Bundle Path Identifier");
|
||||
formInput("dataFileSubPrefix", "Data File Sub Prefix");
|
||||
|
||||
EditorGUI.BeginDisabledGroup(true);
|
||||
formCheckbox("autoUploadFirstBundle", "构建后自动上传首包(?)", "仅在开启AutoStreaming生效", true);
|
||||
EditorGUI.EndDisabledGroup();
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10));
|
||||
GUILayout.Label(new GUIContent("清理AS配置(?)", "如需关闭AutoStreaming选用默认发布方案则需要清理AS配置项目。"), GUILayout.Width(140));
|
||||
EditorGUI.BeginDisabledGroup(WXConvertCore.IsInstantGameAutoStreaming());
|
||||
if (GUILayout.Button(new GUIContent("恢复"), GUILayout.Width(60)))
|
||||
{
|
||||
var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf");
|
||||
string identifier = ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue;
|
||||
string[] identifiers = identifier.Split(";");
|
||||
string idStr = "";
|
||||
foreach (string id in identifiers)
|
||||
{
|
||||
if (id != "AS" && id != "CUS/CustomAB")
|
||||
{
|
||||
idStr += id + ";";
|
||||
}
|
||||
}
|
||||
ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue = idStr.Trim(';');
|
||||
|
||||
if (ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue == "CUS")
|
||||
{
|
||||
ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = "";
|
||||
}
|
||||
loadData(serializedObject, miniGameProperty);
|
||||
}
|
||||
EditorGUI.EndDisabledGroup();
|
||||
GUILayout.EndHorizontal();
|
||||
|
||||
EditorGUILayout.BeginHorizontal();
|
||||
EditorGUILayout.LabelField(string.Empty);
|
||||
if (GUILayout.Button(new GUIContent("了解Instant Game AutoStreaming", ""), linkStyle))
|
||||
{
|
||||
Application.OpenURL("https://github.com/wechat-miniprogram/minigame-unity-webgl-transform/blob/main/Design/InstantGameGuide.md");
|
||||
}
|
||||
EditorGUILayout.EndHorizontal();
|
||||
EditorGUILayout.EndVertical();
|
||||
}
|
||||
}
|
||||
|
||||
{
|
||||
foldFontOptions = EditorGUILayout.Foldout(foldFontOptions, "字体配置");
|
||||
if (foldFontOptions)
|
||||
{
|
||||
EditorGUILayout.BeginVertical("frameBox", GUILayout.ExpandWidth(true));
|
||||
formCheckbox("CJK_Unified_Ideographs", "基本汉字(?)", "Unicode [0x4e00, 0x9fff]");
|
||||
formCheckbox("C0_Controls_and_Basic_Latin", "基本拉丁语(英文大小写、数字、英文标点)(?)", "Unicode [0x0, 0x7f]");
|
||||
formCheckbox("CJK_Symbols_and_Punctuation", "中文标点符号(?)", "Unicode [0x3000, 0x303f]");
|
||||
formCheckbox("General_Punctuation", "通用标点符号(?)", "Unicode [0x2000, 0x206f]");
|
||||
formCheckbox("Enclosed_CJK_Letters_and_Months", "CJK字母及月份(?)", "Unicode [0x3200, 0x32ff]");
|
||||
formCheckbox("Vertical_Forms", "中文竖排标点(?)", "Unicode [0xfe10, 0xfe1f]");
|
||||
formCheckbox("CJK_Compatibility_Forms", "CJK兼容符号(?)", "Unicode [0xfe30, 0xfe4f]");
|
||||
formCheckbox("Miscellaneous_Symbols", "杂项符号(?)", "Unicode [0x2600, 0x26ff]");
|
||||
formCheckbox("CJK_Compatibility", "CJK特殊符号(?)", "Unicode [0x3300, 0x33ff]");
|
||||
formCheckbox("Halfwidth_and_Fullwidth_Forms", "全角ASCII、全角中英文标点、半宽片假名、半宽平假名、半宽韩文字母(?)", "Unicode [0xff00, 0xffef]");
|
||||
formCheckbox("Dingbats", "装饰符号(?)", "Unicode [0x2700, 0x27bf]");
|
||||
formCheckbox("Letterlike_Symbols", "字母式符号(?)", "Unicode [0x2100, 0x214f]");
|
||||
formCheckbox("Enclosed_Alphanumerics", "带圈或括号的字母数字(?)", "Unicode [0x2460, 0x24ff]");
|
||||
formCheckbox("Number_Forms", "数字形式(?)", "Unicode [0x2150, 0x218f]");
|
||||
formCheckbox("Currency_Symbols", "货币符号(?)", "Unicode [0x20a0, 0x20cf]");
|
||||
formCheckbox("Arrows", "箭头(?)", "Unicode [0x2190, 0x21ff]");
|
||||
formCheckbox("Geometric_Shapes", "几何图形(?)", "Unicode [0x25a0, 0x25ff]");
|
||||
formCheckbox("Mathematical_Operators", "数学运算符号(?)", "Unicode [0x2200, 0x22ff]");
|
||||
formInput("CustomUnicode", "自定义Unicode(?)", "将填入的所有字符强制加入字体预加载列表");
|
||||
EditorGUILayout.EndVertical();
|
||||
}
|
||||
}
|
||||
|
||||
EditorGUILayout.EndScrollView();
|
||||
saveData(serializedObject, miniGameProperty);
|
||||
}
|
||||
|
||||
private void loadData(SerializedObject serializedObject, SerializedProperty miniGameProperty)
|
||||
{
|
||||
serializedObject.UpdateIfRequiredOrScript();
|
||||
var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf");
|
||||
|
||||
// Instant Game
|
||||
if (WXConvertCore.IsInstantGameAutoStreaming())
|
||||
{
|
||||
var automaticfillinstantgame = miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame");
|
||||
if (automaticfillinstantgame.boolValue)
|
||||
{
|
||||
ProjectConf.FindPropertyRelative("CDN").stringValue = WXConvertCore.GetInstantGameAutoStreamingCDN();
|
||||
if (!ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue.Contains("AS;"))
|
||||
{
|
||||
ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue += "AS;";
|
||||
}
|
||||
if (!ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue.Contains("CUS/CustomAB;"))
|
||||
{
|
||||
ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue += "CUS/CustomAB;";
|
||||
}
|
||||
ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = "CUS";
|
||||
}
|
||||
}
|
||||
|
||||
setData("projectName", ProjectConf.FindPropertyRelative("projectName").stringValue);
|
||||
setData("appid", ProjectConf.FindPropertyRelative("Appid").stringValue);
|
||||
setData("cdn", ProjectConf.FindPropertyRelative("CDN").stringValue);
|
||||
setData("assetLoadType", ProjectConf.FindPropertyRelative("assetLoadType").intValue);
|
||||
setData("compressDataPackage", ProjectConf.FindPropertyRelative("compressDataPackage").boolValue);
|
||||
setData("videoUrl", ProjectConf.FindPropertyRelative("VideoUrl").stringValue);
|
||||
setData("orientation", (int)ProjectConf.FindPropertyRelative("Orientation").enumValueIndex);
|
||||
//setData("dst", ProjectConf.FindPropertyRelative("relativeDST").stringValue);
|
||||
setData("bundleHashLength", ProjectConf.FindPropertyRelative("bundleHashLength").intValue.ToString());
|
||||
setData("bundlePathIdentifier", ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue);
|
||||
setData("bundleExcludeExtensions", ProjectConf.FindPropertyRelative("bundleExcludeExtensions").stringValue);
|
||||
setData("preloadFiles", ProjectConf.FindPropertyRelative("preloadFiles").stringValue);
|
||||
|
||||
var CompileOptions = miniGameProperty.FindPropertyRelative("CompileOptions");
|
||||
// setData("developBuild", CompileOptions.FindPropertyRelative("DevelopBuild").boolValue);
|
||||
setData("autoProfile", CompileOptions.FindPropertyRelative("AutoProfile").boolValue);
|
||||
setData("scriptOnly", CompileOptions.FindPropertyRelative("ScriptOnly").boolValue);
|
||||
setData("il2CppOptimizeSize", CompileOptions.FindPropertyRelative("Il2CppOptimizeSize").boolValue);
|
||||
setData("profilingFuncs", CompileOptions.FindPropertyRelative("profilingFuncs").boolValue);
|
||||
setData("profilingMemory", CompileOptions.FindPropertyRelative("ProfilingMemory").boolValue);
|
||||
setData("deleteStreamingAssets", CompileOptions.FindPropertyRelative("DeleteStreamingAssets").boolValue);
|
||||
setData("cleanBuild", CompileOptions.FindPropertyRelative("CleanBuild").boolValue);
|
||||
setData("customNodePath", CompileOptions.FindPropertyRelative("CustomNodePath").stringValue);
|
||||
setData("webgl2", CompileOptions.FindPropertyRelative("Webgl2").boolValue);
|
||||
setData("iOSPerformancePlus", CompileOptions.FindPropertyRelative("enableIOSPerformancePlus").boolValue);
|
||||
setData("iOSMetal", CompileOptions.FindPropertyRelative("enableiOSMetal").boolValue);
|
||||
setData("EmscriptenGLX", CompileOptions.FindPropertyRelative("enableEmscriptenGLX").boolValue);
|
||||
setData("fbslim", CompileOptions.FindPropertyRelative("fbslim").boolValue);
|
||||
|
||||
var SDKOptions = miniGameProperty.FindPropertyRelative("SDKOptions");
|
||||
setData("useFriendRelation", SDKOptions.FindPropertyRelative("UseFriendRelation").boolValue);
|
||||
setData("useMiniGameChat", SDKOptions.FindPropertyRelative("UseMiniGameChat").boolValue);
|
||||
setData("preloadWXFont", SDKOptions.FindPropertyRelative("PreloadWXFont").boolValue);
|
||||
setData("disableMultiTouch", SDKOptions.FindPropertyRelative("disableMultiTouch").boolValue);
|
||||
setData("bgImageSrc", ProjectConf.FindPropertyRelative("bgImageSrc").stringValue);
|
||||
tex = AssetDatabase.LoadAssetAtPath<Texture>(ProjectConf.FindPropertyRelative("bgImageSrc").stringValue);
|
||||
setData("memorySize", ProjectConf.FindPropertyRelative("MemorySize").intValue.ToString());
|
||||
setData("hideAfterCallMain", ProjectConf.FindPropertyRelative("HideAfterCallMain").boolValue);
|
||||
|
||||
setData("dataFileSubPrefix", ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue);
|
||||
setData("maxStorage", ProjectConf.FindPropertyRelative("maxStorage").intValue.ToString());
|
||||
setData("defaultReleaseSize", ProjectConf.FindPropertyRelative("defaultReleaseSize").intValue.ToString());
|
||||
setData("texturesHashLength", ProjectConf.FindPropertyRelative("texturesHashLength").intValue.ToString());
|
||||
setData("texturesPath", ProjectConf.FindPropertyRelative("texturesPath").stringValue);
|
||||
setData("needCacheTextures", ProjectConf.FindPropertyRelative("needCacheTextures").boolValue);
|
||||
setData("loadingBarWidth", ProjectConf.FindPropertyRelative("loadingBarWidth").intValue.ToString());
|
||||
setData("needCheckUpdate", ProjectConf.FindPropertyRelative("needCheckUpdate").boolValue);
|
||||
setData("disableHighPerformanceFallback", ProjectConf.FindPropertyRelative("disableHighPerformanceFallback").boolValue);
|
||||
setData("autoAdaptScreen", CompileOptions.FindPropertyRelative("autoAdaptScreen").boolValue);
|
||||
setData("showMonitorSuggestModal", CompileOptions.FindPropertyRelative("showMonitorSuggestModal").boolValue);
|
||||
setData("enableProfileStats", CompileOptions.FindPropertyRelative("enableProfileStats").boolValue);
|
||||
setData("enableRenderAnalysis", CompileOptions.FindPropertyRelative("enableRenderAnalysis").boolValue);
|
||||
setData("brotliMT", CompileOptions.FindPropertyRelative("brotliMT").boolValue);
|
||||
setData("autoUploadFirstBundle", true);
|
||||
setData("m_AutomaticFillInstantGame", miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame").boolValue);
|
||||
|
||||
// font options
|
||||
var FontOptions = miniGameProperty.FindPropertyRelative("FontOptions");
|
||||
setData("CJK_Unified_Ideographs", FontOptions.FindPropertyRelative("CJK_Unified_Ideographs").boolValue);
|
||||
setData("C0_Controls_and_Basic_Latin", FontOptions.FindPropertyRelative("C0_Controls_and_Basic_Latin").boolValue);
|
||||
setData("CJK_Symbols_and_Punctuation", FontOptions.FindPropertyRelative("CJK_Symbols_and_Punctuation").boolValue);
|
||||
setData("General_Punctuation", FontOptions.FindPropertyRelative("General_Punctuation").boolValue);
|
||||
setData("Enclosed_CJK_Letters_and_Months", FontOptions.FindPropertyRelative("Enclosed_CJK_Letters_and_Months").boolValue);
|
||||
setData("Vertical_Forms", FontOptions.FindPropertyRelative("Vertical_Forms").boolValue);
|
||||
setData("CJK_Compatibility_Forms", FontOptions.FindPropertyRelative("CJK_Compatibility_Forms").boolValue);
|
||||
setData("Miscellaneous_Symbols", FontOptions.FindPropertyRelative("Miscellaneous_Symbols").boolValue);
|
||||
setData("CJK_Compatibility", FontOptions.FindPropertyRelative("CJK_Compatibility").boolValue);
|
||||
setData("Halfwidth_and_Fullwidth_Forms", FontOptions.FindPropertyRelative("Halfwidth_and_Fullwidth_Forms").boolValue);
|
||||
setData("Dingbats", FontOptions.FindPropertyRelative("Dingbats").boolValue);
|
||||
setData("Letterlike_Symbols", FontOptions.FindPropertyRelative("Letterlike_Symbols").boolValue);
|
||||
setData("Enclosed_Alphanumerics", FontOptions.FindPropertyRelative("Enclosed_Alphanumerics").boolValue);
|
||||
setData("Number_Forms", FontOptions.FindPropertyRelative("Number_Forms").boolValue);
|
||||
setData("Currency_Symbols", FontOptions.FindPropertyRelative("Currency_Symbols").boolValue);
|
||||
setData("Arrows", FontOptions.FindPropertyRelative("Arrows").boolValue);
|
||||
setData("Geometric_Shapes", FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue);
|
||||
setData("Mathematical_Operators", FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue);
|
||||
setData("CustomUnicode", FontOptions.FindPropertyRelative("CustomUnicode").stringValue);
|
||||
}
|
||||
|
||||
private void saveData(SerializedObject serializedObject, SerializedProperty miniGameProperty)
|
||||
{
|
||||
serializedObject.UpdateIfRequiredOrScript();
|
||||
|
||||
var ProjectConf = miniGameProperty.FindPropertyRelative("ProjectConf");
|
||||
ProjectConf.FindPropertyRelative("projectName").stringValue = getDataInput("projectName");
|
||||
ProjectConf.FindPropertyRelative("Appid").stringValue = getDataInput("appid");
|
||||
ProjectConf.FindPropertyRelative("CDN").stringValue = getDataInput("cdn");
|
||||
ProjectConf.FindPropertyRelative("assetLoadType").intValue = getDataPop("assetLoadType");
|
||||
ProjectConf.FindPropertyRelative("compressDataPackage").boolValue = getDataCheckbox("compressDataPackage");
|
||||
ProjectConf.FindPropertyRelative("VideoUrl").stringValue = getDataInput("videoUrl");
|
||||
ProjectConf.FindPropertyRelative("Orientation").enumValueIndex = getDataPop("orientation");
|
||||
ProjectConf.FindPropertyRelative("relativeDST").stringValue = serializedObject.FindProperty("m_BuildPath").stringValue;
|
||||
ProjectConf.FindPropertyRelative("DST").stringValue = GetAbsolutePath(config.ProjectConf.relativeDST);
|
||||
|
||||
ProjectConf.FindPropertyRelative("bundleHashLength").intValue = int.Parse(getDataInput("bundleHashLength"));
|
||||
ProjectConf.FindPropertyRelative("bundlePathIdentifier").stringValue = getDataInput("bundlePathIdentifier");
|
||||
ProjectConf.FindPropertyRelative("bundleExcludeExtensions").stringValue = getDataInput("bundleExcludeExtensions");
|
||||
ProjectConf.FindPropertyRelative("preloadFiles").stringValue = getDataInput("preloadFiles");
|
||||
|
||||
var CompileOptions = miniGameProperty.FindPropertyRelative("CompileOptions");
|
||||
|
||||
CompileOptions.FindPropertyRelative("DevelopBuild").boolValue = serializedObject.FindProperty("m_PlatformSettings").FindPropertyRelative("m_Development").boolValue;
|
||||
CompileOptions.FindPropertyRelative("AutoProfile").boolValue = getDataCheckbox("autoProfile");
|
||||
CompileOptions.FindPropertyRelative("ScriptOnly").boolValue = getDataCheckbox("scriptOnly");
|
||||
CompileOptions.FindPropertyRelative("Il2CppOptimizeSize").boolValue = getDataCheckbox("il2CppOptimizeSize");
|
||||
CompileOptions.FindPropertyRelative("profilingFuncs").boolValue = getDataCheckbox("profilingFuncs");
|
||||
CompileOptions.FindPropertyRelative("ProfilingMemory").boolValue = getDataCheckbox("profilingMemory");
|
||||
CompileOptions.FindPropertyRelative("DeleteStreamingAssets").boolValue = getDataCheckbox("deleteStreamingAssets");
|
||||
CompileOptions.FindPropertyRelative("CleanBuild").boolValue = getDataCheckbox("cleanBuild");
|
||||
CompileOptions.FindPropertyRelative("CustomNodePath").stringValue = getDataInput("customNodePath");
|
||||
CompileOptions.FindPropertyRelative("Webgl2").boolValue = getDataCheckbox("webgl2");
|
||||
CompileOptions.FindPropertyRelative("enableIOSPerformancePlus").boolValue = getDataCheckbox("iOSPerformancePlus");
|
||||
CompileOptions.FindPropertyRelative("enableiOSMetal").boolValue = getDataCheckbox("iOSMetal");
|
||||
CompileOptions.FindPropertyRelative("enableEmscriptenGLX").boolValue = getDataCheckbox("EmscriptenGLX");
|
||||
CompileOptions.FindPropertyRelative("fbslim").boolValue = getDataCheckbox("fbslim");
|
||||
|
||||
var SDKOptions = miniGameProperty.FindPropertyRelative("SDKOptions");
|
||||
SDKOptions.FindPropertyRelative("UseFriendRelation").boolValue = getDataCheckbox("useFriendRelation");
|
||||
SDKOptions.FindPropertyRelative("UseMiniGameChat").boolValue = getDataCheckbox("useMiniGameChat");
|
||||
SDKOptions.FindPropertyRelative("PreloadWXFont").boolValue = getDataCheckbox("preloadWXFont");
|
||||
SDKOptions.FindPropertyRelative("disableMultiTouch").boolValue = getDataCheckbox("disableMultiTouch");
|
||||
ProjectConf.FindPropertyRelative("bgImageSrc").stringValue = getDataInput("bgImageSrc");
|
||||
ProjectConf.FindPropertyRelative("MemorySize").intValue = int.Parse(getDataInput("memorySize"));
|
||||
ProjectConf.FindPropertyRelative("HideAfterCallMain").boolValue = getDataCheckbox("hideAfterCallMain");
|
||||
ProjectConf.FindPropertyRelative("dataFileSubPrefix").stringValue = getDataInput("dataFileSubPrefix");
|
||||
ProjectConf.FindPropertyRelative("maxStorage").intValue = int.Parse(getDataInput("maxStorage"));
|
||||
ProjectConf.FindPropertyRelative("defaultReleaseSize").intValue = int.Parse(getDataInput("defaultReleaseSize"));
|
||||
ProjectConf.FindPropertyRelative("texturesHashLength").intValue = int.Parse(getDataInput("texturesHashLength"));
|
||||
ProjectConf.FindPropertyRelative("texturesPath").stringValue = getDataInput("texturesPath");
|
||||
ProjectConf.FindPropertyRelative("needCacheTextures").boolValue = getDataCheckbox("needCacheTextures");
|
||||
ProjectConf.FindPropertyRelative("loadingBarWidth").intValue = int.Parse(getDataInput("loadingBarWidth"));
|
||||
ProjectConf.FindPropertyRelative("needCheckUpdate").boolValue = getDataCheckbox("needCheckUpdate");
|
||||
ProjectConf.FindPropertyRelative("disableHighPerformanceFallback").boolValue = getDataCheckbox("disableHighPerformanceFallback");
|
||||
CompileOptions.FindPropertyRelative("autoAdaptScreen").boolValue = getDataCheckbox("autoAdaptScreen");
|
||||
CompileOptions.FindPropertyRelative("showMonitorSuggestModal").boolValue = getDataCheckbox("showMonitorSuggestModal");
|
||||
CompileOptions.FindPropertyRelative("enableProfileStats").boolValue = getDataCheckbox("enableProfileStats");
|
||||
CompileOptions.FindPropertyRelative("enableRenderAnalysis").boolValue = getDataCheckbox("enableRenderAnalysis");
|
||||
CompileOptions.FindPropertyRelative("brotliMT").boolValue = getDataCheckbox("brotliMT");
|
||||
|
||||
// font options
|
||||
var FontOptions = miniGameProperty.FindPropertyRelative("FontOptions");
|
||||
FontOptions.FindPropertyRelative("CJK_Unified_Ideographs").boolValue = getDataCheckbox("CJK_Unified_Ideographs");
|
||||
FontOptions.FindPropertyRelative("C0_Controls_and_Basic_Latin").boolValue = getDataCheckbox("C0_Controls_and_Basic_Latin");
|
||||
FontOptions.FindPropertyRelative("CJK_Symbols_and_Punctuation").boolValue = getDataCheckbox("CJK_Symbols_and_Punctuation");
|
||||
FontOptions.FindPropertyRelative("General_Punctuation").boolValue = getDataCheckbox("General_Punctuation");
|
||||
FontOptions.FindPropertyRelative("Enclosed_CJK_Letters_and_Months").boolValue = getDataCheckbox("Enclosed_CJK_Letters_and_Months");
|
||||
FontOptions.FindPropertyRelative("Vertical_Forms").boolValue = getDataCheckbox("Vertical_Forms");
|
||||
FontOptions.FindPropertyRelative("CJK_Compatibility_Forms").boolValue = getDataCheckbox("CJK_Compatibility_Forms");
|
||||
FontOptions.FindPropertyRelative("Miscellaneous_Symbols").boolValue = getDataCheckbox("Miscellaneous_Symbols");
|
||||
FontOptions.FindPropertyRelative("CJK_Compatibility").boolValue = getDataCheckbox("CJK_Compatibility");
|
||||
FontOptions.FindPropertyRelative("Halfwidth_and_Fullwidth_Forms").boolValue = getDataCheckbox("Halfwidth_and_Fullwidth_Forms");
|
||||
FontOptions.FindPropertyRelative("Dingbats").boolValue = getDataCheckbox("Dingbats");
|
||||
FontOptions.FindPropertyRelative("Letterlike_Symbols").boolValue = getDataCheckbox("Letterlike_Symbols");
|
||||
FontOptions.FindPropertyRelative("Enclosed_Alphanumerics").boolValue = getDataCheckbox("Enclosed_Alphanumerics");
|
||||
FontOptions.FindPropertyRelative("Number_Forms").boolValue = getDataCheckbox("Number_Forms");
|
||||
FontOptions.FindPropertyRelative("Currency_Symbols").boolValue = getDataCheckbox("Currency_Symbols");
|
||||
FontOptions.FindPropertyRelative("Arrows").boolValue = getDataCheckbox("Arrows");
|
||||
FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue = getDataCheckbox("Geometric_Shapes");
|
||||
FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue = getDataCheckbox("Mathematical_Operators");
|
||||
FontOptions.FindPropertyRelative("CustomUnicode").stringValue = getDataInput("CustomUnicode");
|
||||
FontOptions.FindPropertyRelative("Arrows").boolValue = getDataCheckbox("Arrows");
|
||||
FontOptions.FindPropertyRelative("Geometric_Shapes").boolValue = getDataCheckbox("Geometric_Shapes");
|
||||
FontOptions.FindPropertyRelative("Mathematical_Operators").boolValue = getDataCheckbox("Mathematical_Operators");
|
||||
FontOptions.FindPropertyRelative("CustomUnicode").stringValue = getDataInput("CustomUnicode");
|
||||
|
||||
miniGameProperty.FindPropertyRelative("m_AutomaticFillInstantGame").boolValue = getDataCheckbox("m_AutomaticFillInstantGame");
|
||||
|
||||
serializedObject.ApplyModifiedProperties();
|
||||
}
|
||||
|
||||
private bool getDataCheckbox(string target)
|
||||
{
|
||||
if (formCheckboxData.ContainsKey(target))
|
||||
return formCheckboxData[target];
|
||||
return false;
|
||||
}
|
||||
|
||||
private string getDataInput(string target)
|
||||
{
|
||||
if (formInputData.ContainsKey(target))
|
||||
return formInputData[target];
|
||||
return "";
|
||||
}
|
||||
|
||||
private int getDataPop(string target)
|
||||
{
|
||||
if (formIntPopupData.ContainsKey(target))
|
||||
return formIntPopupData[target];
|
||||
return 0;
|
||||
}
|
||||
|
||||
private void setData(string target, string value)
|
||||
{
|
||||
if (formInputData.ContainsKey(target))
|
||||
{
|
||||
formInputData[target] = value;
|
||||
}
|
||||
else
|
||||
{
|
||||
formInputData.Add(target, value);
|
||||
}
|
||||
}
|
||||
|
||||
private void setData(string target, bool value)
|
||||
{
|
||||
if (formCheckboxData.ContainsKey(target))
|
||||
{
|
||||
formCheckboxData[target] = value;
|
||||
}
|
||||
else
|
||||
{
|
||||
formCheckboxData.Add(target, value);
|
||||
}
|
||||
}
|
||||
|
||||
private void setData(string target, int value)
|
||||
{
|
||||
if (formIntPopupData.ContainsKey(target))
|
||||
{
|
||||
formIntPopupData[target] = value;
|
||||
}
|
||||
else
|
||||
{
|
||||
formIntPopupData.Add(target, value);
|
||||
}
|
||||
}
|
||||
|
||||
private void formInput(string target, string label, string help = null)
|
||||
{
|
||||
if (!formInputData.ContainsKey(target))
|
||||
{
|
||||
formInputData[target] = "";
|
||||
}
|
||||
GUILayout.BeginHorizontal();
|
||||
EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10));
|
||||
if (help == null)
|
||||
{
|
||||
GUILayout.Label(label, GUILayout.Width(140));
|
||||
}
|
||||
else
|
||||
{
|
||||
GUILayout.Label(new GUIContent(label, help), GUILayout.Width(140));
|
||||
}
|
||||
formInputData[target] = GUILayout.TextField(formInputData[target], GUILayout.MaxWidth(EditorGUIUtility.currentViewWidth - 195));
|
||||
GUILayout.EndHorizontal();
|
||||
}
|
||||
|
||||
private void formCheckbox(string target, string label, string help = null, bool disable = false, Action<bool> setting = null)
|
||||
{
|
||||
if (!formCheckboxData.ContainsKey(target))
|
||||
{
|
||||
formCheckboxData[target] = false;
|
||||
}
|
||||
GUILayout.BeginHorizontal();
|
||||
EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10));
|
||||
if (help == null)
|
||||
{
|
||||
GUILayout.Label(label, GUILayout.Width(140));
|
||||
}
|
||||
else
|
||||
{
|
||||
GUILayout.Label(new GUIContent(label, help), GUILayout.Width(140));
|
||||
}
|
||||
EditorGUI.BeginDisabledGroup(disable);
|
||||
formCheckboxData[target] = EditorGUILayout.Toggle(disable ? false : formCheckboxData[target]);
|
||||
|
||||
if (setting != null)
|
||||
{
|
||||
EditorGUILayout.LabelField("", GUILayout.Width(10));
|
||||
// <20><><EFBFBD>ð<EFBFBD>ť
|
||||
if (GUILayout.Button(new GUIContent("<22><><EFBFBD><EFBFBD>"), GUILayout.Width(40), GUILayout.Height(18)))
|
||||
{
|
||||
setting?.Invoke(true);
|
||||
}
|
||||
EditorGUILayout.LabelField("", GUILayout.MinWidth(10));
|
||||
}
|
||||
|
||||
EditorGUI.EndDisabledGroup();
|
||||
|
||||
if (setting == null)
|
||||
EditorGUILayout.LabelField(string.Empty);
|
||||
GUILayout.EndHorizontal();
|
||||
}
|
||||
|
||||
private void formIntPopup(string target, string label, string[] options, int[] values)
|
||||
{
|
||||
if (!formIntPopupData.ContainsKey(target))
|
||||
{
|
||||
formIntPopupData[target] = 0;
|
||||
}
|
||||
GUILayout.BeginHorizontal();
|
||||
EditorGUILayout.LabelField(string.Empty, GUILayout.Width(10));
|
||||
GUILayout.Label(label, GUILayout.Width(140));
|
||||
formIntPopupData[target] = EditorGUILayout.IntPopup(formIntPopupData[target], options, values, GUILayout.MaxWidth(EditorGUIUtility.currentViewWidth - 195));
|
||||
GUILayout.EndHorizontal();
|
||||
}
|
||||
|
||||
public static bool IsAbsolutePath(string path)
|
||||
{
|
||||
// 检查是否为空或空白
|
||||
if (string.IsNullOrWhiteSpace(path))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
// 在 Windows 上,检查驱动器字母或网络路径
|
||||
if (Application.platform == RuntimePlatform.WindowsEditor && Path.IsPathRooted(path))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
// 在 Unix/Linux 和 macOS 上,检查是否以 '/' 开头
|
||||
if (Application.platform == RuntimePlatform.OSXEditor && path.StartsWith("/"))
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
return false; // 否则为相对路径
|
||||
}
|
||||
|
||||
public static string GetAbsolutePath(string path)
|
||||
{
|
||||
if (IsAbsolutePath(path))
|
||||
{
|
||||
return path;
|
||||
}
|
||||
string projectRootPath = System.IO.Path.GetFullPath(Application.dataPath + "/../");
|
||||
return Path.Combine(projectRootPath, path);
|
||||
}
|
||||
}
|
||||
}
|
||||
#endif
|
||||
7
Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs.meta
Normal file
7
Editor/BuildProfile/WeixinMiniGameSettingsEditor.cs.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: df4d545d2ba5ed176543212d06fd4afd
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
183
Editor/BuildProfile/WeixinSubplatformInterface.cs
Normal file
183
Editor/BuildProfile/WeixinSubplatformInterface.cs
Normal file
@ -0,0 +1,183 @@
|
||||
#if TUANJIE_1_4_OR_NEWER
|
||||
using System;
|
||||
using System.Collections;
|
||||
using System.Collections.Generic;
|
||||
using System.IO;
|
||||
using UnityEditor;
|
||||
using UnityEditor.Build.Profile;
|
||||
using UnityEngine;
|
||||
using UnityEngine.Rendering;
|
||||
|
||||
|
||||
namespace WeChatWASM
|
||||
{
|
||||
[InitializeOnLoad]
|
||||
public static class WeixinSubTargetManager
|
||||
{
|
||||
static WeixinSubTargetManager()
|
||||
{
|
||||
MiniGameSubplatformManager.RegisterSubplatform(new WeixinSubplatformInterface());
|
||||
}
|
||||
}
|
||||
|
||||
public class WeixinSubplatformInterface : MiniGameSubplatformInterface
|
||||
{
|
||||
class CacheConfig
|
||||
{
|
||||
public WXProjectConf ProjectConf;
|
||||
public SDKOptions SDKOptions;
|
||||
public CompileOptions CompileOptions;
|
||||
public CompressTexture CompressTexture;
|
||||
public List<string> PlayerPrefsKeys = new List<string>();
|
||||
public FontOptions FontOptions;
|
||||
}
|
||||
|
||||
private CacheConfig cacheConfig = new CacheConfig();
|
||||
|
||||
public override string GetSubplatformName()
|
||||
{
|
||||
return "WeChat:微信小游戏";
|
||||
}
|
||||
|
||||
public override MiniGameSettings GetSubplatformSettings()
|
||||
{
|
||||
return new WeixinMiniGameSettings(new WeixinMiniGameSettingsEditor());
|
||||
}
|
||||
|
||||
public override BuildMiniGameError Build(BuildProfile buildProfile)
|
||||
{
|
||||
// Useless
|
||||
return BuildMiniGameError.InvalidInput;
|
||||
}
|
||||
|
||||
public override BuildMiniGameError Build(BuildProfile buildProfile, BuildOptions options)
|
||||
{
|
||||
|
||||
var bcLibPath = Path.GetFullPath(Path.Combine("Packages", "com.qq.weixin.minigame", "Editor", "BuildProfile", "lib", "libwx-metal-cpp.bc"));
|
||||
var jsLibPath = Path.GetFullPath(Path.Combine("Packages", "com.qq.weixin.minigame", "Editor", "BuildProfile", "lib", "mtl_library.jslib"));
|
||||
string libPath = bcLibPath + ';' + jsLibPath;
|
||||
EditorUtility.SetMiniGameGfxLibraryPath(libPath);
|
||||
|
||||
WeixinMiniGameSettings settings = buildProfile.miniGameSettings as WeixinMiniGameSettings;
|
||||
|
||||
BuildMiniGameError buildMiniGameError = BuildMiniGameError.Unknown;
|
||||
bool preprocessSuccess = WechatBuildPreprocess(buildProfile);
|
||||
if (!preprocessSuccess)
|
||||
{
|
||||
return BuildMiniGameError.InvalidInput;
|
||||
}
|
||||
|
||||
if (settings is not null)
|
||||
{
|
||||
settings.FillAutoStreamingAutomatically();
|
||||
if (settings.PreprocessBuild(buildProfile, options))
|
||||
{
|
||||
|
||||
var error = CallDoExport(buildProfile);
|
||||
int enumIntValue = Convert.ToInt32(error);
|
||||
switch (enumIntValue)
|
||||
{
|
||||
case 0: // SUCCEED
|
||||
{
|
||||
WeixinMiniGameSettings.AutoStreamingLoad();
|
||||
buildMiniGameError = BuildMiniGameError.Succeeded;
|
||||
break;
|
||||
}
|
||||
case 2: // BUILD_WEBGL_FAILED
|
||||
{
|
||||
buildMiniGameError = BuildMiniGameError.PlayerBuildFailed;
|
||||
break;
|
||||
}
|
||||
case 1: // NODE_NOT_FOUND
|
||||
default:
|
||||
{
|
||||
buildMiniGameError = BuildMiniGameError.Unknown;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
BuildPostProcess(buildProfile);
|
||||
return buildMiniGameError;
|
||||
}
|
||||
|
||||
private bool WechatBuildPreprocess(BuildProfile buildProfile)
|
||||
{
|
||||
// Check GFX API and Color Space
|
||||
if (buildProfile != null)
|
||||
{
|
||||
PlayerSettings playerSettings = buildProfile.playerSettings;
|
||||
// Global PlayerSettings
|
||||
ColorSpace colorSpace = PlayerSettings.colorSpace;
|
||||
GraphicsDeviceType[] apis = PlayerSettings.GetGraphicsAPIs(buildProfile.buildTarget);
|
||||
bool isAutomatic = PlayerSettings.GetUseDefaultGraphicsAPIs(buildProfile.buildTarget);
|
||||
|
||||
if (playerSettings != null)
|
||||
{
|
||||
// BuildProfile PlayerSettings Override
|
||||
colorSpace = PlayerSettings.GetColorSpace_Internal(playerSettings);
|
||||
apis = PlayerSettings.GetGraphicsAPIs_Internal(playerSettings, buildProfile.buildTarget);
|
||||
isAutomatic = PlayerSettings.GetUseDefaultGraphicsAPIs_Internal(playerSettings, buildProfile.buildTarget);
|
||||
|
||||
// set override templatePath
|
||||
var absolutePath = Path.GetFullPath(Path.Combine("Packages", "com.qq.weixin.minigame", "WebGLTemplates/WXTemplate2022TJ"));
|
||||
if (!Directory.Exists(absolutePath))
|
||||
absolutePath = Path.GetFullPath(Path.Combine(Application.dataPath, "WebGLTemplates/WXTemplate2022TJ"));
|
||||
|
||||
if (Directory.Exists(absolutePath))
|
||||
PlayerSettings.MiniGame.SetTemplatePath_Internal(playerSettings, $"PATH:{absolutePath}");
|
||||
|
||||
PlayerSettings.MiniGame.SetThreadsSupport_Internal(playerSettings, false);
|
||||
PlayerSettings.MiniGame.SetCompressionFormat_Internal(playerSettings, MiniGameCompressionFormat.Disabled);
|
||||
PlayerSettings.MiniGame.SetLinkerTarget_Internal(playerSettings, MiniGameLinkerTarget.Wasm);
|
||||
PlayerSettings.MiniGame.SetDataCaching_Internal(playerSettings, false);
|
||||
PlayerSettings.MiniGame.SetDebugSymbolMode_Internal(playerSettings, MiniGameDebugSymbolMode.External);
|
||||
PlayerSettings.SetRunInBackground_Internal(playerSettings, false);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
else
|
||||
{
|
||||
throw new InvalidOperationException("Build profile has not been initialized.");
|
||||
}
|
||||
}
|
||||
|
||||
private WXConvertCore.WXExportError CallDoExport(BuildProfile buildProfile)
|
||||
{
|
||||
WXEditorScriptObject config = UnityUtil.GetEditorConf();
|
||||
cacheConfig.ProjectConf = config.ProjectConf;
|
||||
cacheConfig.SDKOptions = config.SDKOptions;
|
||||
cacheConfig.CompileOptions = config.CompileOptions;
|
||||
cacheConfig.CompressTexture = config.CompressTexture;
|
||||
cacheConfig.PlayerPrefsKeys = config.PlayerPrefsKeys;
|
||||
cacheConfig.FontOptions = config.FontOptions;
|
||||
|
||||
WeixinMiniGameSettings weixinSettings = buildProfile.miniGameSettings as WeixinMiniGameSettings;
|
||||
config.ProjectConf = weixinSettings.ProjectConf;
|
||||
config.SDKOptions = weixinSettings.SDKOptions;
|
||||
config.CompileOptions = weixinSettings.CompileOptions;
|
||||
config.CompressTexture = weixinSettings.CompressTexture;
|
||||
config.PlayerPrefsKeys = weixinSettings.PlayerPrefsKeys;
|
||||
config.FontOptions = weixinSettings.FontOptions;
|
||||
EditorUtility.SetDirty(config);
|
||||
AssetDatabase.SaveAssets();
|
||||
return WXConvertCore.DoExport();
|
||||
}
|
||||
|
||||
private void BuildPostProcess(BuildProfile buildProfile)
|
||||
{
|
||||
// Restore the original settings
|
||||
WXEditorScriptObject config = UnityUtil.GetEditorConf();
|
||||
config.ProjectConf = cacheConfig.ProjectConf;
|
||||
config.SDKOptions = cacheConfig.SDKOptions;
|
||||
config.CompileOptions = cacheConfig.CompileOptions;
|
||||
config.CompressTexture = cacheConfig.CompressTexture;
|
||||
config.PlayerPrefsKeys = cacheConfig.PlayerPrefsKeys;
|
||||
config.FontOptions = cacheConfig.FontOptions;
|
||||
EditorUtility.SetDirty(config);
|
||||
AssetDatabase.SaveAssets();
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
#endif
|
||||
7
Editor/BuildProfile/WeixinSubplatformInterface.cs.meta
Normal file
7
Editor/BuildProfile/WeixinSubplatformInterface.cs.meta
Normal file
@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 0b4df61ea34a9bc4c89a8e8b93455bd6
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
@ -221,6 +221,9 @@ namespace WeChatWASM
|
||||
{
|
||||
var rootPath = Directory.GetParent(Application.dataPath).FullName;
|
||||
string webglDir = WXExtEnvDef.GETDEF("WEIXINMINIGAME") ? "WeixinMiniGame" : "WebGL";
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
webglDir = "PlayableAds";
|
||||
#endif
|
||||
symFile1 = Path.Combine(rootPath, "Library", "Bee", "artifacts", webglDir, "build", "debug_WebGL_wasm", "build.js.symbols");
|
||||
}
|
||||
WeChatWASM.UnityUtil.preprocessSymbols(symFile1, GetWebGLSymbolPath());
|
||||
@ -346,7 +349,9 @@ namespace WeChatWASM
|
||||
{
|
||||
// WxPerfJsBridge.jslib
|
||||
var wxPerfJSBridgeImporter = AssetImporter.GetAtPath(wxPerfPlugins[0]) as PluginImporter;
|
||||
#if PLATFORM_WEIXINMINIGAME
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.PlayableAds, config.CompileOptions.enablePerfAnalysis);
|
||||
#elif PLATFORM_WEIXINMINIGAME
|
||||
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, config.CompileOptions.enablePerfAnalysis);
|
||||
#else
|
||||
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WebGL, config.CompileOptions.enablePerfAnalysis);
|
||||
@ -359,7 +364,10 @@ namespace WeChatWASM
|
||||
bool bShouldEnablePerf2022Plugin = config.CompileOptions.enablePerfAnalysis && IsCompatibleWithUnity202203OrNewer();
|
||||
|
||||
var wxPerf2022Importer = AssetImporter.GetAtPath(wxPerfPlugins[1]) as PluginImporter;
|
||||
#if PLATFORM_WEIXINMINIGAME
|
||||
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
wxPerf2022Importer.SetCompatibleWithPlatform(BuildTarget.PlayableAds, bShouldEnablePerf2022Plugin);
|
||||
#elif PLATFORM_WEIXINMINIGAME
|
||||
wxPerf2022Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, bShouldEnablePerf2022Plugin);
|
||||
#else
|
||||
wxPerf2022Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, bShouldEnablePerf2022Plugin);
|
||||
@ -372,7 +380,9 @@ namespace WeChatWASM
|
||||
bool bShouldEnablePerf2021Plugin = config.CompileOptions.enablePerfAnalysis && IsCompatibleWithUnity202102To202203();
|
||||
|
||||
var wxPerf2021Importer = AssetImporter.GetAtPath(wxPerfPlugins[2]) as PluginImporter;
|
||||
#if PLATFORM_WEIXINMINIGAME
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
wxPerf2021Importer.SetCompatibleWithPlatform(BuildTarget.PlayableAds, bShouldEnablePerf2021Plugin);
|
||||
#elif PLATFORM_WEIXINMINIGAME
|
||||
wxPerf2021Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, bShouldEnablePerf2021Plugin);
|
||||
#else
|
||||
wxPerf2021Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, bShouldEnablePerf2021Plugin);
|
||||
@ -572,7 +582,9 @@ namespace WeChatWASM
|
||||
Debug.LogError("Lua Adaptor Importer Not Found: " + maybeBuildFile);
|
||||
continue;
|
||||
}
|
||||
#if PLATFORM_WEIXINMINIGAME
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.PlayableAds, shouldBuild);
|
||||
#elif PLATFORM_WEIXINMINIGAME
|
||||
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, shouldBuild);
|
||||
#else
|
||||
wxPerfJSBridgeImporter.SetCompatibleWithPlatform(BuildTarget.WebGL, shouldBuild);
|
||||
@ -622,7 +634,12 @@ namespace WeChatWASM
|
||||
else
|
||||
{
|
||||
#if TUANJIE_2022_3_OR_NEWER
|
||||
EditorUserBuildSettings.SwitchActiveBuildTarget(BuildTargetGroup.WeixinMiniGame, BuildTarget.WeixinMiniGame);
|
||||
if(EditorUserBuildSettings.activeBuildTarget != BuildTarget.WeixinMiniGame
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
&& EditorUserBuildSettings.activeBuildTarget != BuildTarget.PlayableAds
|
||||
#endif
|
||||
)
|
||||
EditorUserBuildSettings.SwitchActiveBuildTarget(BuildTargetGroup.WeixinMiniGame, BuildTarget.WeixinMiniGame);
|
||||
#endif
|
||||
}
|
||||
Emit(LifeCycle.afterSwitchActiveBuildTarget);
|
||||
@ -1095,7 +1112,11 @@ namespace WeChatWASM
|
||||
}
|
||||
#endif
|
||||
#if TUANJIE_2022_3_OR_NEWER
|
||||
if (EditorUserBuildSettings.activeBuildTarget != BuildTarget.WeixinMiniGame)
|
||||
if (EditorUserBuildSettings.activeBuildTarget != BuildTarget.WeixinMiniGame
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
&& EditorUserBuildSettings.activeBuildTarget != BuildTarget.PlayableAds
|
||||
#endif
|
||||
)
|
||||
{
|
||||
UnityEngine.Debug.LogFormat("[Builder] Current target is: {0}, switching to: {1}", EditorUserBuildSettings.activeBuildTarget, BuildTarget.WeixinMiniGame);
|
||||
if (!EditorUserBuildSettings.SwitchActiveBuildTarget(BuildTargetGroup.WeixinMiniGame, BuildTarget.WeixinMiniGame))
|
||||
@ -1106,8 +1127,11 @@ namespace WeChatWASM
|
||||
}
|
||||
|
||||
var projDir = Path.Combine(config.ProjectConf.DST, webglDir);
|
||||
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
var result = BuildPipeline.BuildPlayer(GetScenePaths(), projDir, BuildTarget.PlayableAds, option);
|
||||
#else
|
||||
var result = BuildPipeline.BuildPlayer(GetScenePaths(), projDir, BuildTarget.WeixinMiniGame, option);
|
||||
#endif
|
||||
if (result.summary.result != UnityEditor.Build.Reporting.BuildResult.Succeeded)
|
||||
{
|
||||
UnityEngine.Debug.LogFormat("[Builder] BuildPlayer failed. emscriptenArgs:{0}", PlayerSettings.WeixinMiniGame.emscriptenArgs);
|
||||
@ -2246,7 +2270,9 @@ namespace WeChatWASM
|
||||
{
|
||||
var importer = AssetImporter.GetAtPath(jsLibs[i]) as PluginImporter;
|
||||
bool value = i == index;
|
||||
#if PLATFORM_WEIXINMINIGAME
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.PlayableAds, value);
|
||||
#elif PLATFORM_WEIXINMINIGAME
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, value);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, value);
|
||||
|
||||
@ -2,7 +2,7 @@ namespace WeChatWASM
|
||||
{
|
||||
public class WXPluginVersion
|
||||
{
|
||||
public static string pluginVersion = "202509290859"; // 这一行不要改他,导出的时候会自动替换
|
||||
public static string pluginVersion = "202510170804"; // 这一行不要改他,导出的时候会自动替换
|
||||
}
|
||||
|
||||
public class WXPluginConf
|
||||
|
||||
Binary file not shown.
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 93723579001384b129318180a62c6a67
|
||||
guid: 8b9c0f036b5e75c4b5c2bd0008279aaf
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -10,7 +10,9 @@ internal class DisableKeyboardInput : MonoBehaviour
|
||||
private static void OnGameLaunch()
|
||||
{
|
||||
#if !UNITY_EDITOR
|
||||
#if PLATFORM_WEIXINMINIGAME
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
PlayableAdsInput.mobileKeyboardSupport = false;
|
||||
#elif PLATFORM_WEIXINMINIGAME
|
||||
WeixinMiniGameInput.mobileKeyboardSupport = false;
|
||||
#elif PLATFORM_WEBGL
|
||||
#if UNITY_2022_1_OR_NEWER
|
||||
|
||||
Binary file not shown.
Binary file not shown.
@ -1137,6 +1137,7 @@ namespace WeChatWASM
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region PageManager
|
||||
/// <summary>
|
||||
/// [[PageManager](https://developers.weixin.qq.com/minigame/dev/api/open-api/openlink/PageManager.html) wx.createPageManager()](https://developers.weixin.qq.com/minigame/dev/api/open-api/openlink/wx.createPageManager.html)
|
||||
/// 需要基础库: `3.6.7`
|
||||
@ -1162,16 +1163,22 @@ namespace WeChatWASM
|
||||
{
|
||||
return WXSDKManagerHandler.Instance.CreatePageManager();
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 上报
|
||||
/// <returns></returns>
|
||||
public static WXMiniReportManager GetMiniReportManager(GetMiniReportManagerParam param)
|
||||
{
|
||||
return WXSDKManagerHandler.Instance.GetMiniReportManager(param);
|
||||
}
|
||||
#endregion
|
||||
|
||||
#region 社交特色能力
|
||||
public static WXRankManager GetRankManager() {
|
||||
return WXSDKManagerHandler.Instance.GetRankManager();
|
||||
}
|
||||
}
|
||||
}
|
||||
#endregion
|
||||
|
||||
#endif
|
||||
|
||||
@ -149,7 +149,9 @@ public class WXTouchInputOverride : BaseInput
|
||||
Text text = selectedObject.GetComponent<Text>();
|
||||
if (text != null)
|
||||
{
|
||||
#if PLATFORM_WEIXINMINIGAME
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
PlayableAdsInput.mobileKeyboardSupport = true;
|
||||
#elif PLATFORM_WEIXINMINIGAME
|
||||
WeixinMiniGameInput.mobileKeyboardSupport = true;
|
||||
#elif PLATFORM_WEBGL
|
||||
#if UNITY_2022_1_OR_NEWER
|
||||
@ -159,7 +161,9 @@ public class WXTouchInputOverride : BaseInput
|
||||
}
|
||||
else
|
||||
{
|
||||
#if PLATFORM_WEIXINMINIGAME
|
||||
#if PLATFORM_PLAYABLEADS
|
||||
PlayableAdsInput.mobileKeyboardSupport = false;
|
||||
#elif PLATFORM_WEIXINMINIGAME
|
||||
WeixinMiniGameInput.mobileKeyboardSupport = false;
|
||||
#elif PLATFORM_WEBGL
|
||||
#if UNITY_2022_1_OR_NEWER
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b7132564c24436e8048a4465069567e0
|
||||
guid: b48e86d050d6e538b9fb080be5c71831
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2f0493d399ddd89de3e37b6fd219295a
|
||||
guid: 88c547f0739faf7d0a9a11c54b9aebf6
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 19fbff52d3f937309904be7d88442b46
|
||||
guid: 03b79a86eeb6d388a2a7388cae97d4b7
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e96d2f2492c20d9baabf710a39050fa6
|
||||
guid: 4a80f00b3dabe9d2950d087312ec7afb
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d5850b79b74733e60e4bc968f43e34ce
|
||||
guid: bee1e78a3581802717e0a94b980da25c
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e311ea77d55e48cf771bb958df038cb8
|
||||
guid: 4cfc01737db26e1dca1f2b3f21741da1
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 321674d6999d6e4f72502919a024ae47
|
||||
guid: 722dd5cc5fe25c54dcbfb742f0423c29
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5f0283ce6e74654d26ecbbb0cad2fcff
|
||||
guid: 7327198152a604f9fc6da592aa07db43
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7e4d157bb30aad9aba61bccc9203ffec
|
||||
guid: 8dfad691df2042ef9991c6e699dfbe08
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e3acb3cc737aa70e4845e5c560ffafba
|
||||
guid: c905d2dd6aff41fe44de5081a48bec22
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 99c122eaef8e9d03eb906e60d65ad588
|
||||
guid: 8e1cb99eeb17669f40171f9eedfa8bfb
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 115033a5d8de230274d316638093558c
|
||||
guid: 2317c697b6b426074c92a1fe2eb5325a
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e749c68a04ef1cb08e44262de84e891c
|
||||
guid: 23007f7e38bd46b227ae4cfd431a38f3
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ab1b700fc48c7df91b63d6b1c9937cd2
|
||||
guid: 7ee3779ec6cc9c38dc72e90e96881ffb
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d69712ea685fbc04c13d15856ac1bf33
|
||||
guid: 29822a3f187f8651f1b0241555aa63f8
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7e7a618eb17b7100970abf5348314420
|
||||
guid: 0310efe0330dd67984d375300f0bcdc3
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 16489267ae4749c126e78c63b0044590
|
||||
guid: f23e29889017610caf8a823e5e68ea11
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: db7030bbfb3e28c37ee175a3a2096ca9
|
||||
guid: 082d6aeea28c29daf13365582793099c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 93d0f184ee14fe8ec8867bb9536091f8
|
||||
guid: d1af00e3e204112b21d63177bb90c7f7
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 540eeb0db7b4f9944fa934612724ec8e
|
||||
guid: e9671d02654d3b5bc73687d52db836e8
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c6e2dbe8427187a5772c9a367146c9c6
|
||||
guid: 904a5ad2c3a28bf5b8f1e5db72591360
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 480eaba5d0e9fba14cd0f96c8a01d577
|
||||
guid: ae0e5e9dfac81032446165b6480bf835
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 96849f63090d106e7f9bab4ab34e387a
|
||||
guid: 42c4dc7389d9a6d4b374d316fe9c2521
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 77293401e0648d27a124da847860d3d2
|
||||
guid: 02f240f00de70a82eed1336bcf106de9
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: acd9eed529ed5a7925fb9490eab24eea
|
||||
guid: b5bf4b5aaf92de77b640e69ddb671f3d
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 2ad6b6ab45b17d190d4710083d20bf45
|
||||
guid: 7c2d75698f63c3700bf2fb362a528dfc
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3b19326f824450063dfe63220679360b
|
||||
guid: 1395da8ea903aaacb1bd6dc8a2e6695d
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 25b8bf294162af21eeba03baaaea7fe7
|
||||
guid: d123c9a6aa77b3db6322fa9f7af29090
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a9ca078de6320ad37da86e943465bbbc
|
||||
guid: b00b8ab014a6597d9d28afa39e665a91
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6fd6e4ece31cd7ac1d86218a2caade4d
|
||||
guid: bf1b972d1d54c0bd6cecaad66e346a4f
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 22883bf7eb0c884bd9734f853380f9d8
|
||||
guid: 93ff784317bd1f518a21497e86b0f5d3
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 27d35341e4363f65ea73888793ec3008
|
||||
guid: 3848a198443d1a191a868b95c253fbd2
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 42dedd87b624586ff8d7633278c42330
|
||||
guid: bcbc525bfa3de9cae70a94a87c630082
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 319d91bc2adc72ead6761765daddfc2a
|
||||
guid: 72515583a460fe6f2c3f82a04546dc3c
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 840aa8195d909b9a8ee3a9b9cf1f3f11
|
||||
guid: 34d91788af9ac4816abe4d18407a12ea
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6df7ed62dd7722499c5316c191c06aa9
|
||||
guid: 82fca576d33d349c415b192f20a1332e
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a8df5d6c39dc0708f6a697b5432ecdd4
|
||||
guid: a50402a53573c02b1d02b01adf63ef67
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8bbafe66323f6fb36d71a7a62b529e81
|
||||
guid: 6dea3ebeded99a2359f08d827df3fb66
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8bb5305c99889969d7a397a82c2f1572
|
||||
guid: e81496eb315d71b8cc6d3608d7fa253c
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9d5fd7566690f489ed2b2c4978015d34
|
||||
guid: 4137652b1ad539fea58ec7b11742d921
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -361,7 +361,8 @@ export default {
|
||||
}
|
||||
ClassOnEventLists[className + functionName][id + eventName].push(callback);
|
||||
// WXVideoDecoder OnEvent 不规范 特殊处理
|
||||
if (className === 'WXVideoDecoder') {
|
||||
// update: 2025.9.27: 严重怀疑之前 WXPageManager 压根没有跑通过事件监听,跑到下面去了
|
||||
if (className === 'WXVideoDecoder' || className === 'WXPageManager') {
|
||||
obj[functionName.replace(/^\w/, (a) => a.toLowerCase())](eventName, callback);
|
||||
}
|
||||
else {
|
||||
@ -384,7 +385,8 @@ export default {
|
||||
}
|
||||
ClassOnEventLists[className + functionName][id + eventName].forEach((v) => {
|
||||
|
||||
if (className === 'WXVideoDecoder') {
|
||||
|
||||
if (className === 'WXVideoDecoder' || className === 'WXPageManager') {
|
||||
obj[functionName.replace(/^\w/, (a) => a.toLowerCase())](eventName, v);
|
||||
}
|
||||
else {
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8c0ff5364ae850aa7b2eeb870d858eb1
|
||||
guid: 7aaa7e65d9e3984518ad2472c86beb0d
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 962c91e7ad43367cd696c670a6d39dc5
|
||||
guid: 77a93c44b3856b3827e7be6c65207b20
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7e25fa27d93b17825b5967d9ac216da9
|
||||
guid: 7ad55b77b5c47fafbe4e8324f04e605c
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1d61dbd09acac9154f27c2d80ed797d0
|
||||
guid: 6b67e8eee79e26333d0df6507bb996f5
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 832d56291c8449bce25d6e053b33d17b
|
||||
guid: 3db4d890a94288442299a920e11c86c3
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 16485a2e8e4dd23fdf9ff8f3ba4e96e3
|
||||
guid: 79d47ea9ff327341999311cdca572130
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 9ba65e7714ff90a9d0713536cd385bca
|
||||
guid: 24514d96c5f513ffae75d3633419b31c
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 7a1f93ee1cb07fe4d4589bb891e005ee
|
||||
guid: 87a5125958eb7535347aaa7649f2b614
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ec24a913f6cc4d4d0c91304e3c77ea31
|
||||
guid: 880d1416268bfe905f20903172743e61
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a75459e7537cfdf1ee86162a19a6892e
|
||||
guid: 0a996060ea769983bf65245dd150beae
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 15f8fad6913f740e467ff3992ae495c7
|
||||
guid: 4c839072ee09613dbcddc6be5035ab18
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 28ae23f4a2fde5de097e3073d1ed66f8
|
||||
guid: 82b8313df584092a597336262447faf4
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 23ee91b95613c46ebc77c15662f39eca
|
||||
guid: 949d7758e9694701d33c8f28eea33447
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 773eb89e64436bddc0d780eef22d967b
|
||||
guid: 94e9b0251042ba8835b1cac98aa7ca4c
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 74a37a982984ae7ed7f4e881243157cb
|
||||
guid: f80930afed29d028e211717e09d4e2ac
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 074b80ae98b35aa01183418af8aab1b0
|
||||
guid: 555d95acd5091704b76ae50abfa974c6
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1e01ca8054f81138c5dc52334232b3e5
|
||||
guid: eea3d49650243446945eab7efd5b9492
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e84a1b66e2e470b9cfa58f168eb07c1d
|
||||
guid: bf67d0a53a82b1a6695aa3602781564b
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 5adbbbce0d188fa01b4429a98c0ecb98
|
||||
guid: a795c5e17230cbecc2bfac5118b64133
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cfac9e5c33a3e9b7381573b8e607a46d
|
||||
guid: f092523ed0efed2cd9600aa6ffa16637
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3cf8174af0201e0d3e6e221453e88eb5
|
||||
guid: 4694c954b79701ed3b8df80f0de8c753
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a9bc93c54a8867f2aae3204e62bbc45f
|
||||
guid: 06226446622e4e317edac99e305589d6
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c4e7af29e7c7d3d350ea4dfbd2517f0e
|
||||
guid: 37b3b9c1449ed56b353f6d176dd0b5f4
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: c2371e92da20e494ffed876ae878e15d
|
||||
guid: a942060a158e2a434ea57e7f9b0c6257
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: aafa53a983880c98d10f9b3e4728f919
|
||||
guid: 8390ed1775d5a9d3b0a9792c50ea6f9b
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 86fa1b85ae7e82b11c0b37ddc6a44f18
|
||||
guid: 4c6dd8db6b118aff71e1bfd659bb3433
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b8a911c39f39f04be14f948f1af50c3b
|
||||
guid: 75900d945f3416c98b1ea52769712cd1
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a098a4cd6eea60d629ec6fe4a621ea5b
|
||||
guid: c8aeace801ea33121a6093317f5a7988
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: cf6a4c56e584035f42d803b21e476e52
|
||||
guid: ab26639100c0b4e24f37820ff0cbcce6
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: a283880c6b41b24c9edbac282ce4cdae
|
||||
guid: f8decaaca73adb72911e18eb64fd1b8a
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f75895feb12dcd7b14aad4597133ad9f
|
||||
guid: 744d456913355e4a87aa45588ee40fd9
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: da0c1879b8583d5ee623fe9bc1ff0de0
|
||||
guid: 29335d23c60032743ab545dcb470a1b1
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: aae2ee32081369354f881c5e0e26b62e
|
||||
guid: 916ccd1c863ace02be72086da763aeca
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1e48d5966288d238f5953b81f006bd33
|
||||
guid: e5487dac64b814d72d8f686fc0cc47c0
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 4966400ac0a72144ca172cad8ad878a0
|
||||
guid: ae805ce6166e327d0a6f274750dacc3b
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f225b83a42780018432a188df17c5b3e
|
||||
guid: 80eedefb1a7049084a8bdf51318faf50
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: fd3dc233398c7322d66faadfb8942f7f
|
||||
guid: 392d3159df48278f2dcfc90d39f72878
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: ff14d8f87bb75775dc6710d308a582d7
|
||||
guid: c8b9067a023ed24566e1520422da5a0f
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8a98fd9cf8577b0bebf89fc01bf7d3bd
|
||||
guid: 79037b31bf82cd5ddac828edc3a7efe7
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 18bdac4f81c338e2b69de648b8d0f033
|
||||
guid: 5347aeebd2f09cebe470c4b7dadb9068
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6ea68f7e849c396355f9a17c18a71a72
|
||||
guid: 7dc11ae8602a3a0446f3e07d7a2b0e96
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 41689ec36b3e89f0f0422ddef8844428
|
||||
guid: b2f100658a14591d502c504678877c00
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 80d28e6d7df2e5bd8440712c998e5f68
|
||||
guid: 4f75395450b647dfa5419b8ad21321f2
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user