Auto-publish.

This commit is contained in:
nebulaliu 2025-09-03 20:07:40 +08:00
parent 39e40b33bf
commit 2cc27f4293
192 changed files with 1240 additions and 626 deletions

View File

@ -1,8 +1,8 @@
fileFormatVersion: 2
guid: DytLvSj8UC9CKob0XUy9Y3usKDmX8US1YgxYmBxa1iAZ/I8JbM5wZwE=
guid: cccbd1d680cfe34fa1fef9e4875e5a12
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
assetBundleVariant:

View File

@ -1,8 +1,8 @@
fileFormatVersion: 2
guid: XSwesi78AS28ymfR2HEhHpEBAC2DHupI1hIKP7HApjHRaZgGw+DTwWI=
guid: cccbd1d680cfe34fa1fef9e3375e5a12
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
assetBundleVariant:

View File

@ -2,26 +2,21 @@ 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);
const targetBuffer = new Uint8Array(Module.HEAPU8.buffer, data, size);
//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);
const extBuffer = new ArrayBuffer(1);
if(!isSync){
mtl.batchRenderAsync(merged.buffer, extBuffer);
mtl.batchRenderAsync(targetBuffer, extBuffer);
return null;
}
const result = mtl.batchRender(merged.buffer, extBuffer).buffer;
if(result.byteLength == 0){
return null;;
const response = mtl.batchRender(targetBuffer, extBuffer);
if (!response) {
return null;
}
const result = response.buffer;
if(!result || result.byteLength == 0){
return null;
}
// 申请内存空间,后续在cpp wasm部分使用记得释放
const ptr = Module._malloc(result.byteLength);

View File

@ -107,6 +107,14 @@ namespace WeChatWASM
return config.CompileOptions.enableiOSMetal;
}
}
// 用于replaceRules判断是否需要注入相关的修改
public static bool UseEmscriptenGLX
{
get
{
return config.CompileOptions.enableEmscriptenGLX;
}
}
// public static void SetPlayableEnabled(bool enabled)
// {
// isPlayableBuild = enabled;
@ -126,6 +134,8 @@ namespace WeChatWASM
}
// iOS metal 的相关特性
ProcessWxiOSMetalBinaries();
// emscriptenglx的相关特性
ProcessWxEmscriptenGLXBinaries();
MakeEnvForLuaAdaptor();
// JSLib
SettingWXTextureMinJSLib();
@ -371,6 +381,59 @@ namespace WeChatWASM
AssetDatabase.Refresh();
}
private static void ProcessWxEmscriptenGLXBinaries()
{
string[] glLibs;
string DS = WXAssetsTextTools.DS;
if (UnityUtil.GetSDKMode() == UnityUtil.SDKMode.Package)
{
glLibs = new string[]
{
$"Packages{DS}com.qq.weixin.minigame{DS}Runtime{DS}Plugins{DS}libemscriptenglx.a",
$"Packages{DS}com.qq.weixin.minigame{DS}Runtime{DS}Plugins{DS}libemscriptenglx_2021.a",
};
}
else
{
string glLibRootDir = $"Assets{DS}WX-WASM-SDK-V2{DS}Runtime{DS}Plugins{DS}";
// 下方顺序不要变动
glLibs = new string[]
{
$"{glLibRootDir}libemscriptenglx.a",
$"{glLibRootDir}libemscriptenglx_2021.a",
};
}
{
// unity2022, tuanjie lib引入
bool showEnableGLX2022Plugin = config.CompileOptions.enableEmscriptenGLX && IsCompatibleWithUnity202203OrNewer();
var glx2022Importer = AssetImporter.GetAtPath(glLibs[0]) as PluginImporter;
#if PLATFORM_WEIXINMINIGAME
glx2022Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, showEnableGLX2022Plugin);
#else
glx2022Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, showEnableGLX2022Plugin);
#endif
SetPluginCompatibilityByModifyingMetadataFile(glLibs[0], showEnableGLX2022Plugin);
}
{
// unity2021 lib引入
bool showEnableGLX2021Plugin = config.CompileOptions.enableEmscriptenGLX && IsCompatibleWithUnity202102To202203();
var glx2021Importer = AssetImporter.GetAtPath(glLibs[1]) as PluginImporter;
#if PLATFORM_WEIXINMINIGAME
glx2021Importer.SetCompatibleWithPlatform(BuildTarget.WeixinMiniGame, showEnableGLX2021Plugin);
#else
glx2021Importer.SetCompatibleWithPlatform(BuildTarget.WebGL, showEnableGLX2021Plugin);
#endif
SetPluginCompatibilityByModifyingMetadataFile(glLibs[1], showEnableGLX2021Plugin);
}
AssetDatabase.Refresh();
}
/**
* Lua Adaptor Settings.
*/
@ -1395,8 +1458,7 @@ namespace WeChatWASM
var buildTemplate = new BuildTemplate(
Path.Combine(UnityUtil.GetWxSDKRootPath(), "Runtime", defaultTemplateDir),
Path.Combine(Application.dataPath, "WX-WASM-SDK-V2", "Editor", "template"),
Path.Combine(config.ProjectConf.DST, miniGameDir),
true
Path.Combine(config.ProjectConf.DST, miniGameDir)
);
buildTemplate.start();
// FIX: 2021.2版本生成symbol有bug导出时生成symbol报错有symbol才copy
@ -1983,7 +2045,7 @@ namespace WeChatWASM
config.ProjectConf.bundleHashLength.ToString(),
bundlePathIdentifierStr,
excludeFileExtensionsStr,
config.CompileOptions.enableiOSMetal ? "5" : (config.CompileOptions.Webgl2 ? "2" : "1"),
config.CompileOptions.Webgl2 ? "2" : "1",
Application.unityVersion,
WXExtEnvDef.pluginVersion,
config.ProjectConf.dataFileSubPrefix,
@ -2032,7 +2094,9 @@ namespace WeChatWASM
config.ProjectConf.MemorySize.ToString(),
config.SDKOptions.disableMultiTouch ? "true" : "false",
// Perfstream暂时设为false
"false"
"false",
config.CompileOptions.enableEmscriptenGLX ? "true" : "false",
config.CompileOptions.enableiOSMetal ? "true" : "false"
});
List<Rule> replaceList = new List<Rule>(replaceArrayList);

View File

@ -185,6 +185,7 @@ namespace WeChatWASM
this.formCheckbox("profilingMemory", "Profiling Memory");
this.formCheckbox("webgl2", "WebGL2.0");
this.formCheckbox("iOSPerformancePlus", "iOSPerformancePlus(?)", "是否使用iOS高性能+渲染方案有助于提升渲染兼容性、降低WebContent进程内存");
this.formCheckbox("EmscriptenGLX", "EmscriptenGLX(?)", "是否使用EmscriptenGLX渲染方案");
// this.formCheckbox("iOSMetal", "iOSMetal(?)", "是否使用iOSMetal渲染方案需要开启iOS高性能+模式有助于提升运行性能降低iOS功耗");
this.formCheckbox("deleteStreamingAssets", "Clear Streaming Assets");
this.formCheckbox("cleanBuild", "Clean WebGL Build");
@ -449,6 +450,7 @@ namespace WeChatWASM
this.setData("webgl2", config.CompileOptions.Webgl2);
this.setData("iOSPerformancePlus", config.CompileOptions.enableIOSPerformancePlus);
this.setData("iOSMetal", config.CompileOptions.enableiOSMetal);
this.setData("EmscriptenGLX", config.CompileOptions.enableEmscriptenGLX);
this.setData("fbslim", config.CompileOptions.fbslim);
this.setData("useFriendRelation", config.SDKOptions.UseFriendRelation);
this.setData("useMiniGameChat", config.SDKOptions.UseMiniGameChat);
@ -528,6 +530,7 @@ namespace WeChatWASM
config.CompileOptions.Webgl2 = this.getDataCheckbox("webgl2");
config.CompileOptions.enableIOSPerformancePlus = this.getDataCheckbox("iOSPerformancePlus");
config.CompileOptions.enableiOSMetal = this.getDataCheckbox("iOSMetal");
config.CompileOptions.enableEmscriptenGLX = this.getDataCheckbox("EmscriptenGLX");
config.CompileOptions.fbslim = this.getDataCheckbox("fbslim");
config.SDKOptions.UseFriendRelation = this.getDataCheckbox("useFriendRelation");
config.SDKOptions.UseMiniGameChat = this.getDataCheckbox("useMiniGameChat");

