Auto-publish.

This commit is contained in:
jinfeimo 2025-07-08 11:09:05 +08:00
parent 90fa35a0a0
commit d7e7bbf54e
171 changed files with 467 additions and 272 deletions

7
.DS_Store.meta Normal file
View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 60129ef6779d4ddf9f6bd57df98603b0
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

7
Editor/.DS_Store.meta Normal file
View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 1b005a55eade4a30ef1d03e3aee449e3
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c3320249bd2e17ce322a37b041998ff0
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c113acfee35db6b5c61fd4a76596cfd3
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,43 @@
mergeInto(LibraryManager.library, {
// 定义供 C/C++ 调用的 JS 函数
js_batchRender_malloc: function(data, size, isSync) {
// 直接从 WASM 内存创建视图(零拷贝)
const binaryData = new Uint8Array(Module.HEAPU8.buffer, data, size);
// 转换为标准 ArrayBuffer如果需要复制
const targetBuffer =
binaryData.buffer.slice(binaryData.byteOffset, binaryData.byteOffset + binaryData.byteLength);
//console.log("processBinaryData invoke");
const extBuffer = new ArrayBuffer(1);
const headerBuffer = new ArrayBuffer(8);
const headerBufferView = new DataView(headerBuffer);
headerBufferView.setUint32(0, 0xDEC0DE, true);
headerBufferView.setUint32(4, mtl.ctx.__uid(), true);
const merged = new Uint8Array(headerBuffer.byteLength + targetBuffer.byteLength);
merged.set(new Uint8Array(headerBuffer), 0);
merged.set(new Uint8Array(targetBuffer), headerBuffer.byteLength);
if(!isSync){
mtl.batchRenderAsync(merged.buffer, extBuffer);
return null;
}
const result = mtl.batchRender(merged.buffer, extBuffer).buffer;
if(result.byteLength == 0){
return null;;
}
// 申请内存空间,后续在cpp wasm部分使用记得释放
const ptr = Module._malloc(result.byteLength);
// 将数据拷贝到WASM内存
Module.HEAPU8.set(new Uint8Array(result), ptr);
// 返回结构化的数据信息(指针和长度)
const ret = new DataView(new ArrayBuffer(8));
ret.setUint32(0, ptr, true); // 指针地址4字节
ret.setUint32(4, result.byteLength, true); // 数据长度4字节
// 返回合并后的8字节缓冲区指针记得也要在cpp部分释放
const retPtr = Module._malloc(8);
Module.HEAPU8.set(new Uint8Array(ret.buffer), retPtr);
return retPtr;
},
js_swapWindow: function(){
mtl.swapWindow();
}
});

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: dda1926f3454e003333e8085a4f2c0fd
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
%TAG !u! tag:yousandi.cn,2023:
--- !u!114 &11400000
MonoBehaviour:
m_ObjectHideFlags: 0
@ -13,13 +13,13 @@ MonoBehaviour:
m_Name: MiniGameConfig
m_EditorClassIdentifier:
ProjectConf:
projectName:
Appid:
CDN:
projectName: testtool
Appid: wx58ad6d6ca8525f80
CDN: http://10.9.161.67:8050/testtool
assetLoadType: 0
compressDataPackage: 0
VideoUrl:
DST:
DST: /Users/jinfeimo/wx/testtool
StreamCDN:
bundleHashLength: 32
bundlePathIdentifier: StreamingAssets;
@ -49,8 +49,8 @@ MonoBehaviour:
DevelopBuild: 0
AutoProfile: 0
ScriptOnly: 0
Il2CppOptimizeSize: 1
profilingFuncs: 1
Il2CppOptimizeSize: 0
profilingFuncs: 0
Webgl2: 0
fbslim: 0
DeleteStreamingAssets: 1
@ -59,10 +59,9 @@ MonoBehaviour:
CustomNodePath:
showMonitorSuggestModal: 1
enableProfileStats: 0
enableRenderAnalysis: 0
enableRenderAnalysis: 1
iOSAutoGCInterval: 10000
enableIOSPerformancePlus: 0
brotliMT: 0
CompressTexture:
halfSize: 0
useDXT5: 0