View File

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

View File

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

Binary file not shown.

View File

@ -653,6 +653,7 @@
是否使用iOS metal指令流
</summary>
</member>
<!-- Badly formed XML comment ignored for member "F:WeChatWASM.CompileOptions.enableEmscriptenGLX" -->
<member name="F:WeChatWASM.CompileOptions.brotliMT">
<summary>
是否使用brotli多线程压缩

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 4e2a80fab2cbe76fc8f8a9443ecab609
guid: bb8a778be6593416c16256fae8f129b9
DefaultImporter:
externalObjects: {}
userData:

View File

@ -416,11 +416,11 @@ mergeInto(LibraryManager.library, {
WXVideoPlay: function(id) {
window.WXWASMSDK.WXVideoPlay(_WXPointer_stringify_adaptor(id));
},
WXVideoAddListener: function(id,key) {
WXVideoAddListener: function(id, key) {
window.WXWASMSDK.WXVideoAddListener(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key));
},
WXVideoDestroy: function(id) {
window.WXWASMSDK.WXVideoDestroy(_WXPointer_stringify_adaptor(id));
WXVideoDestroy: function(id, isLast) {
window.WXWASMSDK.WXVideoDestroy(_WXPointer_stringify_adaptor(id), isLast);
},
WXVideoExitFullScreen: function(id) {
window.WXWASMSDK.WXVideoExitFullScreen(_WXPointer_stringify_adaptor(id));

View File

@ -98,18 +98,19 @@ var WXAssetBundleLibrary = {
value: function get(key) {
var temp = this.hash.get(key);
if (temp !== undefined) {
if(temp.cleanable && unityNamespace.isAndroid && temp.time + this.ttl * 1000 < Date.now()){
try {
var check_path = WXFS.fd2wxStream.get(key).path
if(!GameGlobal.manager.getCachePath(check_path)){
throw new Error("No such file in the wx cache system")
}
WXFS.fs.statSync(check_path)
} catch (e) {
GameGlobal.manager.reporter.wxAssetBundle.reportEmptyContent({stage: WXFS.WXABErrorSteps['kCacheGet'], path: check_path, error: !!e ? e.toString() : 'unknown'});
GameGlobal.manager.Logger.pluginLog('[WXAssetBundle]Android statSync path: ' + check_path + ' error: ' + (!!e ? e.toString() : 'unknown'));
}
}
// 忽略permission denied屏蔽上报
// if(temp.cleanable && unityNamespace.isAndroid && temp.time + this.ttl * 1000 < Date.now()){
// try {
// var check_path = WXFS.fd2wxStream.get(key).path
// if(!GameGlobal.manager.getCachePath(check_path)){
// throw new Error("No such file in the wx cache system")
// }
// WXFS.fs.statSync(check_path)
// } catch (e) {
// GameGlobal.manager.reporter.wxAssetBundle.reportEmptyContent({stage: WXFS.WXABErrorSteps['kCacheGet'], path: check_path, error: !!e ? e.toString() : 'unknown'});
// GameGlobal.manager.Logger.pluginLog('[WXAssetBundle]Android statSync path: ' + check_path + ' error: ' + (!!e ? e.toString() : 'unknown'));
// }
// }
this.hash.delete(key);
temp.time = Date.now();
this.hash.set(key, temp);

Binary file not shown.

View File

@ -0,0 +1,69 @@
fileFormatVersion: 2
guid: cccbd1d680cfe34fa1fef9e4875e5f23
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 1
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
: Any
second:
enabled: 0
settings:
Exclude Editor: 0
Exclude Linux64: 0
Exclude OSXUniversal: 0
Exclude WeixinMiniGame: 0
Exclude Win: 0
Exclude Win64: 0
- first:
Any:
second:
enabled: 0
settings: {}
- first:
Editor: Editor
second:
enabled: 1
settings:
CPU: AnyCPU
DefaultValueInitialized: true
OS: AnyOS
- first:
Standalone: Linux64
second:
enabled: 1
settings:
CPU: AnyCPU
- first:
Standalone: OSXUniversal
second:
enabled: 1
settings:
CPU: AnyCPU
- first:
Standalone: Win
second:
enabled: 1
settings:
CPU: AnyCPU
- first:
Standalone: Win64
second:
enabled: 1
settings:
CPU: AnyCPU
- first:
WeixinMiniGame: WeixinMiniGame
second:
enabled: 1
settings: {}
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -0,0 +1,93 @@
fileFormatVersion: 2
guid: 89ccba97a8e2991dc502c741bc8cd6c6
PluginImporter:
externalObjects: {}
serializedVersion: 2
iconMap: {}
executionOrder: {}
defineConstraints: []
isPreloaded: 0
isOverridable: 1
isExplicitlyReferenced: 0
validateReferences: 1
platformData:
- first:
: Any
second:
enabled: 0
settings:
Exclude Android: 1
Exclude Editor: 1
Exclude Linux64: 1
Exclude OSXUniversal: 1
Exclude WebGL: 1
Exclude Win: 1
Exclude Win64: 1
Exclude WindowsStoreApps: 1
- first:
Android: Android
second:
enabled: 0
settings:
AndroidSharedLibraryType: Executable
CPU: ARMv7
- first:
Any:
second:
enabled: 0
settings: {}
- first:
Editor: Editor
second:
enabled: 0
settings:
CPU: AnyCPU
DefaultValueInitialized: true
OS: AnyOS
- first:
Standalone: Linux64
second:
enabled: 0
settings:
CPU: None
- first:
Standalone: OSXUniversal
second:
enabled: 0
settings:
CPU: None
- first:
Standalone: Win
second:
enabled: 0
settings:
CPU: None
- first:
Standalone: Win64
second:
enabled: 0
settings:
CPU: None
- first:
WebGL: WebGL
second:
enabled: 0
settings: {}
- first:
WeixinMiniGame: WeixinMiniGame
second:
enabled: 0
settings: {}
- first:
Windows Store Apps: WindowsStoreApps
second:
enabled: 0
settings:
CPU: AnyCPU
DontProcess: false
PlaceholderPath:
SDK: AnySDK
ScriptingBackend: AnyScriptingBackend
userData:
assetBundleName:
assetBundleVariant:

Binary file not shown.

View File

@ -1749,116 +1749,126 @@
视频的总时长,单位为秒
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.x">
<summary>
视频的左上角横坐标
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.y">
<summary>
视频的左上角纵坐标
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.width">
<summary>
视频的宽度
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.height">
<summary>
视频的高度
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.src">
<member name="F:WeChatWASM.CreateVideoOption.src">
<summary>
视频的资源地址
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.poster">
<summary>
视频的封面
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.initialTime">
<summary>
视频的初始播放位置,单位为 s 秒
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.playbackRate">
<summary>
视频的播放速率,有效值有 0.5、0.8、1.0、1.25、1.5
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.live">
<summary>
视频是否为直播
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.objectFit">
<summary>
视频的缩放模式
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.controls">
<summary>
视频是否显示控件
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.showProgress">
<summary>
是否显示视频底部进度条
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.showProgressInControlMode">
<summary>
是否显示控制栏的进度条
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.backgroundColor">
<summary>
视频背景颜色
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.autoplay">
<member name="F:WeChatWASM.CreateVideoOption.autoplay">
<summary>
视频是否自动播放
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.loop">
<member name="F:WeChatWASM.CreateVideoOption.backgroundColor">
<summary>
视频是否是否循环播放
视频背景颜色
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.muted">
<member name="F:WeChatWASM.CreateVideoOption.controls">
<summary>
视频是否禁音播放
视频是否显示控件
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.obeyMuteSwitch">
<summary>
视频是否遵循系统静音开关设置仅iOS
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.enableProgressGesture">
<summary>
是否启用手势控制播放进度
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.enablePlayGesture">
<member name="F:WeChatWASM.CreateVideoOption.enablePlayGesture">
<summary>
是否开启双击播放的手势
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.showCenterPlayBtn">
<member name="F:WeChatWASM.CreateVideoOption.enableProgressGesture">
<summary>
是否启用手势控制播放进度
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.height">
<summary>
视频的高度
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.initialTime">
<summary>
视频的初始播放位置,单位为 s 秒
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.live">
<summary>
视频是否为直播
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.loop">
<summary>
视频是否是否循环播放
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.muted">
<summary>
视频是否禁音播放
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.obeyMuteSwitch">
<summary>
视频是否遵循系统静音开关设置仅iOS
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.objectFit">
<summary>
视频的缩放模式
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.playbackRate">
<summary>
视频的播放速率,有效值有 0.5、0.8、1.0、1.25、1.5
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.poster">
<summary>
视频的封面
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.showCenterPlayBtn">
<summary>
是否显示视频中央的播放按钮
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.underGameView">
<member name="F:WeChatWASM.CreateVideoOption.showProgress">
<summary>
是否显示视频底部进度条
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.showProgressInControlMode">
<summary>
是否显示控制栏的进度条
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.width">
<summary>
视频的宽度
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.x">
<summary>
视频的左上角横坐标
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.y">
<summary>
视频的左上角纵坐标
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.underGameView">
<summary>
视频是否显示在游戏画布之下
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.autoPauseIfNavigate">
<summary>
视频跳转后自动暂停播放
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.autoPauseIfOpenNative">
<summary>
视频跳转原生页后自动暂停播放
</summary>
</member>
<member name="F:WeChatWASM.EnvVersion.develop">
<summary>
开发版
@ -3129,6 +3139,100 @@
选填部分活动、功能允许接收自定义query参数请参阅渠道说明默认可不填
</summary>
</member>
<member name="F:WeChatWASM.VirtualPaymentError.errMsg">
错误信息
| 错误码 | 错误信息 | 说明 |
| - | - | - |
| 1001 | | 参数错误 |
| -1 | | 支付失败 |
| -2 | | 支付取消 |
| -4 | | 风控拦截 |
| -5 | | 开通签约结果未知 |
| -15001 | | 参数错误,具体原因见err_msg |
| -15002 | | outTradeNo重复使用,请换新单号重试 |
| -15003 | | 系统错误 |
| -15004 | | currencyType错误,目前只能填CNY |
| -15005 | | 用户态签名signature错误 |
| -15006 | | 支付签名paySig错误 |
| -15007 | | session_key过期 |
| -15008 | | 二级商户进件未完成 |
| -15009 | | 代币未发布 |
| -15010 | | 道具productId未发布 |
| -15011 | | 现网版本的env只能是0,不能填1(沙盒环境) |
| -15012 | | 调用米大师失败导致关单,请换新单号重试 |
| -15013 | | goodsPrice道具价格错误 |
| -15014 | | 道具/代币发布未生效禁止下单大概10分钟后生效 |
| -15016 | | signData格式有问题 |
| -15017 | | 此商家涉嫌违规,收款功能已被限制,暂无法支付。商家可以登录微信商户平台/微信支付商家助手小程序查看原因和解决方案 |
| -15018 | | 代币或者道具productId审核不通过 |
| -15019 | | 调微信报商户受限,商家可以登录微信商户平台/微信支付商家助手小程序查看原因和解决方案 |
| -15020 | | 操作过快,请稍候再试 |
| -15021 | | 小程序被限频交易 |
</member>
<member name="F:WeChatWASM.VirtualPaymentError.errCode">
错误码
| 错误码 | 错误信息 | 说明 |
| - | - | - |
| 1001 | | 参数错误 |
| -1 | | 支付失败 |
| -2 | | 支付取消 |
| -4 | | 风控拦截 |
| -5 | | 开通签约结果未知 |
| -15001 | | 参数错误,具体原因见err_msg |
| -15002 | | outTradeNo重复使用,请换新单号重试 |
| -15003 | | 系统错误 |
| -15004 | | currencyType错误,目前只能填CNY |
| -15005 | | 用户态签名signature错误 |
| -15006 | | 支付签名paySig错误 |
| -15007 | | session_key过期 |
| -15008 | | 二级商户进件未完成 |
| -15009 | | 代币未发布 |
| -15010 | | 道具productId未发布 |
| -15011 | | 现网版本的env只能是0,不能填1(沙盒环境) |
| -15012 | | 调用米大师失败导致关单,请换新单号重试 |
| -15013 | | goodsPrice道具价格错误 |
| -15014 | | 道具/代币发布未生效禁止下单大概10分钟后生效 |
| -15016 | | signData格式有问题 |
| -15017 | | 此商家涉嫌违规,收款功能已被限制,暂无法支付。商家可以登录微信商户平台/微信支付商家助手小程序查看原因和解决方案 |
| -15018 | | 代币或者道具productId审核不通过 |
| -15019 | | 调微信报商户受限,商家可以登录微信商户平台/微信支付商家助手小程序查看原因和解决方案 |
| -15020 | | 操作过快,请稍候再试 |
| -15021 | | 小程序被限频交易 |
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentFailCallbackErr.errCode">
错误码
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentFailCallbackErr.errMsg">
错误信息
</member>
<member name="F:WeChatWASM.RequestCommonPaymentSuccessCallbackResult.errMsg">
调用成功信息
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentOption.mode">
<summary>
支付的类型, 不同的支付类型有各自额外要传的附加参数
可选值:
- 'short_series_goods': 道具直购;
- 'short_series_coin': 代币充值;
</summary>
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentOption.paySig">
<summary>
支付签名, 详见[《签名详解》](https://developers.weixin.qq.com/miniprogram/dev/platform-capabilities/industry/virtual-payment.html)
</summary>
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentOption.signData">
<summary>
具体支付参数见signData, 该参数需以string形式传递, 例如signData: '{"offerId":"123","buyQuantity":1,"env":0,"currencyType":"CNY","productId":"testproductId","goodsPrice":10,"outTradeNo":"xxxxxx","attach":"testdata"}'
</summary>
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentOption.signature">
<summary>
用户态签名, 详见[《签名详解》](https://developers.weixin.qq.com/miniprogram/dev/platform-capabilities/industry/virtual-payment.html)
</summary>
</member>
<member name="F:WeChatWASM.Gamepad.axes">
<summary>
一个表示控制器设备上存在的坐标轴的数组 (比如控制器摇杆)。
@ -8509,22 +8613,44 @@
显示用户信息按钮
</summary>
</member>
<member name="T:WeChatWASM.WXVideo">
<summary>
微信小游戏视频组件
</summary>
</member>
<member name="F:WeChatWASM.WXVideo._Dict">
<summary>
视频实例字典 (内部使用,请不要访问)
</summary>
</member>
<member name="F:WeChatWASM.WXVideo.instanceId">
<summary>
视频实例ID
</summary>
</member>
<member name="F:WeChatWASM.WXVideo.param">
<summary>
视频创建参数
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.#ctor(System.String,WeChatWASM.CreateVideoOption)">
<summary>
创建视频实例
</summary>
<param name="id">实例ID</param>
<param name="param">创建参数</param>
</member>
<member name="M:WeChatWASM.WXVideo.InitializeProperties">
<summary>
初始化属性
</summary>
</member>
<member name="M:WeChatWASM.WXVideo._HandleCallBack(WeChatWASM.WXVideoCallback)">
<summary>
内部函数,请不要调用
</summary>
<param name="key"></param>
</member>
<member name="P:WeChatWASM.WXVideo.src">
<summary>
视频的资源地址
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.poster">
<summary>
视频的封面
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.x">
<summary>
视频的左上角横坐标
@ -8545,9 +8671,69 @@
视频的高度
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.isPlaying">
<member name="P:WeChatWASM.WXVideo.src">
<summary>
Gets a value indicating whether 是否正在播放
视频的资源地址
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.poster">
<summary>
视频的封面
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.live">
<summary>
是否为直播
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.objectFit">
<summary>
当视频大小与 video 容器大小不一致时,视频的表现形式
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.controls">
<summary>
是否显示默认播放控件(播放/暂停按钮、播放进度、时间)
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.showProgress">
<summary>
是否显示播放进度
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.showProgressInControlMode">
<summary>
在非全屏模式下,是否开启亮度和音量调节手势
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.backgroundColor">
<summary>
视频的背景色
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.obeyMuteSwitch">
<summary>
是否遵循系统静音开关
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.enableProgressGesture">
<summary>
是否开启控制进度的手势
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.enablePlayGesture">
<summary>
是否开启播放手势
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.showCenterPlayBtn">
<summary>
是否显示视频中间的播放按钮
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.Destroy">
<summary>
销毁当前实例
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.Play">
@ -8555,44 +8741,31 @@
播放视频
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnPlay(System.Action)">
<member name="M:WeChatWASM.WXVideo.Pause">
<summary>
监听视频播放事件
暂停
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OffPlay(System.Action)">
<member name="M:WeChatWASM.WXVideo.Stop">
<summary>
取消监听视频播放事件,action 为空表示移除全部事件监听
停止视频
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnEnded(System.Action)">
<member name="M:WeChatWASM.WXVideo.Seek(System.Int32)">
<summary>
监听视频播放到末尾事件
视频跳转
</summary>
<param name="time">视频跳转到指定位置,单位为 s 秒</param>
</member>
<member name="M:WeChatWASM.WXVideo.OffEnded(System.Action)">
<member name="M:WeChatWASM.WXVideo.RequestFullScreen(System.Int32)">
<summary>
取消监听视频播放到末尾事件
视频全屏
</summary>
<param name="direction">设置全屏时视频的方向 0: 正常竖向, 90: 屏幕逆时针90度 . -90: 屏幕顺时针90度</param>
</member>
<member name="M:WeChatWASM.WXVideo.OnError(System.Action)">
<member name="M:WeChatWASM.WXVideo.ExitFullScreen">
<summary>
监听视频错误事件
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OffError(System.Action)">
<summary>
取消监听视频错误事件,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnPause(System.Action)">
<summary>
监听视频暂停事件
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OffPause(System.Action)">
<summary>
取消监听视频暂停事件,action 为空表示移除全部事件监听
视频退出全屏
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnWaiting(System.Action)">
@ -8605,36 +8778,45 @@
取消监听视频由于需要缓冲下一帧而停止时触发,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.Destroy">
<member name="M:WeChatWASM.WXVideo.OnProgress(System.Action{WeChatWASM.WXVideoProgress})">
<summary>
销毁当前实例
监听视频下载(缓冲)事件
</summary>
<param name="action"></param>
</member>
<member name="M:WeChatWASM.WXVideo.OffProgress(System.Action{WeChatWASM.WXVideoProgress})">
<summary>
取消监听视频下载(缓冲)事件 ,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.ExitFullScreen">
<member name="M:WeChatWASM.WXVideo.OnPlay(System.Action)">
<summary>
视频退出全屏
监听视频播放事件
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.Pause">
<member name="M:WeChatWASM.WXVideo.OffPlay(System.Action)">
<summary>
暂停
取消监听视频播放事件,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.RequestFullScreen(System.Int32)">
<member name="M:WeChatWASM.WXVideo.OnPause(System.Action)">
<summary>
视频全屏
监听视频暂停事件
</summary>
<param name="direction">设置全屏时视频的方向 0: 正常竖向, 90: 屏幕逆时针90度 . -90: 屏幕顺时针90度</param>
</member>
<member name="M:WeChatWASM.WXVideo.Seek(System.Int32)">
<member name="M:WeChatWASM.WXVideo.OffPause(System.Action)">
<summary>
视频跳转
取消监听视频暂停事件,action 为空表示移除全部事件监听
</summary>
<param name="time">视频跳转到指定位置,单位为 s 秒</param>
</member>
<member name="M:WeChatWASM.WXVideo.Stop">
<member name="M:WeChatWASM.WXVideo.OnEnded(System.Action)">
<summary>
停止视频
监听视频播放到末尾事件
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OffEnded(System.Action)">
<summary>
取消监听视频播放到末尾事件
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnTimeUpdate(System.Action{WeChatWASM.WXVideoTimeUpdate})">
@ -8648,15 +8830,14 @@
取消监听视频播放进度更新事件,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnProgress(System.Action{WeChatWASM.WXVideoProgress})">
<member name="M:WeChatWASM.WXVideo.OnError(System.Action{WeChatWASM.WXVideoError})">
<summary>
监听视频下载(缓冲)事件
监听视频错误事件
</summary>
<param name="action"></param>
</member>
<member name="M:WeChatWASM.WXVideo.OffProgress(System.Action{WeChatWASM.WXVideoProgress})">
<member name="M:WeChatWASM.WXVideo.OffError(System.Action{WeChatWASM.WXVideoError})">
<summary>
取消监听视频下载(缓冲)事件 ,action 为空表示移除全部事件监听
取消监听视频错误事件,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideoDecoder.GetFrameData">

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 744bf12ecf3dfaa699dd812a15f33b22
guid: c1f29c84ed5ae117c73f5e231c95be52
DefaultImporter:
externalObjects: {}
userData:

Binary file not shown.

View File

@ -1755,116 +1755,126 @@
视频的总时长,单位为秒
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.x">
<summary>
视频的左上角横坐标
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.y">
<summary>
视频的左上角纵坐标
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.width">
<summary>
视频的宽度
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.height">
<summary>
视频的高度
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.src">
<member name="F:WeChatWASM.CreateVideoOption.src">
<summary>
视频的资源地址
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.poster">
<summary>
视频的封面
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.initialTime">
<summary>
视频的初始播放位置,单位为 s 秒
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.playbackRate">
<summary>
视频的播放速率,有效值有 0.5、0.8、1.0、1.25、1.5
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.live">
<summary>
视频是否为直播
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.objectFit">
<summary>
视频的缩放模式
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.controls">
<summary>
视频是否显示控件
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.showProgress">
<summary>
是否显示视频底部进度条
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.showProgressInControlMode">
<summary>
是否显示控制栏的进度条
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.backgroundColor">
<summary>
视频背景颜色
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.autoplay">
<member name="F:WeChatWASM.CreateVideoOption.autoplay">
<summary>
视频是否自动播放
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.loop">
<member name="F:WeChatWASM.CreateVideoOption.backgroundColor">
<summary>
视频是否是否循环播放
视频背景颜色
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.muted">
<member name="F:WeChatWASM.CreateVideoOption.controls">
<summary>
视频是否禁音播放
视频是否显示控件
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.obeyMuteSwitch">
<summary>
视频是否遵循系统静音开关设置仅iOS
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.enableProgressGesture">
<summary>
是否启用手势控制播放进度
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.enablePlayGesture">
<member name="F:WeChatWASM.CreateVideoOption.enablePlayGesture">
<summary>
是否开启双击播放的手势
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.showCenterPlayBtn">
<member name="F:WeChatWASM.CreateVideoOption.enableProgressGesture">
<summary>
是否启用手势控制播放进度
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.height">
<summary>
视频的高度
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.initialTime">
<summary>
视频的初始播放位置,单位为 s 秒
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.live">
<summary>
视频是否为直播
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.loop">
<summary>
视频是否是否循环播放
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.muted">
<summary>
视频是否禁音播放
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.obeyMuteSwitch">
<summary>
视频是否遵循系统静音开关设置仅iOS
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.objectFit">
<summary>
视频的缩放模式
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.playbackRate">
<summary>
视频的播放速率,有效值有 0.5、0.8、1.0、1.25、1.5
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.poster">
<summary>
视频的封面
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.showCenterPlayBtn">
<summary>
是否显示视频中央的播放按钮
</summary>
</member>
<member name="F:WeChatWASM.WXCreateVideoParam.underGameView">
<member name="F:WeChatWASM.CreateVideoOption.showProgress">
<summary>
是否显示视频底部进度条
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.showProgressInControlMode">
<summary>
是否显示控制栏的进度条
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.width">
<summary>
视频的宽度
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.x">
<summary>
视频的左上角横坐标
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.y">
<summary>
视频的左上角纵坐标
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.underGameView">
<summary>
视频是否显示在游戏画布之下
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.autoPauseIfNavigate">
<summary>
视频跳转后自动暂停播放
</summary>
</member>
<member name="F:WeChatWASM.CreateVideoOption.autoPauseIfOpenNative">
<summary>
视频跳转原生页后自动暂停播放
</summary>
</member>
<member name="F:WeChatWASM.EnvVersion.develop">
<summary>
开发版
@ -3135,6 +3145,100 @@
选填部分活动、功能允许接收自定义query参数请参阅渠道说明默认可不填
</summary>
</member>
<member name="F:WeChatWASM.VirtualPaymentError.errMsg">
错误信息
| 错误码 | 错误信息 | 说明 |
| - | - | - |
| 1001 | | 参数错误 |
| -1 | | 支付失败 |
| -2 | | 支付取消 |
| -4 | | 风控拦截 |
| -5 | | 开通签约结果未知 |
| -15001 | | 参数错误,具体原因见err_msg |
| -15002 | | outTradeNo重复使用,请换新单号重试 |
| -15003 | | 系统错误 |
| -15004 | | currencyType错误,目前只能填CNY |
| -15005 | | 用户态签名signature错误 |
| -15006 | | 支付签名paySig错误 |
| -15007 | | session_key过期 |
| -15008 | | 二级商户进件未完成 |
| -15009 | | 代币未发布 |
| -15010 | | 道具productId未发布 |
| -15011 | | 现网版本的env只能是0,不能填1(沙盒环境) |
| -15012 | | 调用米大师失败导致关单,请换新单号重试 |
| -15013 | | goodsPrice道具价格错误 |
| -15014 | | 道具/代币发布未生效禁止下单大概10分钟后生效 |
| -15016 | | signData格式有问题 |
| -15017 | | 此商家涉嫌违规,收款功能已被限制,暂无法支付。商家可以登录微信商户平台/微信支付商家助手小程序查看原因和解决方案 |
| -15018 | | 代币或者道具productId审核不通过 |
| -15019 | | 调微信报商户受限,商家可以登录微信商户平台/微信支付商家助手小程序查看原因和解决方案 |
| -15020 | | 操作过快,请稍候再试 |
| -15021 | | 小程序被限频交易 |
</member>
<member name="F:WeChatWASM.VirtualPaymentError.errCode">
错误码
| 错误码 | 错误信息 | 说明 |
| - | - | - |
| 1001 | | 参数错误 |
| -1 | | 支付失败 |
| -2 | | 支付取消 |
| -4 | | 风控拦截 |
| -5 | | 开通签约结果未知 |
| -15001 | | 参数错误,具体原因见err_msg |
| -15002 | | outTradeNo重复使用,请换新单号重试 |
| -15003 | | 系统错误 |
| -15004 | | currencyType错误,目前只能填CNY |
| -15005 | | 用户态签名signature错误 |
| -15006 | | 支付签名paySig错误 |
| -15007 | | session_key过期 |
| -15008 | | 二级商户进件未完成 |
| -15009 | | 代币未发布 |
| -15010 | | 道具productId未发布 |
| -15011 | | 现网版本的env只能是0,不能填1(沙盒环境) |
| -15012 | | 调用米大师失败导致关单,请换新单号重试 |
| -15013 | | goodsPrice道具价格错误 |
| -15014 | | 道具/代币发布未生效禁止下单大概10分钟后生效 |
| -15016 | | signData格式有问题 |
| -15017 | | 此商家涉嫌违规,收款功能已被限制,暂无法支付。商家可以登录微信商户平台/微信支付商家助手小程序查看原因和解决方案 |
| -15018 | | 代币或者道具productId审核不通过 |
| -15019 | | 调微信报商户受限,商家可以登录微信商户平台/微信支付商家助手小程序查看原因和解决方案 |
| -15020 | | 操作过快,请稍候再试 |
| -15021 | | 小程序被限频交易 |
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentFailCallbackErr.errCode">
错误码
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentFailCallbackErr.errMsg">
错误信息
</member>
<member name="F:WeChatWASM.RequestCommonPaymentSuccessCallbackResult.errMsg">
调用成功信息
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentOption.mode">
<summary>
支付的类型, 不同的支付类型有各自额外要传的附加参数
可选值:
- 'short_series_goods': 道具直购;
- 'short_series_coin': 代币充值;
</summary>
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentOption.paySig">
<summary>
支付签名, 详见[《签名详解》](https://developers.weixin.qq.com/miniprogram/dev/platform-capabilities/industry/virtual-payment.html)
</summary>
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentOption.signData">
<summary>
具体支付参数见signData, 该参数需以string形式传递, 例如signData: '{"offerId":"123","buyQuantity":1,"env":0,"currencyType":"CNY","productId":"testproductId","goodsPrice":10,"outTradeNo":"xxxxxx","attach":"testdata"}'
</summary>
</member>
<member name="F:WeChatWASM.RequestVirtualPaymentOption.signature">
<summary>
用户态签名, 详见[《签名详解》](https://developers.weixin.qq.com/miniprogram/dev/platform-capabilities/industry/virtual-payment.html)
</summary>
</member>
<member name="F:WeChatWASM.Gamepad.axes">
<summary>
一个表示控制器设备上存在的坐标轴的数组 (比如控制器摇杆)。
@ -8515,22 +8619,44 @@
显示用户信息按钮
</summary>
</member>
<member name="T:WeChatWASM.WXVideo">
<summary>
微信小游戏视频组件
</summary>
</member>
<member name="F:WeChatWASM.WXVideo._Dict">
<summary>
视频实例字典 (内部使用,请不要访问)
</summary>
</member>
<member name="F:WeChatWASM.WXVideo.instanceId">
<summary>
视频实例ID
</summary>
</member>
<member name="F:WeChatWASM.WXVideo.param">
<summary>
视频创建参数
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.#ctor(System.String,WeChatWASM.CreateVideoOption)">
<summary>
创建视频实例
</summary>
<param name="id">实例ID</param>
<param name="param">创建参数</param>
</member>
<member name="M:WeChatWASM.WXVideo.InitializeProperties">
<summary>
初始化属性
</summary>
</member>
<member name="M:WeChatWASM.WXVideo._HandleCallBack(WeChatWASM.WXVideoCallback)">
<summary>
内部函数,请不要调用
</summary>
<param name="key"></param>
</member>
<member name="P:WeChatWASM.WXVideo.src">
<summary>
视频的资源地址
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.poster">
<summary>
视频的封面
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.x">
<summary>
视频的左上角横坐标
@ -8551,9 +8677,69 @@
视频的高度
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.isPlaying">
<member name="P:WeChatWASM.WXVideo.src">
<summary>
Gets a value indicating whether 是否正在播放
视频的资源地址
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.poster">
<summary>
视频的封面
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.live">
<summary>
是否为直播
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.objectFit">
<summary>
当视频大小与 video 容器大小不一致时,视频的表现形式
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.controls">
<summary>
是否显示默认播放控件(播放/暂停按钮、播放进度、时间)
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.showProgress">
<summary>
是否显示播放进度
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.showProgressInControlMode">
<summary>
在非全屏模式下,是否开启亮度和音量调节手势
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.backgroundColor">
<summary>
视频的背景色
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.obeyMuteSwitch">
<summary>
是否遵循系统静音开关
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.enableProgressGesture">
<summary>
是否开启控制进度的手势
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.enablePlayGesture">
<summary>
是否开启播放手势
</summary>
</member>
<member name="P:WeChatWASM.WXVideo.showCenterPlayBtn">
<summary>
是否显示视频中间的播放按钮
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.Destroy">
<summary>
销毁当前实例
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.Play">
@ -8561,44 +8747,31 @@
播放视频
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnPlay(System.Action)">
<member name="M:WeChatWASM.WXVideo.Pause">
<summary>
监听视频播放事件
暂停
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OffPlay(System.Action)">
<member name="M:WeChatWASM.WXVideo.Stop">
<summary>
取消监听视频播放事件,action 为空表示移除全部事件监听
停止视频
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnEnded(System.Action)">
<member name="M:WeChatWASM.WXVideo.Seek(System.Int32)">
<summary>
监听视频播放到末尾事件
视频跳转
</summary>
<param name="time">视频跳转到指定位置,单位为 s 秒</param>
</member>
<member name="M:WeChatWASM.WXVideo.OffEnded(System.Action)">
<member name="M:WeChatWASM.WXVideo.RequestFullScreen(System.Int32)">
<summary>
取消监听视频播放到末尾事件
视频全屏
</summary>
<param name="direction">设置全屏时视频的方向 0: 正常竖向, 90: 屏幕逆时针90度 . -90: 屏幕顺时针90度</param>
</member>
<member name="M:WeChatWASM.WXVideo.OnError(System.Action)">
<member name="M:WeChatWASM.WXVideo.ExitFullScreen">
<summary>
监听视频错误事件
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OffError(System.Action)">
<summary>
取消监听视频错误事件,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnPause(System.Action)">
<summary>
监听视频暂停事件
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OffPause(System.Action)">
<summary>
取消监听视频暂停事件,action 为空表示移除全部事件监听
视频退出全屏
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnWaiting(System.Action)">
@ -8611,36 +8784,45 @@
取消监听视频由于需要缓冲下一帧而停止时触发,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.Destroy">
<member name="M:WeChatWASM.WXVideo.OnProgress(System.Action{WeChatWASM.WXVideoProgress})">
<summary>
销毁当前实例
监听视频下载(缓冲)事件
</summary>
<param name="action"></param>
</member>
<member name="M:WeChatWASM.WXVideo.OffProgress(System.Action{WeChatWASM.WXVideoProgress})">
<summary>
取消监听视频下载(缓冲)事件 ,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.ExitFullScreen">
<member name="M:WeChatWASM.WXVideo.OnPlay(System.Action)">
<summary>
视频退出全屏
监听视频播放事件
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.Pause">
<member name="M:WeChatWASM.WXVideo.OffPlay(System.Action)">
<summary>
暂停
取消监听视频播放事件,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.RequestFullScreen(System.Int32)">
<member name="M:WeChatWASM.WXVideo.OnPause(System.Action)">
<summary>
视频全屏
监听视频暂停事件
</summary>
<param name="direction">设置全屏时视频的方向 0: 正常竖向, 90: 屏幕逆时针90度 . -90: 屏幕顺时针90度</param>
</member>
<member name="M:WeChatWASM.WXVideo.Seek(System.Int32)">
<member name="M:WeChatWASM.WXVideo.OffPause(System.Action)">
<summary>
视频跳转
取消监听视频暂停事件,action 为空表示移除全部事件监听
</summary>
<param name="time">视频跳转到指定位置,单位为 s 秒</param>
</member>
<member name="M:WeChatWASM.WXVideo.Stop">
<member name="M:WeChatWASM.WXVideo.OnEnded(System.Action)">
<summary>
停止视频
监听视频播放到末尾事件
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OffEnded(System.Action)">
<summary>
取消监听视频播放到末尾事件
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnTimeUpdate(System.Action{WeChatWASM.WXVideoTimeUpdate})">
@ -8654,15 +8836,14 @@
取消监听视频播放进度更新事件,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideo.OnProgress(System.Action{WeChatWASM.WXVideoProgress})">
<member name="M:WeChatWASM.WXVideo.OnError(System.Action{WeChatWASM.WXVideoError})">
<summary>
监听视频下载(缓冲)事件
监听视频错误事件
</summary>
<param name="action"></param>
</member>
<member name="M:WeChatWASM.WXVideo.OffProgress(System.Action{WeChatWASM.WXVideoProgress})">
<member name="M:WeChatWASM.WXVideo.OffError(System.Action{WeChatWASM.WXVideoError})">
<summary>
取消监听视频下载(缓冲)事件 ,action 为空表示移除全部事件监听
取消监听视频错误事件,action 为空表示移除全部事件监听
</summary>
</member>
<member name="M:WeChatWASM.WXVideoDecoder.GetFrameData">

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 00bce541fac34af9181e2dc507ef6680
guid: 8981b6a9fb4180b0cc7e7b26fb262c44
DefaultImporter:
externalObjects: {}
userData:

View File

@ -535,7 +535,7 @@ namespace WeChatWASM
/// </summary>
/// <param name="param"></param>
/// <returns></returns>
public static WXVideo CreateVideo(WXCreateVideoParam param)
public static WXVideo CreateVideo(CreateVideoOption param)
{
return WXSDKManagerHandler.Instance.CreateVideo(param);
}
@ -1127,6 +1127,15 @@ namespace WeChatWASM
WXSDKManagerHandler.Instance.NotifyMiniProgramPlayableStatus(option);
}
#endregion
#region
/// <summary>
/// 请求虚拟支付
/// </summary>
public static void RequestVirtualPayment(RequestVirtualPaymentOption option)
{
WXSDKManagerHandler.Instance.RequestVirtualPayment(option);
}
#endregion
/// <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)

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 72b139033b80b9d6b99085dfc8bc2a49
guid: ab982eec569ffd8d249da27636c24216
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: a997306c2732066bba544aa059476b08
guid: 7dbfc0907c2bba76ee3c4f3fb4bfdd59
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: ebbc2640a5b6186f28f1b7605fbabab7
guid: 64610d0e6e9143afb13257b2fc79213a
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: fd42866e6c5266b7e4359f2543a1fec8
guid: bf2076d15b963a7d4f36f185db5c84a9
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 9cd04a9e88b74649448d33f0cd13031e
guid: c9da055836e019cea3cc7391c80d472d
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: c611738fcc7802f4d0a2c44863e28ee8
guid: 6863faf4e5bdd70ed25943a9004cbc46
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 434a16c5ea815113890c5d6f58c6c7ca
guid: 6160cdf383420fd97b3f956188769ce6
DefaultImporter:
externalObjects: {}
userData:

View File

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

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: ac4244e6a18805d144af9149f834e0a1
guid: 124136293e2a7a2fbcaef2bc3118198d
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 2bf22c2d04a9e7d9f297501c1323ac4d
guid: a8604b61fa73c33bd2626fbd0d0935e6
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 8570e6b4206b6d7d341446244a6c4da7
guid: c3a6e909f71213b75969c29ccee4b1f8
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 7eaa133708b8be10e36a5ebe9452e572
guid: 6f283fac8baf889f4304379f82b68e8c
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 5d03bc8e8d87086243a0a65794f51bd6
guid: 03505ba2b9a9255c3c5ef6e7ee89150c
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: d5b36e6b6d042ee0548fa62635223b58
guid: 5ab17fe598f9bc6b1288251f6145511c
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 140fee18982d4e45623dd3a1e66ac75e
guid: 152731788ecf36c9fa7aac024d13572c
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 659e2b43f55112843ee9c6407128bac6
guid: f6786990f3c77a70a15f416ffc43c30b
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: e1c372ff8f4195bc75114c9554eaff6f
guid: b3430188d44622533a133d9656b8c5da
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 2fa6a51b71803dc08b295c766489b9ea
guid: 7bbe2c40a1b3528a0329048b459433c9
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 1484f1e87b79ffa93541f61a84b1893f
guid: 04785bf5f49283decbc35564da81816b
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 345eb4b995090af85b5e5ba6a3a0515a
guid: 6369cd96776a94876f3e2bde0fb805cd
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: b38adae15bfe35672bce4821ca5930db
guid: 56ff4f1ac0cdda4580f7494755008dcb
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: a775d3ea945670380658bc11adcc9728
guid: b328b46f9d91d963f390ccd3c0f1569e
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 163cfa54d38fa37b54e9b08c88273927
guid: 670fae670a4d6de663ad7c4ed5cf7064
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1018,6 +1018,9 @@ export default {
if (WEBAudio.audioWebSupport === 0 || WEBAudio.audioWebEnabled === 0) {
return;
}
if (WEBAudio.audioContext && WEBAudio.audioContext.state !== 'suspended') {
return;
}
resumeWebAudio();
},
_JS_Sound_Set3D(channelInstance, threeD) {

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: a77aeffdf1e4e4cae8e2605672c55550
guid: 261d4905360066972171dbd0bdeafdba
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: e2941757369859aeba3d7e6ebd831fa2
guid: b679c26922af99fa1f4e347412e0c49e
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 73b593c254c758a6cea0d1c1d60fc3e7
guid: 57d08c66dc81eba5aa89b3d3d46b1072
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 4ea8a010da6162ea8ea52fb1f569e671
guid: a73c41d9c4ec3285f054ff1644993db7
DefaultImporter:
externalObjects: {}
userData:

View File

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

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 320dac1f684fc429e72cdca93fe1f0c8
guid: c5926c72aa66c1dece119f106e63cd2e
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 24dad2d7efe34e93f6a63a48016423ae
guid: c989bf3adcb20c02ac9e2d38de3432ea
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 8367c4606f2866b4e651d631280b4ac0
guid: a64fe279d7ea627f2a6553f152dffe70
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: c30c8164896ec58e547faa1c28b542c3
guid: 841f83e35b0e5f90f1d9b2283a480181
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 3682b97797acb1af66d14874ecb5ef66
guid: 00dfd6228217bd29b436c178f5564dbf
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: bdb08ac45c3e02d1cca0bc6baaa7cff9
guid: a38ec216aa7350d04544244cb24a4fef
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: e4748760dc46a32255e35634543f34af
guid: ef3ea9b9213faa37c9f84079dfa57dcf
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 9c37db65e214cfc4b0653da8ad7410b4
guid: 365c50c258cffdb59819a0f7c83f9419
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 95757d8548b999bde6d0b6787c0ae1d9
guid: b5de92d2fe142b75be4ebbda0bf3f756
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: ecf2513c35b8072a06c821bd5737fadf
guid: faef877c4a944a48efc01f5ec6bdece9
DefaultImporter:
externalObjects: {}
userData:

View File

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

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: ca2e677b7926336eed382fbb4ae7c866
guid: 0049829dff9c9ba4aa800dfd4d88fa5f
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 7f2df765fb49ed9c7a770ba4ea740bc1
guid: 6fb9f6338a09fbc9def35d35dc0753c8
DefaultImporter:
externalObjects: {}
userData:

View File

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

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: aafe1f1425bb63fb2a8a1f2c952f6547
guid: ba11ac9063c3542bc5e6d360e84d4f04
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 81b0595187bd2e72660b4a973fb371db
guid: f55de8f52dfd9a4e116b5b8233660a0d
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

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

View File

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

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 0c16e081ef5eb96f146e80079e9c7b83
guid: d20be0053f4055621a631b6b11d491e0
DefaultImporter:
externalObjects: {}
userData:

View File

@ -18,32 +18,27 @@ export default {
if (!obj) {
return;
}
if (key === 'x' || key === 'y' || key === 'width' || key === 'height') {
if (key === 'x' || key === 'y' || key === 'width' || key === 'height' || key === 'initialTime' || key === 'playbackRate') {
obj[key] = +value;
}
else if (key === 'src' || key === 'poster') {
else if (key === 'src' || key === 'poster' || key === 'objectFit' || key === 'backgroundColor') {
obj[key] = value;
}
},
WXVideoPlay(id) {
const obj = getObject(id);
if (!obj) {
return;
else if (key === 'live' || key === 'controls' || key === 'showProgress' || key === 'showProgressInControlMode'
|| key === 'autoplay' || key === 'loop' || key === 'muted' || key === 'obeyMuteSwitch'
|| key === 'enableProgressGesture' || key === 'enablePlayGesture' || key === 'showCenterPlayBtn') {
obj[key] = value === 'True';
}
obj.play();
},
WXVideoAddListener(id, key) {
const obj = getObject(id);
if (!obj) {
return;
}
obj[key]((e) => {
getObject(id)?.[key]((e) => {
moduleHelper.send('OnVideoCallback', JSON.stringify({
callbackId: id,
errMsg: key,
position: e && e.position,
buffered: e && e.buffered,
duration: e && e.duration,
type: key,
position: e?.position,
buffered: e?.buffered ? Number(e.buffered) : undefined,
duration: e?.duration,
errMsg: e?.errMsg,
}));
if (key === 'onError') {
GameGlobal.enableTransparentCanvas = false;
@ -51,54 +46,31 @@ export default {
}
});
},
WXVideoDestroy(id) {
const obj = getObject(id);
if (!obj) {
return;
}
obj.destroy();
GameGlobal.enableTransparentCanvas = false;
WXVideoRemoveListener(id, key) {
getObject(id)?.[key]();
},
WXVideoExitFullScreen(id) {
const obj = getObject(id);
if (!obj) {
return;
WXVideoDestroy(id, isLast) {
getObject(id)?.destroy();
if (isLast) {
GameGlobal.enableTransparentCanvas = false;
}
obj.exitFullScreen();
},
WXVideoPlay(id) {
getObject(id)?.play();
},
WXVideoPause(id) {
const obj = getObject(id);
if (!obj) {
return;
}
obj.pause();
},
WXVideoRequestFullScreen(id, direction) {
const obj = getObject(id);
if (!obj) {
return;
}
obj.requestFullScreen(direction);
},
WXVideoSeek(id, time) {
const obj = getObject(id);
if (!obj) {
return;
}
obj.seek(time);
getObject(id)?.pause();
},
WXVideoStop(id) {
const obj = getObject(id);
if (!obj) {
return;
}
obj.stop();
getObject(id)?.stop();
},
WXVideoRemoveListener(id, key) {
const obj = getObject(id);
if (!obj) {
return;
}
obj[key]();
WXVideoSeek(id, time) {
getObject(id)?.seek(time);
},
WXVideoRequestFullScreen(id, direction) {
getObject(id)?.requestFullScreen(direction);
},
WXVideoExitFullScreen(id) {
getObject(id)?.exitFullScreen();
},
};

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: fbba2afedf7de369f6616a2737e6584e
guid: e0928188f91401a9d2e523901f19d02e
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 425bb6592b83479f021f4ac580380f95
guid: 964bf01756acafab60e3a7fc71c3bb1f
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -171,6 +171,12 @@ function _JS_Video_Create(url) {
function _JS_Video_Destroy(video) {
debugLog('_JS_Video_Destroy', video);
videoInstances[video].destroy();
const Module = GameGlobal.manager.gameInstance.Module;
const { GL } = Module;
const gl = GL.currentContext.GLctx;
if (!isWebVideo && gl.emscriptenGLX && Module._glxVideoDestroy) {
Module._glxVideoDestroy(video);
}
delete videoInstances[video];
}
function _JS_Video_Duration(video) {
@ -375,7 +381,29 @@ function _JS_Video_UpdateToTexture(video, tex) {
if (!FrameworkData) {
return false;
}
const Module = GameGlobal.manager.gameInstance.Module;
const { GL, GLctx } = FrameworkData;
const gl = GL.currentContext.GLctx;
if (!isWebVideo && Module._glxVideoUpdateToTexture && gl.emscriptenGLX) {
const data = v.frameData?.data;
const source = supportVideoFrame ? data : new Uint8ClampedArray(data);
const byteLength = supportVideoFrame ? 0 : source.byteLength;
let sourceIdOrPtr;
if (supportVideoFrame) {
sourceIdOrPtr = source.__uid;
}
else {
sourceIdOrPtr = Module._glxGetVideoTempBuffer(video, byteLength);
if (sourceIdOrPtr) {
Module.HEAPU8.set(source, sourceIdOrPtr);
}
}
Module._glxVideoUpdateToTexture(v, supportVideoFrame, tex, v.videoWidth, v.videoHeight, sourceIdOrPtr);
return true;
}
GLctx.pixelStorei(GLctx.UNPACK_FLIP_Y_WEBGL, true);

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: bd6bf06ecfb1617fb7b6603427825f15
guid: 2f110317970ffe7b05db33dbfebe2a06
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 8d8052d59bb07606065585cf08b0253d
guid: 6c1e4fdc1ada4bc81b78263a27b585ee
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 11f12368f26a118555972961efe907fd
guid: 8b20aafc9f3dbc84cb8430b05637040b
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: b1c65667ff7aa0db7dd760e09e48d235
guid: 68144a6c98db62863e113b7502ec61dd
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: b359eabcdef1919195de839fb78762b2
guid: c92ae9ab712e1355d17ea493bb6ad55b
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 9b4020b540b9a7aa06d2d8136e952572
guid: ad73fa17fb5374765f4c8a895b37aeca
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: d1cea326b818f8026ffe01ca8bbd6c7a
guid: ec244f9ca96e757bcc324829fbbf11a2
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 82e623a803146806f2646ef54be62f88
guid: 91c80de8ec6f723de60bf80d86206546
DefaultImporter:
externalObjects: {}
userData:

View File

@ -27,7 +27,11 @@ const managerConfig = {
'$PRELOAD_LIST',
],
contextConfig: {
contextType: $WEBGL_VERSION, // 1: webgl1 2: webgl2
contextType: $WEBGL_VERSION,
contextExt: {
enableGLX: $ENABLE_GLX,
enableMetal: $ENABLE_METAL,
}
},
PROFILER_UPLOAD_URL: '',
};

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: dfb3621b99c16fe5918bd0f61cabef6d
guid: 06f409f1f1d772acb349957b5d0c08a3
DefaultImporter:
externalObjects: {}
userData:

View File

@ -23,7 +23,7 @@
],
"plugins": {
"UnityPlugin": {
"version": "1.2.79",
"version": "1.2.80",
"provider": "wxe5a48f1ed5f544b7",
"contexts": [
{
@ -32,7 +32,7 @@
]
},
"Layout": {
"version": "1.0.15",
"version": "1.0.16",
"provider": "wx7a727ff7d940bb3f",
"contexts": [
{

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 43a58900cd1f2cceeebe71cd0da6e9ea
guid: cd95d715d6cf95bd1e74a4113436841d
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: b1d832e9cee1c57b74a2fded945106ca
guid: 6243aac6752e2db8b67baf8ae2903134
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 4fbb60bb57bfbc6477067e849d4c899a
guid: 03949f0550a41c01b05884a43382fb30
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 62d3610273924692d8a468a7612ca4ba
guid: 80501a98fd7269a023c2f8931a3ebdec
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: dce8b79ef90a5f0785efa79abc051250
guid: c3b713c9674e6295515b3ad63cf1f727
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 5e4435258531c885590de46de0a68372
guid: eb1a3e744c89f5621b8393c17ade4467
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 83a12c74827ac659f16b70e632b0a36b
guid: c853a0df42f09f74fca5e41d4c73650c
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: d16ea1b19da3cbb0776441ccf58afbf5
guid: f99c3db3e3d9204974a33f49037ddc27
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: da79e742fd6f9ced13d2208f2588ed39
guid: f57fc28c6bedff09a4cfa7a369f7c246
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 949a3f0616e67d1ce1337ed2c59fa822
guid: 102317d0e297360f78e559fd6b837c80
DefaultImporter:
externalObjects: {}
userData:

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: d232f8799adc892248cb4c0dc6e5c40a
guid: b028b025a884da980ef364a210cba35f
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: a7a7440873159df79ad30343d0a7fa97
guid: 8bcda410c4e67a71922630620c03a66b
folderAsset: yes
DefaultImporter:
externalObjects: {}

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