2
Editor/MiniGameConfig.asset.meta Normal file → Executable file
View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: fe134d53b5bcc45a2a2cde4341229134
guid: 1b6e1dfff80bd461fb6d8ac7883aabde
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 11400000

View File

@ -17,8 +17,6 @@ namespace WeChatWASM
public static string projectRootPath;
private static WXPlayableEditorScriptObject config;
private static bool m_EnablePerfTool = false;
private static string _dstCache;
public static bool UseIL2CPP
{
get
@ -34,7 +32,6 @@ namespace WeChatWASM
public WXPlayableSettingsHelper()
{
projectRootPath = System.IO.Path.GetFullPath(Application.dataPath + "/../");
_dstCache = "";
}
public void OnFocus()
@ -156,12 +153,11 @@ namespace WeChatWASM
{
SDKFilePath = Path.Combine(UnityUtil.GetWxSDKRootPath(), "Runtime", "wechat-playable-default", "unity-sdk", "index.js");
config = UnityUtil.GetPlayableEditorConf();
_dstCache = config.ProjectConf.DST;
this.setData("projectName", config.ProjectConf.projectName);
this.setData("appid", config.ProjectConf.Appid);
this.setData("orientation", (int)config.ProjectConf.Orientation);
this.setData("dst", _dstCache);
this.setData("dst", config.ProjectConf.relativeDST);
this.setData("developBuild", config.CompileOptions.DevelopBuild);
this.setData("il2CppOptimizeSize", config.CompileOptions.Il2CppOptimizeSize);
@ -177,8 +173,8 @@ namespace WeChatWASM
config.ProjectConf.projectName = this.getDataInput("projectName");
config.ProjectConf.Appid = this.getDataInput("appid");
config.ProjectConf.Orientation = (WXScreenOritation)this.getDataPop("orientation");
_dstCache = this.getDataInput("dst");
config.ProjectConf.DST = GetAbsolutePath(_dstCache);
config.ProjectConf.relativeDST = this.getDataInput("dst");
config.ProjectConf.DST = GetAbsolutePath(config.ProjectConf.relativeDST);
config.CompileOptions.DevelopBuild = this.getDataCheckbox("developBuild");
config.CompileOptions.Il2CppOptimizeSize = this.getDataCheckbox("il2CppOptimizeSize");

View File

@ -99,6 +99,14 @@ namespace WeChatWASM
#endif
}
}
// 是否使用 iOS Metal 渲染
public static bool UseiOSMetal
{
get
{
return config.CompileOptions.enableiOSMetal;
}
}
// public static void SetPlayableEnabled(bool enabled)
// {
// isPlayableBuild = enabled;
@ -115,6 +123,8 @@ namespace WeChatWASM
if (!isPlayableBuild) {
ProcessWxPerfBinaries();
}
// iOS metal 的相关特性
ProcessWxiOSMetalBinaries();
MakeEnvForLuaAdaptor();
// JSLib
SettingWXTextureMinJSLib();
@ -140,7 +150,7 @@ namespace WeChatWASM
return WXExportError.BUILD_WEBGL_FAILED;
}
dynamic config = isPlayableBuild ? UnityUtil.GetPlayableEditorConf() : UnityUtil.GetEditorConf();
if (config.ProjectConf.DST == string.Empty)
if (config.ProjectConf.relativeDST == string.Empty)
{
Debug.LogError("请先配置游戏导出路径");
return WXExportError.BUILD_WEBGL_FAILED;
@ -400,6 +410,41 @@ namespace WeChatWASM
return true;
}
private static void ProcessWxiOSMetalBinaries()
{
string[] glLibs;
string DS = WXAssetsTextTools.DS;
if (UnityUtil.GetSDKMode() == UnityUtil.SDKMode.Package)
{
glLibs = new string[]
{
$"Packages{DS}com.qq.weixin.minigame{DS}Editor{DS}BuildProfile{DS}lib{DS}libwx-metal-cpp.bc",
$"Packages{DS}com.qq.weixin.minigame{DS}Editor{DS}BuildProfile{DS}lib{DS}mtl_library.jslib",
};
}
else
{
string glLibRootDir = $"Assets{DS}WX-WASM-SDK-V2{DS}Editor{DS}BuildProfile{DS}lib{DS}";
glLibs = new string[]
{
$"{glLibRootDir}libwx-metal-cpp.bc",
$"{glLibRootDir}mtl_library.jslib",
};
}
for (int i = 0; i < glLibs.Length; i++)
{
var importer = AssetImporter.GetAtPath(glLibs[i]) as PluginImporter;
#if PLATFORM_WEIXINMINIGAME
importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, config.CompileOptions.enableiOSMetal);
#else
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, config.CompileOptions.enableiOSMetal);
#endif
// importer.SaveAndReimport();
SetPluginCompatibilityByModifyingMetadataFile(glLibs[i], config.CompileOptions.enableiOSMetal);
}
AssetDatabase.Refresh();
}
private static string GetLuaAdaptorPath(string filename)
{
string DS = WXAssetsTextTools.DS;
@ -523,13 +568,28 @@ namespace WeChatWASM
GraphicsDeviceType[] targets = new GraphicsDeviceType[] { };
#if PLATFORM_WEIXINMINIGAME
PlayerSettings.SetUseDefaultGraphicsAPIs(BuildTarget.WeixinMiniGame, false);
if (config.CompileOptions.Webgl2)
// 启用 iOS Metal 渲染
if (UseiOSMetal)
{
PlayerSettings.SetGraphicsAPIs(BuildTarget.WeixinMiniGame, new GraphicsDeviceType[] { GraphicsDeviceType.OpenGLES3 });
if (config.CompileOptions.Webgl2)
{
PlayerSettings.SetGraphicsAPIs(BuildTarget.WeixinMiniGame, new GraphicsDeviceType[] { GraphicsDeviceType.Metal, GraphicsDeviceType.OpenGLES3 });
}
else
{
PlayerSettings.SetGraphicsAPIs(BuildTarget.WeixinMiniGame, new GraphicsDeviceType[] { GraphicsDeviceType.Metal, GraphicsDeviceType.OpenGLES2 });
}
}
else
else
{
PlayerSettings.SetGraphicsAPIs(BuildTarget.WeixinMiniGame, new GraphicsDeviceType[] { GraphicsDeviceType.OpenGLES2 });
if (config.CompileOptions.Webgl2)
{
PlayerSettings.SetGraphicsAPIs(BuildTarget.WeixinMiniGame, new GraphicsDeviceType[] { GraphicsDeviceType.OpenGLES3 });
}
else
{
PlayerSettings.SetGraphicsAPIs(BuildTarget.WeixinMiniGame, new GraphicsDeviceType[] { GraphicsDeviceType.OpenGLES2 });
}
}
#else
PlayerSettings.SetUseDefaultGraphicsAPIs(BuildTarget.WebGL, false);

View File

@ -54,15 +54,11 @@ namespace WeChatWASM
foldInstantGame = WXConvertCore.IsInstantGameAutoStreaming();
projectRootPath = System.IO.Path.GetFullPath(Application.dataPath + "/../");
_dstCache = "";
}
private static WXEditorScriptObject config;
private static bool m_EnablePerfTool = false;
private static string _dstCache;
public void OnFocus()
{
loadData();
@ -187,8 +183,9 @@ namespace WeChatWASM
this.formCheckbox("il2CppOptimizeSize", "Il2Cpp Optimize Size(?)", "对应于Il2CppCodeGeneration选项勾选时使用OptimizeSize(默认推荐)生成代码小15%左右取消勾选则使用OptimizeSpeed。游戏中大量泛型集合的高频访问建议OptimizeSpeed在使用HybridCLR等第三方组件时只能用OptimizeSpeed。(Dotnet Runtime模式下该选项无效)", !UseIL2CPP);
this.formCheckbox("profilingFuncs", "Profiling Funcs");
this.formCheckbox("profilingMemory", "Profiling Memory");
this.formCheckbox("webgl2", "WebGL2.0");
this.formCheckbox("webgl2", "WebGL2.0(beta)");
this.formCheckbox("iOSPerformancePlus", "iOSPerformancePlus(?)", "是否使用iOS高性能+渲染方案有助于提升渲染兼容性、降低WebContent进程内存");
this.formCheckbox("iOSMetal", "iOSMetal(?)", "是否使用iOSMetal渲染方案");
this.formCheckbox("deleteStreamingAssets", "Clear Streaming Assets");
this.formCheckbox("cleanBuild", "Clean WebGL Build");
// this.formCheckbox("cleanCloudDev", "Clean Cloud Dev");
@ -394,7 +391,6 @@ namespace WeChatWASM
// SDKFilePath = Path.Combine(Application.dataPath, "WX-WASM-SDK-V2", "Runtime", "wechat-default", "unity-sdk", "index.js");
SDKFilePath = Path.Combine(UnityUtil.GetWxSDKRootPath(), "Runtime", "wechat-default", "unity-sdk", "index.js");
config = UnityUtil.GetEditorConf();
_dstCache = config.ProjectConf.DST;
// Instant Game
if (WXConvertCore.IsInstantGameAutoStreaming())
@ -436,7 +432,7 @@ namespace WeChatWASM
this.setData("compressDataPackage", config.ProjectConf.compressDataPackage);
this.setData("videoUrl", config.ProjectConf.VideoUrl);
this.setData("orientation", (int)config.ProjectConf.Orientation);
this.setData("dst", _dstCache);
this.setData("dst", config.ProjectConf.relativeDST);
this.setData("bundleHashLength", config.ProjectConf.bundleHashLength.ToString());
this.setData("bundlePathIdentifier", config.ProjectConf.bundlePathIdentifier);
this.setData("bundleExcludeExtensions", config.ProjectConf.bundleExcludeExtensions);
@ -452,6 +448,7 @@ namespace WeChatWASM
this.setData("customNodePath", config.CompileOptions.CustomNodePath);
this.setData("webgl2", config.CompileOptions.Webgl2);
this.setData("iOSPerformancePlus", config.CompileOptions.enableIOSPerformancePlus);
this.setData("iOSMetal", config.CompileOptions.enableiOSMetal);
this.setData("fbslim", config.CompileOptions.fbslim);
this.setData("useFriendRelation", config.SDKOptions.UseFriendRelation);
this.setData("useMiniGameChat", config.SDKOptions.UseMiniGameChat);
@ -513,8 +510,8 @@ namespace WeChatWASM
config.ProjectConf.compressDataPackage = this.getDataCheckbox("compressDataPackage");
config.ProjectConf.VideoUrl = this.getDataInput("videoUrl");
config.ProjectConf.Orientation = (WXScreenOritation)this.getDataPop("orientation");
_dstCache = this.getDataInput("dst");
config.ProjectConf.DST = GetAbsolutePath(_dstCache);
config.ProjectConf.relativeDST = this.getDataInput("dst");
config.ProjectConf.DST = GetAbsolutePath(config.ProjectConf.relativeDST);
config.ProjectConf.bundleHashLength = int.Parse(this.getDataInput("bundleHashLength"));
config.ProjectConf.bundlePathIdentifier = this.getDataInput("bundlePathIdentifier");
config.ProjectConf.bundleExcludeExtensions = this.getDataInput("bundleExcludeExtensions");
@ -530,6 +527,7 @@ namespace WeChatWASM
config.CompileOptions.CustomNodePath = this.getDataInput("customNodePath");
config.CompileOptions.Webgl2 = this.getDataCheckbox("webgl2");
config.CompileOptions.enableIOSPerformancePlus = this.getDataCheckbox("iOSPerformancePlus");
config.CompileOptions.enableiOSMetal = this.getDataCheckbox("iOSMetal");
config.CompileOptions.fbslim = this.getDataCheckbox("fbslim");
config.SDKOptions.UseFriendRelation = this.getDataCheckbox("useFriendRelation");
config.SDKOptions.UseMiniGameChat = this.getDataCheckbox("useMiniGameChat");

View File

@ -125,6 +125,10 @@ namespace WeChatWASM
{
return WXConvertCore.UseIL2CPP;
});
WXExtEnvDef.RegisterAction("WXConvertCore.UseiOSMetal", (args) =>
{
return WXConvertCore.UseiOSMetal;
});
WXExtEnvDef.RegisterAction("UnityUtil.GetWxSDKRootPath", (args) =>
{
#if UNITY_2018

View File

@ -2,7 +2,7 @@ namespace WeChatWASM
{
public class WXPluginVersion
{
public static string pluginVersion = "202507040702"; // 这一行不要改他,导出的时候会自动替换
public static string pluginVersion = "202507080307"; // 这一行不要改他,导出的时候会自动替换
}
public class WXPluginConf

Binary file not shown.

View File

@ -381,6 +381,11 @@
视频url
</summary>
</member>
<member name="F:WeChatWASM.WXProjectConf.relativeDST">
<summary>
导出路径(相对路径)
</summary>
</member>
<member name="F:WeChatWASM.WXProjectConf.DST">
<summary>
导出路径(绝对路径)
@ -643,6 +648,11 @@
是否使用iOS高性能Plus
</summary>
</member>
<member name="F:WeChatWASM.CompileOptions.enableiOSMetal">
<summary>
是否使用iOS metal指令流
</summary>
</member>
<member name="F:WeChatWASM.CompileOptions.brotliMT">
<summary>
是否使用brotli多线程压缩
@ -773,6 +783,11 @@
试玩 appid
</summary>
</member>
<member name="F:WeChatWASM.WXPlayableProjectConf.relativeDST">
<summary>
导出路径(相对路径)
</summary>
</member>
<member name="F:WeChatWASM.WXPlayableProjectConf.DST">
<summary>
导出路径(绝对路径)

View File

@ -1,7 +1,7 @@
fileFormatVersion: 2
guid: 6beb6d8e857e38f8b6bebe7de23ff41d
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
guid: 683bd2d2ee0a44061b7f04d6af659e86
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

7
Runtime/.DS_Store.meta Normal file
View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: f6e8169409bc1be60cb10379ea4c5873
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

2
Runtime/Plugins.meta Normal file → Executable file
View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 286898b0c16c642bd8c6d58655b56db7
guid: 0828fb1bb54b34e6897965a8465ee9aa
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: b40f142afc8e0655fff7afc99d98e354
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -1699,26 +1699,6 @@
如果返回的是字符串,则数据在这个字段
</summary>
</member>
<member name="F:WeChatWASM.WXStatInfo.mode">
<summary>
文件的类型和存取的权限,对应 POSIX stat.st_mode
</summary>
</member>
<member name="F:WeChatWASM.WXStatInfo.size">
<summary>
文件大小单位B对应 POSIX stat.st_size
</summary>
</member>
<member name="F:WeChatWASM.WXStatInfo.lastAccessedTime">
<summary>
文件最近一次被存取或被执行的时间UNIX 时间戳,对应 POSIX stat.st_atime
</summary>
</member>
<member name="F:WeChatWASM.WXStatInfo.lastModifiedTime">
<summary>
文件最后一次被修改的时间UNIX 时间戳,对应 POSIX stat.st_mtime
</summary>
</member>
<member name="F:WeChatWASM.WXStat.path">
<summary>
文件的路径
@ -3129,21 +3109,6 @@
 是否结束
</summary>
</member>
<member name="P:WeChatWASM.NotifyMiniProgramPlayableStatusOption.complete">
<summary>
接口调用结束的回调函数(调用成功、失败都会执行)
</summary>
</member>
<member name="P:WeChatWASM.NotifyMiniProgramPlayableStatusOption.fail">
<summary>
接口调用失败的回调函数
</summary>
</member>
<member name="P:WeChatWASM.NotifyMiniProgramPlayableStatusOption.success">
<summary>
接口调用成功的回调函数
</summary>
</member>
<member name="F:WeChatWASM.Gamepad.axes">
<summary>
一个表示控制器设备上存在的坐标轴的数组 (比如控制器摇杆)。

View File

@ -1,7 +1,7 @@
fileFormatVersion: 2
guid: e59aba6a2f1488c6f45969265dada192
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
guid: 24b29384eaa41428ab813a2114ce2e82
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -1705,26 +1705,6 @@
如果返回的是字符串,则数据在这个字段
</summary>
</member>
<member name="F:WeChatWASM.WXStatInfo.mode">
<summary>
文件的类型和存取的权限,对应 POSIX stat.st_mode
</summary>
</member>
<member name="F:WeChatWASM.WXStatInfo.size">
<summary>
文件大小单位B对应 POSIX stat.st_size
</summary>
</member>
<member name="F:WeChatWASM.WXStatInfo.lastAccessedTime">
<summary>
文件最近一次被存取或被执行的时间UNIX 时间戳,对应 POSIX stat.st_atime
</summary>
</member>
<member name="F:WeChatWASM.WXStatInfo.lastModifiedTime">
<summary>
文件最后一次被修改的时间UNIX 时间戳,对应 POSIX stat.st_mtime
</summary>
</member>
<member name="F:WeChatWASM.WXStat.path">
<summary>
文件的路径
@ -3135,21 +3115,6 @@
 是否结束
</summary>
</member>
<member name="P:WeChatWASM.NotifyMiniProgramPlayableStatusOption.complete">
<summary>
接口调用结束的回调函数(调用成功、失败都会执行)
</summary>
</member>
<member name="P:WeChatWASM.NotifyMiniProgramPlayableStatusOption.fail">
<summary>
接口调用失败的回调函数
</summary>
</member>
<member name="P:WeChatWASM.NotifyMiniProgramPlayableStatusOption.success">
<summary>
接口调用成功的回调函数
</summary>
</member>
<member name="F:WeChatWASM.Gamepad.axes">
<summary>
一个表示控制器设备上存在的坐标轴的数组 (比如控制器摇杆)。

View File

@ -1,7 +1,7 @@
fileFormatVersion: 2
guid: a4f84d1484728bdc7f8b22c245c12954
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
guid: 39e0805eca2014f3c8e095e963dea76e
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 0e6acd9ccf6a605a036774de58e8cb68
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a96ae464b31742345ef4b4a229fe3ee3
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c6bbd04b7a4ef722e8d61da14bbfaf90
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 378ec1b70057a8909e635a6c9cfa5119
guid: 1315af51d9e812bc4781a573742045c0
DefaultImporter:
externalObjects: {}
userData:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: eaafd2ef8d825f1088f52f56b9d21963
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: a8f53e76ee95be214ea1249dcc9419bf
guid: bd981e60fa7ae24830efc478efc5fd22
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 66d4b85cb66bacf3fc36f5caa9f6f8b7
guid: 4f91084d75d9e9fade09dc994467f34d
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: e02c628e8bad9aba6f5531994e701970
guid: 24356cd3802c185963f32186b10118ac
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 6f16e832e45d21cc28a59e833675ccfb
guid: df1853ae64147ff74958c841d6dced33
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 1edbaea1008dad370de91fed0c7eefc8
guid: 6654f2de10388e21c584c6b456f7ed6e
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 532906ec8c2ca80ed2815c15f7fdc580
guid: b8ca2522300992c1ab25345faccd64e3
DefaultImporter:
externalObjects: {}
userData:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: cd56fbe2ebde1bfa884abef0b4b2a15e
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 660447fce852d801d3f7ab0b534cd629
guid: 5b7b1bba80841f0ce92c595eb542d953
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 8c545d75be250f0164da77626a281617
guid: 71257f5a5e00de13b5d8bf4e163f9e01
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: dc3d136eff52d98cd58a57c7f3adf005
guid: 293f72d71f072fbb652afe616b35bf02
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 5a4bcd98fdaa6d2e66832185a7f4e6cb
guid: 8e474b7b70a3e4d41b569da1fccc8a7f
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 10b4e6af4a614ab30ca79431ed4a9e6b
guid: 8efd1507590e41432884f7e26d9144de
DefaultImporter:
externalObjects: {}
userData:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 343b87d30905e288ee8763e23245f08a
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 3dceebe8c0e7a910e2df376215b148f5
guid: 2e5755eb53ba6d6aca37f9d7de9a8999
DefaultImporter:
externalObjects: {}
userData:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: cdd03053cbd2cfd653ed68fd41373ece
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3608db8ccc451f57f0e72d39fe89c472
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: e23f4dc5b5ffa854c9f1cc3524237dd0
guid: 7853284b572a217a8b3f2bc9b2502a20
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 5b39ffd407f49c5a1c6eb206bfb01c3c
guid: e7ed73111da04e797b2134adac97e9df
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 411d2b61a4a2a9eace42f3dbb562e241
guid: 9d91b34f6fc3674d10459a75ce5bd198
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 345ca6b02b18f9c36d6a07137a78810f
guid: 79f8b2d23a304c5934b0dbe60cef2e83
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 6f6a245b02b4bda5690f88e0d1f26a3d
guid: ff2788c3cb876f04f8ef3f1352f325f8
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 4722e9a80cc4e6fc3edf76e7d52564f1
guid: 2638bdf39ea875e2ea8deeead3a5810b
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 602d8945591893d084f14f5e24e98d8c
guid: ce5dd670a8a1e609bdc3ddd82c4bd347
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: a9501b27f06a23b8e16c4d5afc0a5c16
guid: b1d68a219487eeb274f2d4b2fd01988d
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 5c4ff6528699ce46ddbc56d5189c53bc
guid: 6caa99c93c680540dece07d762bc4da8
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: b03526b6664a531be62c5490b0892d60
guid: 854adae1d6df56ad97ec551d034774c5
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 1bcc8974c13993522116dacf529ec16e
guid: e494cc35771982a70d469190d4abdbb8
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 6d474b23e62f46f39af785c5f910cad8
guid: a1a0688b12ad8ce602b4c0df5a2933e6
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: bf001c18157d62a6c5fb9aa9d610d764
guid: 3c06c3785a78f4f6788daab3a9e018fe
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: fc3c43f003739e59dc1a51e852228a4a
guid: fab35d94e0ec63d01a0cc01f6168a756
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 6a79e063522f60c30dcae456beb8884a
guid: e2851fb425d629910fd28ab730768fdb
DefaultImporter:
externalObjects: {}
userData:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a4ac42294f78095bb3b766be664735cb
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 7444ac36dac0b588df9bf586978fae3b
guid: d329175c64ef04de60ac4628206572ca
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 983b82415ec1a5caa54cf1028d785385
guid: ca436ef0b3428c65f7fe9bdee41d1dd9
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 3078e40408b54ad1c1e5981629982baa
guid: b4341f4e4f4f58b0c61c07e2125f9259
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 30795643b1525685f39f1a035bd1e056
guid: 1a86545af6eda30320c2112ec7a9a116
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: c7184616c88850d801def3d93f9c523e
guid: 81f34025f8b4e0654a037360f32f7646
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 7cef52a0aa314b89a0e1dd850517a2d8
guid: 22f73a7d2ad829d92213df6c2c40e6e5
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 38e7a50ebda469ac6612c46892d6585c
guid: feb7be47e12082393f3d75633ab68e3a
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 830e938adedeae555149a69d6c5bd904
guid: dcbae472f486fd2982ca5c519fa64e77
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: f9ac97d5924faecd30597b74f60446a9
guid: 11c5325ca2d8c7cd01a79c5b1776ff37
DefaultImporter:
externalObjects: {}
userData:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 9977bbc7793207a2171435e8341df166
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: cbe44576537d2973ae48a49e8ba8e287
guid: 7174c9aedf9b59ab28215a15826f12c7
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 5b4775686c1735fe238af26151b8bed3
guid: 54389b4272928eb5df95e5b3ebf9d5b7
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 68382a90b68393338016e34b0cac6bc5
guid: 96d66060d86d0dd3648eda661765ee4b
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 0736cf927e54cbbcd9e64d2af3ca0230
guid: 369eadc644a9e3d6dce4cb56054acb4a
DefaultImporter:
externalObjects: {}
userData:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 26ee2d27d9e0ae7f8bb696b8c1bb4e35
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 785a92bb3eae3f6e9a46601a513f241b
guid: 446237683987b0b2fa89b78f1861de9b
DefaultImporter:
externalObjects: {}
userData:

View File

@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: e2de943a06884a5955f520e6d8efbc40
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 33d5356c74dbd3c6d752bfcc3d655632
guid: 0aa39281db6feac854699348447c1ca5
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 4a94bac747e8abccf28e03c39053599b
guid: 683ad225163e283fd709ff7070b7981d
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 1daa7cc23f9073d6f73834d0649d8934
guid: 12e8ceb7984ad0b58258ad376c21db49
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: e8248c9c263161f6f550a099f4c47674
guid: 1e5e1c62c6b0d8710d793d16b185c234
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 7e4b67579af96dda090d96f7cedc4bb8
guid: 209ac5823569e245fd1cd06b718a85cd
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 2e7009d6060ce6fbfa2997ac6a4c9ae0
guid: e4e3d8c06870f2cf1ac95ffdc3e0d36c
DefaultImporter:
externalObjects: {}
userData:

View File

@ -32,7 +32,7 @@
]
},
"Layout": {
"version": "1.0.7",
"version": "1.0.15",
"provider": "wx7a727ff7d940bb3f",
"contexts": [
{

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 923940b24460036e8969d1f70f4f7d2c
guid: f77f402aeb05dfb2fbf51d4b3933abfa
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 733833739fc4e14615e059f7a0c38c69
guid: 4af99e63150a476c224cf52fc45a5c72
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: c6775b5c126d0eb1e18e38578a54242a
guid: 221d6936b9ccb28016d9554e62020244
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 3edff6f212cb40a6703971e51d30d523
guid: 51cb569523c717f09f00f831f29fe5e9
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 97b8126a02bbd666b9a02acf215ae4d7
guid: 1ec9224fb4c49403670e1ed9716c6f5e
DefaultImporter:
externalObjects: {}
userData:

View File

@ -56,7 +56,6 @@ function LayoutWithTplAndStyle(xml, style) {
Layout.clear();
Layout.init(xml, style);
Layout.layout(sharedContext);
console.log(Layout);
}
// 仅仅渲染一些提示,比如数据加载中、当前无授权等
function renderTips(tips = '') {

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: cf058ca7a04d9121ecd9a1d1d6c5cc26
guid: bbafef817239096747eb77643b5de3b7
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: ae4ee3d7afba38c7389e13e6bb9a1d5e
guid: 993f37e321856dd67493935341fd2a53
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: fdefc5e8ccb3a81cbf8fb999d6402b29
guid: 3f0c0ff441ffb9b043c24d0dbcf7c0cc
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 0bba4a8ffd59075d1f54288a129a8379
guid: 737ca11c8812ed95d287402a0c0ec490
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: d5dd5a522a0dbe015665379e80852764
guid: eaaee4d2d7719bdc8818a669b93d61e3
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 5ef53c0fa0fd693a47f6055a176d2fda
guid: c7c0bbb41574d0d35124e0b47e5c3ed0
DefaultImporter:
externalObjects: {}
userData:

Some files were not shown because too many files have changed in this diff Show More