Initial commit: Client Doc docs Server Tools
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Binary file not shown.
@@ -0,0 +1,33 @@
|
||||
fileFormatVersion: 2
|
||||
guid: e3bcb9f6d2b014d38815ff3cdeb11f6f
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,967 @@
|
||||
mergeInto(LibraryManager.library, {
|
||||
WXPointer_stringify_adaptor:function(str){
|
||||
if (typeof UTF8ToString !== "undefined") {
|
||||
return UTF8ToString(str)
|
||||
}
|
||||
return Pointer_stringify(str)
|
||||
},
|
||||
glGenTextures: function (n, textures) {
|
||||
for (var i = 0; i < n; i++) {
|
||||
var texture = GLctx.createTexture();
|
||||
if (!texture) {
|
||||
GL.recordError(1282);
|
||||
while (i < n) HEAP32[textures + i++ * 4 >> 2] = 0;
|
||||
return
|
||||
}
|
||||
var id = GL.getNewId(GL.textures);
|
||||
texture.name = id;
|
||||
GL.textures[id] = texture;
|
||||
window._lastTextureId = id;
|
||||
HEAP32[textures + i * 4 >> 2] = id
|
||||
}
|
||||
},
|
||||
glBindTexture:function(target, texture) {
|
||||
window._lastBoundTexture = texture;
|
||||
GLctx.bindTexture(target, texture ? GL.textures[texture] : null)
|
||||
},
|
||||
WXInitializeSDK: function (version) {
|
||||
window.WXWASMSDK.WXInitializeSDK(_WXPointer_stringify_adaptor(version));
|
||||
if (typeof emscriptenMemoryProfiler !== "undefined") {
|
||||
GameGlobal.memprofiler = emscriptenMemoryProfiler
|
||||
GameGlobal.memprofiler.onDump = function () {
|
||||
var fs = wx.getFileSystemManager();
|
||||
var allocation_used=GameGlobal.memprofiler.allocationsAtLoc;
|
||||
if (typeof allocation_used === "undefined") allocation_used=GameGlobal.memprofiler.allocationSiteStatistics;
|
||||
var calls = [];
|
||||
for (var i in allocation_used) {
|
||||
calls.push(i);
|
||||
}
|
||||
calls.sort((function (a, b) {
|
||||
return allocation_used[b][1] - allocation_used[a][1];
|
||||
}));
|
||||
|
||||
console.log('WXDumpUnityHeap begin', Object.keys(allocation_used).length, calls.length);
|
||||
wx.getFileSystemManager().open({
|
||||
filePath: wx.env.USER_DATA_PATH + '/alloc_used.csv',
|
||||
flag: 'w',
|
||||
success: function(res) {
|
||||
var wxfile = res.fd;
|
||||
fs.write({
|
||||
fd: wxfile,
|
||||
data:'callback;count;size;malloc;free\r\n',
|
||||
fail: function(res) {
|
||||
console.error(res);
|
||||
}
|
||||
})
|
||||
var errorCount = 0;
|
||||
for (var i = 0; i < 100000 && i < calls.length; ++i) {
|
||||
var callstack = calls[i];
|
||||
var item = allocation_used[callstack];
|
||||
if (typeof item === "undefined") {
|
||||
// console.error('callstack not fond', callstack);
|
||||
++errorCount;
|
||||
continue
|
||||
}
|
||||
var posOfThisFunc = callstack.indexOf('emscripten_trace_record_') + "emscripten_trace_record_".length;
|
||||
if (posOfThisFunc != -1) callstack = callstack.substr(posOfThisFunc);
|
||||
var posOfRaf = callstack.lastIndexOf("InitWebGLPlayeriPPc ");
|
||||
if (posOfRaf != -1) callstack = callstack.substr(0, posOfRaf);
|
||||
posOfRaf = callstack.lastIndexOf("InitPlayerLoopCallbacks");
|
||||
if (posOfRaf != -1) callstack = callstack.substr(0, posOfRaf);
|
||||
|
||||
callstack = callstack.replace(/\(.*?\)/g, '')
|
||||
callstack = callstack.replace(/[A-Z0-9]{40}/g, '')
|
||||
callstack = callstack.replace(/\n/g, "<-")
|
||||
callstack = callstack.replace(/_malloc <-.*?MemLabelId15AllocateOptions/g, '')
|
||||
callstack = callstack.replace(/<- at dynCall.*?at invoke_/g, '')
|
||||
fs.write({
|
||||
fd: wxfile,
|
||||
data: callstack + ';' + item[0] + ';' + item[1] + ';' + item[2] + ';' + item[3] + '\r\n',
|
||||
fail: function(res) {
|
||||
console.error(res)
|
||||
}
|
||||
})
|
||||
}
|
||||
console.log("WXDumpUnityHeap end", errorCount)
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
WXStorageSetIntSync: function (key, value) {
|
||||
window.WXWASMSDK.WXStorageSetIntSync(_WXPointer_stringify_adaptor(key), value);
|
||||
},
|
||||
WXStorageGetIntSync: function (key, defaultValue) {
|
||||
return window.WXWASMSDK.WXStorageGetIntSync(_WXPointer_stringify_adaptor(key), defaultValue);
|
||||
},
|
||||
WXStorageSetFloatSync: function (key, value) {
|
||||
window.WXWASMSDK.WXStorageSetFloatSync(_WXPointer_stringify_adaptor(key), value);
|
||||
},
|
||||
WXStorageGetFloatSync: function (key, defaultValue) {
|
||||
return window.WXWASMSDK.WXStorageGetFloatSync(_WXPointer_stringify_adaptor(key), defaultValue);
|
||||
},
|
||||
WXStorageSetStringSync: function (key, value) {
|
||||
window.WXWASMSDK.WXStorageSetStringSync(_WXPointer_stringify_adaptor(key), _WXPointer_stringify_adaptor(value));
|
||||
},
|
||||
WXStorageGetStringSync: function (key, defaultValue) {
|
||||
var returnStr = window.WXWASMSDK.WXStorageGetStringSync(_WXPointer_stringify_adaptor(key), _WXPointer_stringify_adaptor(defaultValue));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXStorageDeleteAllSync: function () {
|
||||
window.WXWASMSDK.WXStorageDeleteAllSync();
|
||||
},
|
||||
WXStorageDeleteKeySync: function (key) {
|
||||
window.WXWASMSDK.WXStorageDeleteKeySync(_WXPointer_stringify_adaptor(key));
|
||||
},
|
||||
WXStorageHasKeySync: function (key) {
|
||||
return window.WXWASMSDK.WXStorageHasKeySync(_WXPointer_stringify_adaptor(key));
|
||||
},
|
||||
WXCheckSession: function (s, f, c) {
|
||||
window.WXWASMSDK.WXCheckSession(_WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f), _WXPointer_stringify_adaptor(c));
|
||||
},
|
||||
WXAuthorize: function (scope, s, f, c) {
|
||||
window.WXWASMSDK.WXAuthorize(_WXPointer_stringify_adaptor(scope), _WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f), _WXPointer_stringify_adaptor(c));
|
||||
},
|
||||
WXCreateUserInfoButton: function (x, y, width, height, lang, withCredentials) {
|
||||
var returnStr = window.WXWASMSDK.WXCreateUserInfoButton(x, y, width, height, _WXPointer_stringify_adaptor(lang), withCredentials);
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXUserInfoButtonShow: function (id) {
|
||||
window.WXWASMSDK.WXUserInfoButtonShow(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXUserInfoButtonDestroy: function (id) {
|
||||
window.WXWASMSDK.WXUserInfoButtonDestroy(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXUserInfoButtonHide: function (id) {
|
||||
window.WXWASMSDK.WXUserInfoButtonHide(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXUserInfoButtonOffTap: function (id) {
|
||||
window.WXWASMSDK.WXUserInfoButtonOffTap(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXUserInfoButtonOnTap: function (id) {
|
||||
window.WXWASMSDK.WXUserInfoButtonOnTap(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXOnShareAppMessage: function (conf, isPromise) {
|
||||
return window.WXWASMSDK.WXOnShareAppMessage(_WXPointer_stringify_adaptor(conf), isPromise);
|
||||
},
|
||||
WXOnShareAppMessageResolve: function (conf) {
|
||||
return window.WXWASMSDK.WXOnShareAppMessageResolve(_WXPointer_stringify_adaptor(conf));
|
||||
},
|
||||
WXOffShareAppMessage: function () {
|
||||
return window.WXWASMSDK.WXOffShareAppMessage();
|
||||
},
|
||||
WXCreateBannerAd: function (conf) {
|
||||
var returnStr = window.WXWASMSDK.WXCreateBannerAd(_WXPointer_stringify_adaptor(conf));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXCreateRewardedVideoAd: function (conf) {
|
||||
var returnStr = window.WXWASMSDK.WXCreateRewardedVideoAd(_WXPointer_stringify_adaptor(conf));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXGetFontRawData: function (conf, callbackId) {
|
||||
window.WXWASMSDK.WXGetFontRawData(_WXPointer_stringify_adaptor(conf), _WXPointer_stringify_adaptor(callbackId))
|
||||
},
|
||||
WXShareFontBuffer:function(offset,callbackId){
|
||||
window.WXWASMSDK.WXShareFontBuffer(
|
||||
HEAPU8,
|
||||
offset,
|
||||
_WXPointer_stringify_adaptor(callbackId)
|
||||
)
|
||||
},
|
||||
WXRewardedVideoAdReportShareBehavior: function (id, conf) {
|
||||
var returnStr = window.WXWASMSDK.WXReportShareBehavior(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(conf));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXCreateInterstitialAd: function (conf) {
|
||||
var returnStr = window.WXWASMSDK.WXCreateInterstitialAd(_WXPointer_stringify_adaptor(conf));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXCreateCustomAd: function (conf) {
|
||||
var returnStr = window.WXWASMSDK.WXCreateCustomAd(_WXPointer_stringify_adaptor(conf));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXADStyleChange: function (id, key, value) {
|
||||
window.WXWASMSDK.WXADStyleChange(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key), value);
|
||||
},
|
||||
WXShowAd: function (id, s, f) {
|
||||
window.WXWASMSDK.WXShowAd(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f));
|
||||
},
|
||||
WXShowAd2: function (id,branchId,branchDim, s, f) {
|
||||
window.WXWASMSDK.WXShowAd2(_WXPointer_stringify_adaptor(id),_WXPointer_stringify_adaptor(branchId),_WXPointer_stringify_adaptor(branchDim), _WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f));
|
||||
},
|
||||
WXHideAd: function (id, s, f) {
|
||||
window.WXWASMSDK.WXHideAd(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f));
|
||||
},
|
||||
WXADGetStyleValue: function (id, key) {
|
||||
return window.WXWASMSDK.WXADGetStyleValue(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key));
|
||||
},
|
||||
WXADDestroy: function (id) {
|
||||
window.WXWASMSDK.WXADDestroy(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXADLoad: function (id, succ, fail) {
|
||||
window.WXWASMSDK.WXADLoad(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(succ), _WXPointer_stringify_adaptor(fail));
|
||||
},
|
||||
WXToTempFilePath: function (conf, s, f, c) {
|
||||
window.WXWASMSDK.WXToTempFilePath(_WXPointer_stringify_adaptor(conf), _WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f), _WXPointer_stringify_adaptor(c))
|
||||
},
|
||||
WXToTempFilePathSync: function (conf) {
|
||||
var returnStr = window.WXWASMSDK.WXToTempFilePathSync(_WXPointer_stringify_adaptor(conf));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXGetUserDataPath: function () {
|
||||
var returnStr = window.WXWASMSDK.WXGetUserDataPath();
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXWriteFileSync: function (filePath, data, encoding) {
|
||||
var returnStr = window.WXWASMSDK.WXWriteFileSync(_WXPointer_stringify_adaptor(filePath), _WXPointer_stringify_adaptor(data), _WXPointer_stringify_adaptor(encoding));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXCreateFixedBottomMiddleBannerAd: function (adUnitId, adIntervals, height) {
|
||||
var returnStr = window.WXWASMSDK.WXCreateFixedBottomMiddleBannerAd(_WXPointer_stringify_adaptor(adUnitId), adIntervals, height);
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXDataContextPostMessage: function (msg) {
|
||||
window.WXWASMSDK.WXDataContextPostMessage(_WXPointer_stringify_adaptor(msg));
|
||||
},
|
||||
WXShowOpenData: function (id, x, y, width, height) {
|
||||
window.WXWASMSDK.WXShowOpenData(id, x, y, width, height);
|
||||
},
|
||||
WXHideOpenData: function () {
|
||||
window.WXWASMSDK.WXHideOpenData();
|
||||
},
|
||||
WXReportGameStart: function () {
|
||||
window.WXWASMSDK.WXReportGameStart();
|
||||
},
|
||||
WXReportGameSceneError: function(sceneId, errorType, errStr, extJsonStr) {
|
||||
window.WXWASMSDK.WXReportGameSceneError(sceneId, errorType, _WXPointer_stringify_adaptor(errStr), _WXPointer_stringify_adaptor(extJsonStr));
|
||||
},
|
||||
WXWriteLog: function (str) {
|
||||
window.WXWASMSDK.WXWriteLog(_WXPointer_stringify_adaptor(str))
|
||||
},
|
||||
WXWriteWarn: function (str) {
|
||||
window.WXWASMSDK.WXWriteWarn(_WXPointer_stringify_adaptor(str))
|
||||
},
|
||||
WXPreloadConcurrent: function (count) {
|
||||
window.WXWASMSDK.WXPreloadConcurrent(count);
|
||||
},
|
||||
WXAccessFileSync: function (path) {
|
||||
var returnStr = window.WXWASMSDK.WXAccessFileSync(_WXPointer_stringify_adaptor(path));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXAccessFile: function (path, s, f, c) {
|
||||
return window.WXWASMSDK.WXAccessFile(_WXPointer_stringify_adaptor(path), _WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f), _WXPointer_stringify_adaptor(c));
|
||||
},
|
||||
WXCopyFileSync: function (srcPath, destPath) {
|
||||
var returnStr = window.WXWASMSDK.WXCopyFileSync(_WXPointer_stringify_adaptor(srcPath), _WXPointer_stringify_adaptor(destPath));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXCopyFile: function (srcPath, destPath, s, f, c) {
|
||||
return window.WXWASMSDK.WXCopyFile(_WXPointer_stringify_adaptor(srcPath), _WXPointer_stringify_adaptor(destPath), _WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f), _WXPointer_stringify_adaptor(c));
|
||||
},
|
||||
WXUnlinkSync: function (filePath) {
|
||||
var returnStr = window.WXWASMSDK.WXUnlinkSync(_WXPointer_stringify_adaptor(filePath));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXUnlink: function (filePath, s, f, c) {
|
||||
return window.WXWASMSDK.WXUnlink(_WXPointer_stringify_adaptor(filePath), _WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f), _WXPointer_stringify_adaptor(c));
|
||||
},
|
||||
WXReportUserBehaviorBranchAnalytics: function (branchId, branchDim, eventType) {
|
||||
window.WXWASMSDK.WXReportUserBehaviorBranchAnalytics(_WXPointer_stringify_adaptor(branchId), _WXPointer_stringify_adaptor(branchDim), eventType);
|
||||
},
|
||||
WXCallFunction: function (name, data, conf, s, f, c) {
|
||||
window.WXWASMSDK.WXCallFunction(_WXPointer_stringify_adaptor(name), _WXPointer_stringify_adaptor(data), _WXPointer_stringify_adaptor(conf), _WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f), _WXPointer_stringify_adaptor(c));
|
||||
},
|
||||
WXCallFunctionInit: function (conf) {
|
||||
window.WXWASMSDK.WXCallFunctionInit(_WXPointer_stringify_adaptor(conf));
|
||||
},
|
||||
WXCloudID: function (cloudID) {
|
||||
var returnStr = window.WXWASMSDK.WXCloudID(_WXPointer_stringify_adaptor(cloudID));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXCreateInnerAudioContext: function (src, loop, startTime, autoplay, volume, playbackRate, needDownload) {
|
||||
var returnStr = window.WXWASMSDK.WXCreateInnerAudioContext(_WXPointer_stringify_adaptor(src), loop, startTime, autoplay, volume, playbackRate, needDownload);
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXInnerAudioContextSetBool: function (id, k, v) {
|
||||
window.WXWASMSDK.WXInnerAudioContextSetBool(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(k), v);
|
||||
},
|
||||
WXInnerAudioContextSetString: function (id, k, v) {
|
||||
window.WXWASMSDK.WXInnerAudioContextSetString(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(k), _WXPointer_stringify_adaptor(v));
|
||||
},
|
||||
WXInnerAudioContextSetFloat: function (id, k, v) {
|
||||
window.WXWASMSDK.WXInnerAudioContextSetFloat(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(k), v);
|
||||
},
|
||||
WXInnerAudioContextGetFloat: function (id, k) {
|
||||
return window.WXWASMSDK.WXInnerAudioContextGetFloat(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(k));
|
||||
},
|
||||
WXInnerAudioContextGetBool: function (id, k) {
|
||||
return window.WXWASMSDK.WXInnerAudioContextGetBool(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(k));
|
||||
},
|
||||
WXInnerAudioContextPlay: function (id) {
|
||||
window.WXWASMSDK.WXInnerAudioContextPlay(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXInnerAudioContextStop: function (id) {
|
||||
window.WXWASMSDK.WXInnerAudioContextStop(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXInnerAudioContextPause: function (id) {
|
||||
window.WXWASMSDK.WXInnerAudioContextPause(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXInnerAudioContextDestroy: function (id) {
|
||||
window.WXWASMSDK.WXInnerAudioContextDestroy(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXInnerAudioContextSeek: function (id, position) {
|
||||
window.WXWASMSDK.WXInnerAudioContextSeek(_WXPointer_stringify_adaptor(id), position);
|
||||
},
|
||||
WXInnerAudioContextAddListener: function (id, key) {
|
||||
window.WXWASMSDK.WXInnerAudioContextAddListener(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key));
|
||||
},
|
||||
WXInnerAudioContextRemoveListener: function (id, key) {
|
||||
window.WXWASMSDK.WXInnerAudioContextRemoveListener(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key));
|
||||
},
|
||||
WXPreDownloadAudios: function (paths, id) {
|
||||
window.WXWASMSDK.WXPreDownloadAudios(_WXPointer_stringify_adaptor(paths), id);
|
||||
},
|
||||
WXSetDataCDN: function(path) {
|
||||
window.WXWASMSDK.WXSetDataCDN(_WXPointer_stringify_adaptor(path));
|
||||
},
|
||||
WXSetPreloadList: function(paths) {
|
||||
window.WXWASMSDK.WXSetPreloadList(_WXPointer_stringify_adaptor(paths));
|
||||
},
|
||||
WXCreateGameClubButton: function (conf) {
|
||||
var returnStr = window.WXWASMSDK.WXCreateGameClubButton(_WXPointer_stringify_adaptor(conf));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXGameClubButtonDestroy: function(id) {
|
||||
window.WXWASMSDK.WXGameClubButtonDestroy(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXGameClubButtonHide: function(id) {
|
||||
window.WXWASMSDK.WXGameClubButtonHide(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXGameClubButtonShow: function(id) {
|
||||
window.WXWASMSDK.WXGameClubButtonShow(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXGameClubButtonAddListener: function(id, key) {
|
||||
window.WXWASMSDK.WXGameClubButtonAddListener(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key));
|
||||
},
|
||||
WXGameClubButtonRemoveListener: function(id, key) {
|
||||
window.WXWASMSDK.WXGameClubButtonRemoveListener(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key));
|
||||
},
|
||||
WXGameClubButtonSetProperty: function(id, key, value) {
|
||||
window.WXWASMSDK.WXGameClubButtonSetProperty(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key), _WXPointer_stringify_adaptor(value));
|
||||
},
|
||||
WXGameClubStyleChangeInt: function(id, key, value) {
|
||||
window.WXWASMSDK.WXGameClubStyleChangeInt(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key), value);
|
||||
},
|
||||
WXGameClubStyleChangeStr: function(id, key, value) {
|
||||
window.WXWASMSDK.WXGameClubStyleChangeStr(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key), _WXPointer_stringify_adaptor(value));
|
||||
},
|
||||
WXCreateVideo: function(conf) {
|
||||
var returnStr = window.WXWASMSDK.WXCreateVideo(_WXPointer_stringify_adaptor(conf));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXVideoPlay: function(id) {
|
||||
window.WXWASMSDK.WXVideoPlay(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
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));
|
||||
},
|
||||
WXVideoExitFullScreen: function(id) {
|
||||
window.WXWASMSDK.WXVideoExitFullScreen(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXVideoPause: function(id){
|
||||
window.WXWASMSDK.WXVideoPause(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXVideoRequestFullScreen:function(id,direction){
|
||||
window.WXWASMSDK.WXVideoRequestFullScreen(_WXPointer_stringify_adaptor(id),direction);
|
||||
},
|
||||
WXVideoSeek:function(id,time){
|
||||
window.WXWASMSDK.WXVideoSeek(_WXPointer_stringify_adaptor(id),time);
|
||||
},
|
||||
WXVideoStop:function(id){
|
||||
window.WXWASMSDK.WXVideoStop(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXVideoRemoveListener:function(id,key){
|
||||
window.WXWASMSDK.WXVideoRemoveListener(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key));
|
||||
},
|
||||
WXHideLoadingPage: function() {
|
||||
window.WXWASMSDK && window.WXWASMSDK.WXHideLoadingPage()
|
||||
},
|
||||
WXWriteFile:function(filePath, data, dataLength, encoding, s, f, c) {
|
||||
window.WXWASMSDK.WXWriteFile(
|
||||
_WXPointer_stringify_adaptor(filePath),
|
||||
HEAPU8.slice(data, dataLength + data),
|
||||
_WXPointer_stringify_adaptor(encoding),
|
||||
_WXPointer_stringify_adaptor(s),
|
||||
_WXPointer_stringify_adaptor(f),
|
||||
_WXPointer_stringify_adaptor(c)
|
||||
)
|
||||
},
|
||||
WXWriteStringFile:function (filePath,data,encoding, s, f, c) {
|
||||
window.WXWASMSDK.WXWriteStringFile(
|
||||
_WXPointer_stringify_adaptor(filePath),
|
||||
_WXPointer_stringify_adaptor(data),
|
||||
_WXPointer_stringify_adaptor(encoding),
|
||||
_WXPointer_stringify_adaptor(s),
|
||||
_WXPointer_stringify_adaptor(f),
|
||||
_WXPointer_stringify_adaptor(c)
|
||||
)
|
||||
},
|
||||
WXAppendFile:function(filePath, data, dataLength, encoding, s, f, c) {
|
||||
window.WXWASMSDK.WXAppendFile(
|
||||
_WXPointer_stringify_adaptor(filePath),
|
||||
HEAPU8.slice(data, dataLength + data),
|
||||
_WXPointer_stringify_adaptor(encoding),
|
||||
_WXPointer_stringify_adaptor(s),
|
||||
_WXPointer_stringify_adaptor(f),
|
||||
_WXPointer_stringify_adaptor(c)
|
||||
)
|
||||
},
|
||||
WXAppendStringFile:function (filePath, data, encoding, s, f, c) {
|
||||
window.WXWASMSDK.WXAppendStringFile(
|
||||
_WXPointer_stringify_adaptor(filePath),
|
||||
_WXPointer_stringify_adaptor(data),
|
||||
_WXPointer_stringify_adaptor(encoding),
|
||||
_WXPointer_stringify_adaptor(s),
|
||||
_WXPointer_stringify_adaptor(f),
|
||||
_WXPointer_stringify_adaptor(c)
|
||||
)
|
||||
},
|
||||
WXWriteBinFileSync:function(filePath, data, dataLength, encoding) {
|
||||
var returnStr = window.WXWASMSDK.WXWriteBinFileSync(
|
||||
_WXPointer_stringify_adaptor(filePath),
|
||||
HEAPU8.slice(data, dataLength + data),
|
||||
_WXPointer_stringify_adaptor(encoding)
|
||||
);
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXReadFile:function(option, callbackId) {
|
||||
window.WXWASMSDK.WXReadFile(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WXReadFileSync:function(option) {
|
||||
var returnStr = window.WXWASMSDK.WXReadFileSync(_WXPointer_stringify_adaptor(option));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXGetTotalMemorySize: function() {
|
||||
if (typeof TOTAL_MEMORY !== "undefined") {
|
||||
return TOTAL_MEMORY
|
||||
}
|
||||
return buffer.byteLength;
|
||||
},
|
||||
WXGetTotalStackSize: function() {
|
||||
return TOTAL_STACK;
|
||||
},
|
||||
WXGetStaticMemorySize: function() {
|
||||
return STATICTOP - STATIC_BASE;
|
||||
},
|
||||
WXGetDynamicMemorySize: function() {
|
||||
if (typeof DYNAMIC_BASE !== "undefined") {
|
||||
return HEAP32[DYNAMICTOP_PTR >> 2] - DYNAMIC_BASE
|
||||
}
|
||||
var heap_base = 7936880;
|
||||
if (typeof Module["___heap_base"] !== "undefined") {
|
||||
heap_base = Module["___heap_base"];
|
||||
}
|
||||
var heap_end = _sbrk();
|
||||
return heap_end - heap_base;
|
||||
},
|
||||
WXGetUsedMemorySize: function() {
|
||||
if (typeof emscriptenMemoryProfiler !== "undefined") {
|
||||
return emscriptenMemoryProfiler.totalMemoryAllocated;
|
||||
}
|
||||
},
|
||||
WXGetUnAllocatedMemorySize: function() {
|
||||
var heap_end = _sbrk()
|
||||
return HEAP8.length - heap_end
|
||||
return 0
|
||||
},
|
||||
WXGetEXFrameTime : function() {
|
||||
if(typeof GameGlobal.calcFrameTimeFunc == "undefined")
|
||||
{
|
||||
GameGlobal.calcFrameTimeFunc = function ()
|
||||
{
|
||||
var frameCount = 0;
|
||||
var exTotalTime = 0;
|
||||
return function update(frameStart, frameEnd) {
|
||||
frameCount++;
|
||||
exTotalTime += (frameEnd - frameStart);
|
||||
if (frameCount >= 60) {
|
||||
GameGlobal.avgExFrameTime = exTotalTime / 60;
|
||||
frameCount = 0;
|
||||
exTotalTime = 0;
|
||||
}
|
||||
};
|
||||
}();
|
||||
}
|
||||
return GameGlobal.avgExFrameTime
|
||||
},
|
||||
WXProfilingMemoryDump: function() {
|
||||
if (typeof emscriptenMemoryProfiler !== "undefined") {
|
||||
GameGlobal.memprofiler.onDump();
|
||||
wx.showModal({
|
||||
title: 'ProfilingMemory',
|
||||
content: 'OnDump Complete!'
|
||||
});
|
||||
return;
|
||||
}
|
||||
console.error('Please call WX.InitSDK & Select ProfilingMemory Option')
|
||||
},
|
||||
WXLogManagerDebug:function(str){
|
||||
window.WXWASMSDK.WXLogManagerDebug(
|
||||
_WXPointer_stringify_adaptor(str)
|
||||
);
|
||||
},
|
||||
WXLogManagerInfo:function(str){
|
||||
window.WXWASMSDK.WXLogManagerInfo(
|
||||
_WXPointer_stringify_adaptor(str)
|
||||
);
|
||||
},
|
||||
WXLogManagerLog:function(str){
|
||||
window.WXWASMSDK.WXLogManagerLog(
|
||||
_WXPointer_stringify_adaptor(str)
|
||||
);
|
||||
},
|
||||
WXLogManagerWarn:function(str){
|
||||
window.WXWASMSDK.WXLogManagerWarn(
|
||||
_WXPointer_stringify_adaptor(str)
|
||||
);
|
||||
},
|
||||
WXIsCloudTest:function(){
|
||||
return window.WXWASMSDK.WXIsCloudTest();
|
||||
},
|
||||
WXCleanAllFileCache:function() {
|
||||
var returnStr = window.WXWASMSDK.WXCleanAllFileCache();
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXCleanFileCache: function(fileSize) {
|
||||
var returnStr = window.WXWASMSDK.WXCleanFileCache(fileSize);
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXRemoveFile: function(path) {
|
||||
var returnStr = window.WXWASMSDK.WXRemoveFile(_WXPointer_stringify_adaptor(path));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXGetCachePath: function(url) {
|
||||
var returnStr = window.WXWASMSDK.WXGetCachePath(_WXPointer_stringify_adaptor(url));
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXGetPluginCachePath: function() {
|
||||
var returnStr = window.WXWASMSDK.WXGetPluginCachePath();
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXOnLaunchProgress: function() {
|
||||
var returnStr = window.WXWASMSDK.WXOnLaunchProgress();
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXUncaughtException: function() {
|
||||
window.WXWASMSDK.WXUncaughtException(false);
|
||||
},
|
||||
WXMkdir:function(dirPath, recursive, s, f, c){
|
||||
window.WXWASMSDK.WXMkdir(_WXPointer_stringify_adaptor(dirPath), recursive, _WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f), _WXPointer_stringify_adaptor(c));
|
||||
},
|
||||
WXMkdirSync: function (dirPath, recursive) {
|
||||
var returnStr = window.WXWASMSDK.WXMkdirSync(_WXPointer_stringify_adaptor(dirPath),recursive);
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WXRmdir: function(dirPath, recursive, s, f, c) {
|
||||
window.WXWASMSDK.WXRmdir(_WXPointer_stringify_adaptor(dirPath), recursive, _WXPointer_stringify_adaptor(s), _WXPointer_stringify_adaptor(f), _WXPointer_stringify_adaptor(c));
|
||||
},
|
||||
WXRmdirSync: function(dirPath, recursive) {
|
||||
var returnStr = window.WXWASMSDK.WXRmdirSync(_WXPointer_stringify_adaptor(dirPath),recursive);
|
||||
var bufferSize = lengthBytesUTF8(returnStr || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(returnStr, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
|
||||
WXCameraCreateCamera: function (option, callbackId) {
|
||||
window.WXWASMSDK.WXCameraCreateCamera(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
|
||||
WXCameraCloseFrameChange: function (id) {
|
||||
window.WXWASMSDK.WXCameraCloseFrameChange(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
|
||||
WXCameraDestroy: function (id) {
|
||||
window.WXWASMSDK.WXCameraDestroy(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
|
||||
WXCameraListenFrameChange: function (id) {
|
||||
window.WXWASMSDK.WXCameraListenFrameChange(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
|
||||
WXCameraOnAuthCancel: function (id) {
|
||||
window.WXWASMSDK.WXCameraOnAuthCancel(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
|
||||
WXCameraOnCameraFrame: function (id) {
|
||||
window.WXWASMSDK.WXCameraOnCameraFrame(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
|
||||
WXCameraOnStop:function (id) {
|
||||
window.WXWASMSDK.WXCameraOnStop(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
|
||||
WX_GetRecorderManager:function(
|
||||
){
|
||||
var res = window.WXWASMSDK.WX_GetRecorderManager();
|
||||
var bufferSize = lengthBytesUTF8(res || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(res, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
|
||||
WX_OnRecorderError:function(id){
|
||||
window.WXWASMSDK.WX_OnRecorderError(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_OnRecorderFrameRecorded:function(id){
|
||||
window.WXWASMSDK.WX_OnRecorderFrameRecorded(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_OnRecorderInterruptionBegin:function(id){
|
||||
window.WXWASMSDK.WX_OnRecorderInterruptionBegin(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_OnRecorderInterruptionEnd:function(id){
|
||||
window.WXWASMSDK.WX_OnRecorderInterruptionEnd(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_OnRecorderPause:function(id){
|
||||
window.WXWASMSDK.WX_OnRecorderPause(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_OnRecorderResume:function(id){
|
||||
window.WXWASMSDK.WX_OnRecorderResume(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_OnRecorderStart:function(id){
|
||||
window.WXWASMSDK.WX_OnRecorderStart(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_OnRecorderStop:function(id){
|
||||
window.WXWASMSDK.WX_OnRecorderStop(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_RecorderPause:function(id){
|
||||
window.WXWASMSDK.WX_RecorderPause(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_RecorderResume:function(id){
|
||||
window.WXWASMSDK.WX_RecorderResume(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_RecorderStart:function(id,option){
|
||||
window.WXWASMSDK.WX_RecorderStart(_WXPointer_stringify_adaptor(id),_WXPointer_stringify_adaptor(option));
|
||||
},
|
||||
WX_RecorderStop:function(id){
|
||||
window.WXWASMSDK.WX_RecorderStop(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_UploadFile:function(conf, callbackId){
|
||||
window.WXWASMSDK.WX_UploadFile(_WXPointer_stringify_adaptor(conf), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WXUploadTaskAbort:function(id){
|
||||
window.WXWASMSDK.WXUploadTaskAbort(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXUploadTaskOffHeadersReceived:function(id){
|
||||
window.WXWASMSDK.WXUploadTaskOffHeadersReceived(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXUploadTaskOffProgressUpdate:function(id){
|
||||
window.WXWASMSDK.WXUploadTaskOffProgressUpdate(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXUploadTaskOnHeadersReceived:function(id){
|
||||
window.WXWASMSDK.WXUploadTaskOnHeadersReceived(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXUploadTaskOnProgressUpdate:function(id){
|
||||
window.WXWASMSDK.WXUploadTaskOnProgressUpdate(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WXStat: function (conf, callbackId) {
|
||||
window.WXWASMSDK.WXStat(_WXPointer_stringify_adaptor(conf), _WXPointer_stringify_adaptor(callbackId))
|
||||
},
|
||||
WX_GetGameRecorder:function() {
|
||||
var res = window.WXWASMSDK.WX_GetGameRecorder();
|
||||
var bufferSize = lengthBytesUTF8(res || '') + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(res, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WX_GameRecorderOff:function(id, eventType){
|
||||
window.WXWASMSDK.WX_GameRecorderOff(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(eventType));
|
||||
},
|
||||
WX_GameRecorderOn:function(id, eventType){
|
||||
window.WXWASMSDK.WX_GameRecorderOn(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(eventType));
|
||||
},
|
||||
WX_GameRecorderStart:function(id,option){
|
||||
window.WXWASMSDK.WX_GameRecorderStart(_WXPointer_stringify_adaptor(id),_WXPointer_stringify_adaptor(option));
|
||||
},
|
||||
WX_GameRecorderAbort:function(id){
|
||||
window.WXWASMSDK.WX_GameRecorderAbort(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_GameRecorderPause:function(id){
|
||||
window.WXWASMSDK.WX_GameRecorderPause(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_GameRecorderResume:function(id){
|
||||
window.WXWASMSDK.WX_GameRecorderResume(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_GameRecorderStop:function(id){
|
||||
window.WXWASMSDK.WX_GameRecorderStop(_WXPointer_stringify_adaptor(id));
|
||||
},
|
||||
WX_OperateGameRecorderVideo:function(option){
|
||||
window.WXWASMSDK.WX_OperateGameRecorderVideo(_WXPointer_stringify_adaptor(option));
|
||||
},
|
||||
WXChatCreate: function (option) {
|
||||
return window.WXWASMSDK.WXChatCreate(_WXPointer_stringify_adaptor(option));
|
||||
},
|
||||
WXChatHide: function () {
|
||||
window.WXWASMSDK.WXChatHide();
|
||||
},
|
||||
WXChatShow: function (option) {
|
||||
window.WXWASMSDK.WXChatShow(_WXPointer_stringify_adaptor(option));
|
||||
},
|
||||
WXChatClose: function () {
|
||||
window.WXWASMSDK.WXChatClose();
|
||||
},
|
||||
WXChatOpen: function (pageKey) {
|
||||
window.WXWASMSDK.WXChatOpen(_WXPointer_stringify_adaptor(pageKey));
|
||||
},
|
||||
WXChatSetTabs: function (pageKeys) {
|
||||
window.WXWASMSDK.WXChatSetTabs(_WXPointer_stringify_adaptor(pageKeys));
|
||||
},
|
||||
WXChatOn: function (eventType) {
|
||||
window.WXWASMSDK.WXChatOn(_WXPointer_stringify_adaptor(eventType));
|
||||
},
|
||||
WXChatOff: function (eventType) {
|
||||
window.WXWASMSDK.WXChatOff(_WXPointer_stringify_adaptor(eventType));
|
||||
},
|
||||
WXChatSetSignature: function (signature) {
|
||||
window.WXWASMSDK.WXChatSetSignature(_WXPointer_stringify_adaptor(signature));
|
||||
},
|
||||
WXSetArrayBuffer: function (offset,callbackId){
|
||||
window.WXWASMSDK.WXSetArrayBuffer(
|
||||
HEAPU8,
|
||||
offset,
|
||||
_WXPointer_stringify_adaptor(callbackId)
|
||||
)
|
||||
},
|
||||
WX_FileSystemManagerAppendFileSync:function(filePath, data, dataLength, encoding) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerAppendFileSync(
|
||||
_WXPointer_stringify_adaptor(filePath),
|
||||
HEAPU8.slice(data, dataLength + data),
|
||||
_WXPointer_stringify_adaptor(encoding)
|
||||
);
|
||||
},
|
||||
WX_FileSystemManagerAppendFileStringSync:function(filePath, data, encoding) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerAppendFileStringSync(_WXPointer_stringify_adaptor(filePath), _WXPointer_stringify_adaptor(data), _WXPointer_stringify_adaptor(encoding));
|
||||
},
|
||||
WX_FileSystemManagerReaddirSync:function(dirPath) {
|
||||
var res = window.WXWASMSDK.WX_FileSystemManagerReaddirSync(_WXPointer_stringify_adaptor(dirPath));
|
||||
var bufferSize = lengthBytesUTF8(res) + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(res, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WX_FileSystemManagerReadCompressedFileSync:function(option, callbackId) {
|
||||
var res = window.WXWASMSDK.WX_FileSystemManagerReadCompressedFileSync(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
var bufferSize = lengthBytesUTF8(res) + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(res, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WX_FileSystemManagerClose:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerClose(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerFstat:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerFstat(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerFtruncate:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerFtruncate(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerGetFileInfo:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerGetFileInfo(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerGetSavedFileList:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerGetSavedFileList(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerOpen:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerOpen(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerRead:function(option, data, dataLength, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerRead(_WXPointer_stringify_adaptor(option), HEAPU8.slice(data, dataLength + data), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerReadCompressedFile:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerReadCompressedFile(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerReadZipEntry:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerReadZipEntry(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerReadZipEntryString:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerReadZipEntryString(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerReaddir:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerReaddir(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerRemoveSavedFile:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerRemoveSavedFile(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerRename:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerRename(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerSaveFile:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerSaveFile(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerTruncate:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerTruncate(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerUnzip:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerUnzip(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerWrite:function(option, data, dataLength, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerWrite(_WXPointer_stringify_adaptor(option), HEAPU8.slice(data, dataLength + data), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerWriteString:function(option, callbackId) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerWriteString(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
},
|
||||
WX_FileSystemManagerRenameSync:function(oldPath, newPath) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerRenameSync(_WXPointer_stringify_adaptor(oldPath), _WXPointer_stringify_adaptor(newPath));
|
||||
},
|
||||
WX_FileSystemManagerReadSync:function(option, callbackId) {
|
||||
var res = window.WXWASMSDK.WX_FileSystemManagerReadSync(_WXPointer_stringify_adaptor(option), _WXPointer_stringify_adaptor(callbackId));
|
||||
var bufferSize = lengthBytesUTF8(res) + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(res, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WX_FileSystemManagerFstatSync:function(option) {
|
||||
var res = window.WXWASMSDK.WX_FileSystemManagerFstatSync(_WXPointer_stringify_adaptor(option));
|
||||
var bufferSize = lengthBytesUTF8(res) + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(res, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WX_FileSystemManagerStatSync:function(path, recursive) {
|
||||
var res = window.WXWASMSDK.WX_FileSystemManagerStatSync(_WXPointer_stringify_adaptor(path), recursive);
|
||||
var bufferSize = lengthBytesUTF8(res) + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(res, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WX_FileSystemManagerWriteSync:function(option, data, dataLength) {
|
||||
var res = window.WXWASMSDK.WX_FileSystemManagerWriteSync(_WXPointer_stringify_adaptor(option), HEAPU8.slice(data, dataLength + data));
|
||||
var bufferSize = lengthBytesUTF8(res) + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(res, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WX_FileSystemManagerWriteStringSync:function(option) {
|
||||
var res = window.WXWASMSDK.WX_FileSystemManagerWriteStringSync(_WXPointer_stringify_adaptor(option));
|
||||
var bufferSize = lengthBytesUTF8(res) + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(res, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WX_FileSystemManagerOpenSync:function(option) {
|
||||
var res = window.WXWASMSDK.WX_FileSystemManagerOpenSync(_WXPointer_stringify_adaptor(option));
|
||||
var bufferSize = lengthBytesUTF8(res) + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(res, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WX_FileSystemManagerSaveFileSync:function(tempFilePath, filePath) {
|
||||
var res = window.WXWASMSDK.WX_FileSystemManagerSaveFileSync(_WXPointer_stringify_adaptor(tempFilePath), _WXPointer_stringify_adaptor(filePath));
|
||||
var bufferSize = lengthBytesUTF8(res) + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(res, buffer, bufferSize);
|
||||
return buffer;
|
||||
},
|
||||
WX_FileSystemManagerCloseSync:function(option) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerCloseSync(_WXPointer_stringify_adaptor(option));
|
||||
},
|
||||
WX_FileSystemManagerFtruncateSync:function(option) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerFtruncateSync(_WXPointer_stringify_adaptor(option));
|
||||
},
|
||||
WX_FileSystemManagerTruncateSync:function(option) {
|
||||
window.WXWASMSDK.WX_FileSystemManagerTruncateSync(_WXPointer_stringify_adaptor(option));
|
||||
},
|
||||
WXVideoSetProperty: function(id, key, value) {
|
||||
window.WXWASMSDK.WXVideoSetProperty(_WXPointer_stringify_adaptor(id), _WXPointer_stringify_adaptor(key), _WXPointer_stringify_adaptor(value));
|
||||
},
|
||||
WX_OnNeedPrivacyAuthorization:function() {
|
||||
window.WXWASMSDK.WX_OnNeedPrivacyAuthorization();
|
||||
},
|
||||
WX_PrivacyAuthorizeResolve: function(option) {
|
||||
window.WXWASMSDK.WX_PrivacyAuthorizeResolve(_WXPointer_stringify_adaptor(option));
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,74 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 63afc2a12fd6d404092ed133a0c10433
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
: Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Editor: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude WeixinMiniGame: 0
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
- 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: x86_64
|
||||
- first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
WeixinMiniGame: WeixinMiniGame
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,74 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 340c9937849614db7bd7a069ff60c77b
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
: Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Editor: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude WeixinMiniGame: 0
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
- 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: x86_64
|
||||
- first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
WeixinMiniGame: WeixinMiniGame
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,324 @@
|
||||
mergeInto(LibraryManager.library, {
|
||||
|
||||
glCompressedTexImage2D: function(target, level, internalFormat, width, height, border, imageSize, data) {
|
||||
|
||||
var lastTid = window._lastTextureId;
|
||||
var isMiniProgram = typeof wx !== 'undefined';
|
||||
|
||||
function getMatchId() {
|
||||
var webgl1c = internalFormat == 36196;
|
||||
if (isMiniProgram && GameGlobal.USED_TEXTURE_COMPRESSION && webgl1c) {
|
||||
var length = HEAPU8.subarray(data, data + 1)[0];
|
||||
var d = HEAPU8.subarray(data + 1, data + 1 + length);
|
||||
var res = [];
|
||||
d.forEach(function(v) {
|
||||
res.push(String.fromCharCode(v));
|
||||
});
|
||||
var matchId = res.join('');
|
||||
var start0 = res.length - 8;
|
||||
var start1 = res.length - 5;
|
||||
if (res[start0] == '_') {
|
||||
start0++;
|
||||
var header = ['a', 's', 't', 'c'];
|
||||
for (var i = 0; i < header.length; i++) {
|
||||
if (res[start0 + i] != header[i]) {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
start0--;
|
||||
var astcBlockSize = matchId.substring(start0 + 5);
|
||||
return [matchId.substr(0, start0), astcBlockSize, false];
|
||||
} else if (res[start1] == '_') {
|
||||
start1++;
|
||||
var size = res[start1++];
|
||||
if (size != '4' && size != '5' && size != '6' && size != '8') {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
var astcBlockSize = size + 'x' + size;
|
||||
var limit = res[start1];
|
||||
var limitType = false;
|
||||
if (limit != '#') {
|
||||
limitType = true;
|
||||
}
|
||||
start1 -= 2;
|
||||
return [matchId.substr(0, start1), astcBlockSize, limitType];
|
||||
} else {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
return [-1, '8x8', false];
|
||||
}
|
||||
|
||||
var matchIdInfo = getMatchId();
|
||||
var matchId = matchIdInfo[0];
|
||||
var astcBlockSize = matchIdInfo[1];
|
||||
var limitType = matchIdInfo[2];
|
||||
|
||||
function compressedImage2D(rawData) {
|
||||
var format = 0;
|
||||
var dataOffset = 16;
|
||||
var compressFormat = limitType ? GameGlobal.NoneLimitSupportedTexture : GameGlobal.TextureCompressedFormat;
|
||||
switch (compressFormat) {
|
||||
case "astc":
|
||||
var astcList = GLctx.getExtension("WEBGL_compressed_texture_astc");
|
||||
if (astcBlockSize == '4x4') {
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_4x4_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '5x5') {
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_5x5_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '6x6') {
|
||||
format = 0x93B4;
|
||||
break;
|
||||
}
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_8x8_KHR;
|
||||
break;
|
||||
case "etc2":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc").COMPRESSED_RGBA8_ETC2_EAC;
|
||||
break;
|
||||
case "dds":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_s3tc").COMPRESSED_RGBA_S3TC_DXT5_EXT;
|
||||
dataOffset = 128;
|
||||
break;
|
||||
case "pvr":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_pvrtc").COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;
|
||||
var PVR_HEADER_METADATA = 12;
|
||||
var PVR_HEADER_LENGTH = 13; // The header length in 32 bit ints.
|
||||
var header = new Int32Array(rawData, 0, PVR_HEADER_LENGTH);
|
||||
dataOffset = header[PVR_HEADER_METADATA] + 52;
|
||||
break;
|
||||
case "etc1":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc1").COMPRESSED_RGB_ETC1_WEBGL;
|
||||
break
|
||||
}
|
||||
GLctx["compressedTexImage2D"](target, level, format, width, height, border, new Uint8Array(rawData, dataOffset))
|
||||
}
|
||||
|
||||
function texImage2D(image) {
|
||||
GLctx.texImage2D(GLctx.TEXTURE_2D, 0, GLctx.RGBA, GLctx.RGBA, GLctx.UNSIGNED_BYTE, image)
|
||||
}
|
||||
|
||||
function renderTexture(id) {
|
||||
if (!GL.textures[lastTid]) {
|
||||
return;
|
||||
}
|
||||
var PotList = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096];
|
||||
var _data = GameGlobal.DownloadedTextures[id].data;
|
||||
var tid = lastTid;
|
||||
if (!GL.textures[tid]) {
|
||||
return;
|
||||
}
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, GL.textures[tid]);
|
||||
|
||||
if (limitType && !GameGlobal.NoneLimitSupportedTexture) {
|
||||
texImage2D(_data);
|
||||
} else if (!GameGlobal.TextureCompressedFormat) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == "pvr" && (width !== height || PotList.indexOf(height) == -1)) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == 'dds' && (height % 4 !== 0 || width % 4 !== 0)) {
|
||||
texImage2D(_data);
|
||||
} else {
|
||||
compressedImage2D(_data);
|
||||
}
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, window._lastBoundTexture ? GL.textures[window._lastBoundTexture] : null);
|
||||
|
||||
}
|
||||
|
||||
function renderTransparent() {
|
||||
GLctx.texImage2D(GLctx.TEXTURE_2D, 0, GLctx.RGBA, 1, 1, 0, GLctx.RGBA, GLctx.UNSIGNED_SHORT_4_4_4_4, new Uint16Array([0, 0]))
|
||||
}
|
||||
|
||||
if (matchId != -1) {
|
||||
if (GameGlobal.DownloadedTextures[matchId] && GameGlobal.DownloadedTextures[matchId].data) {
|
||||
renderTexture(matchId)
|
||||
} else {
|
||||
renderTransparent();
|
||||
window.WXWASMSDK.WXDownloadTexture(matchId, width, height, (function() {
|
||||
renderTexture(matchId)
|
||||
}), limitType)
|
||||
}
|
||||
return
|
||||
}
|
||||
if (GL.currentContext.supportsWebGL2EntryPoints) {
|
||||
GLctx["compressedTexImage2D"](target, level, internalFormat, width, height, border, HEAPU8, data, imageSize);
|
||||
return
|
||||
}
|
||||
GLctx["compressedTexImage2D"](target, level, internalFormat, width, height, border, data ? HEAPU8.subarray(data, data + imageSize) : null)
|
||||
},
|
||||
glCompressedTexSubImage2D: function(target, level, xoffset, yoffset, width, height, format, imageSize, data) {
|
||||
var lastTid = window._lastTextureId;
|
||||
var isMiniProgram = typeof wx !== 'undefined';
|
||||
|
||||
function getMatchId() {
|
||||
var webgl1c = format == 36196;
|
||||
if (isMiniProgram && GameGlobal.USED_TEXTURE_COMPRESSION && webgl1c) {
|
||||
var length = HEAPU8.subarray(data, data + 1)[0];
|
||||
var d = HEAPU8.subarray(data + 1, data + 1 + length);
|
||||
var res = [];
|
||||
d.forEach(function(v) {
|
||||
res.push(String.fromCharCode(v));
|
||||
});
|
||||
var matchId = res.join('');
|
||||
var start0 = res.length - 8;
|
||||
var start1 = res.length - 5;
|
||||
if (res[start0] == '_') {
|
||||
start0++;
|
||||
var header = ['a', 's', 't', 'c'];
|
||||
for (var i = 0; i < header.length; i++) {
|
||||
if (res[start0 + i] != header[i]) {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
start0--;
|
||||
var astcBlockSize = matchId.substring(start0 + 5);
|
||||
return [matchId.substr(0, start0), astcBlockSize, false];
|
||||
} else if (res[start1] == '_') {
|
||||
start1++;
|
||||
var size = res[start1++];
|
||||
if (size != '4' && size != '5' && size != '6' && size != '8') {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
var astcBlockSize = size + 'x' + size;
|
||||
var limit = res[start1];
|
||||
var limitType = false;
|
||||
if (limit != '#') {
|
||||
limitType = true;
|
||||
}
|
||||
start1 -= 2;
|
||||
return [matchId.substr(0, start1), astcBlockSize, limitType];
|
||||
} else {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
return [-1, '8x8', false];
|
||||
}
|
||||
|
||||
var matchIdInfo = getMatchId();
|
||||
var matchId = matchIdInfo[0];
|
||||
var astcBlockSize = matchIdInfo[1];
|
||||
var limitType = matchIdInfo[2];
|
||||
|
||||
function compressedImage2D(rawData) {
|
||||
var format = 0;
|
||||
var dataOffset = 16;
|
||||
var compressFormat = limitType ? GameGlobal.NoneLimitSupportedTexture : GameGlobal.TextureCompressedFormat;
|
||||
switch (compressFormat) {
|
||||
case "astc":
|
||||
var astcList = GLctx.getExtension("WEBGL_compressed_texture_astc");
|
||||
if (astcBlockSize == '4x4') {
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_4x4_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '5x5') {
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_5x5_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '6x6') {
|
||||
format = 0x93B4;
|
||||
break;
|
||||
}
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_8x8_KHR;
|
||||
break;
|
||||
case "etc2":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc").COMPRESSED_RGBA8_ETC2_EAC;
|
||||
break;
|
||||
case "dds":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_s3tc").COMPRESSED_RGBA_S3TC_DXT5_EXT;
|
||||
dataOffset = 128;
|
||||
break;
|
||||
case "pvr":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_pvrtc").COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;
|
||||
var PVR_HEADER_METADATA = 12;
|
||||
var PVR_HEADER_LENGTH = 13; // The header length in 32 bit ints.
|
||||
var header = new Int32Array(rawData, 0, PVR_HEADER_LENGTH);
|
||||
dataOffset = header[PVR_HEADER_METADATA] + 52;
|
||||
break;
|
||||
case "etc1":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc1").COMPRESSED_RGB_ETC1_WEBGL;
|
||||
break
|
||||
}
|
||||
GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, new Uint8Array(rawData, dataOffset))
|
||||
}
|
||||
|
||||
function texImage2D(image) {
|
||||
GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, GLctx.RGBA, GLctx.UNSIGNED_BYTE, image)
|
||||
}
|
||||
|
||||
function renderTexture(id) {
|
||||
if (!GL.textures[lastTid]) {
|
||||
return;
|
||||
}
|
||||
var _data = GameGlobal.DownloadedTextures[id].data;
|
||||
var tid = lastTid;
|
||||
if (!GL.textures[tid]) {
|
||||
return;
|
||||
}
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, GL.textures[tid]);
|
||||
|
||||
if (limitType && !GameGlobal.NoneLimitSupportedTexture) {
|
||||
texImage2D(_data);
|
||||
} else if (!GameGlobal.TextureCompressedFormat) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == "pvr" && (width !== height || PotList.indexOf(height) == -1)) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == 'dds' && (height % 4 !== 0 || width % 4 !== 0)) {
|
||||
texImage2D(_data);
|
||||
} else {
|
||||
compressedImage2D(_data);
|
||||
}
|
||||
|
||||
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, window._lastBoundTexture ? GL.textures[window._lastBoundTexture] : null);
|
||||
|
||||
}
|
||||
|
||||
var p = window._lastTexStorage2DParams;
|
||||
if (matchId != -1) {
|
||||
var f = GLctx.RGBA8;
|
||||
switch (GameGlobal.TextureCompressedFormat) {
|
||||
case "astc":
|
||||
var astcList = GLctx.getExtension("WEBGL_compressed_texture_astc");
|
||||
if (astcBlockSize == '4x4') {
|
||||
f = astcList.COMPRESSED_RGBA_ASTC_4x4_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '5x5') {
|
||||
f = astcList.COMPRESSED_RGBA_ASTC_5x5_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '6x6') {
|
||||
f = 0x93B4;
|
||||
break;
|
||||
}
|
||||
f = astcList.COMPRESSED_RGBA_ASTC_8x8_KHR;
|
||||
break;
|
||||
case "etc2":
|
||||
f = GLctx.getExtension("WEBGL_compressed_texture_etc").COMPRESSED_RGBA8_ETC2_EAC;
|
||||
break;
|
||||
case "dds":
|
||||
f = GLctx.getExtension("WEBGL_compressed_texture_s3tc").COMPRESSED_RGBA_S3TC_DXT5_EXT;
|
||||
break;
|
||||
case "pvr":
|
||||
f = GLctx.getExtension("WEBGL_compressed_texture_pvrtc").COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;
|
||||
break;
|
||||
}
|
||||
GLctx["texStorage2D"](p[0], p[1], f, width, height);
|
||||
if (GameGlobal.DownloadedTextures[matchId] && GameGlobal.DownloadedTextures[matchId].data) {
|
||||
renderTexture(matchId)
|
||||
} else {
|
||||
window.WXWASMSDK.WXDownloadTexture(matchId, width, height, (function() {
|
||||
renderTexture(matchId)
|
||||
}), limitType)
|
||||
}
|
||||
return
|
||||
}
|
||||
if (GL.currentContext.supportsWebGL2EntryPoints) {
|
||||
GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, HEAPU8, data, imageSize);
|
||||
return
|
||||
}
|
||||
GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, data ? HEAPU8.subarray(data, data + imageSize) : null)
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,37 @@
|
||||
fileFormatVersion: 2
|
||||
guid: d55bbf266368a4d91b5b8750b746dc78
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
WeixinMiniGame: WeixinMiniGame
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
+324
@@ -0,0 +1,324 @@
|
||||
mergeInto(LibraryManager.library, {
|
||||
|
||||
glCompressedTexImage2D: function(target, level, internalFormat, width, height, border, imageSize, data) {
|
||||
|
||||
var lastTid = window._lastTextureId;
|
||||
var isMiniProgram = typeof wx !== 'undefined';
|
||||
|
||||
function getMatchId() {
|
||||
var webgl2c = internalFormat == 37493;
|
||||
if (isMiniProgram && GameGlobal.USED_TEXTURE_COMPRESSION && webgl2c) {
|
||||
var length = HEAPU8.subarray(data, data + 1)[0];
|
||||
var d = HEAPU8.subarray(data + 1, data + 1 + length);
|
||||
var res = [];
|
||||
d.forEach(function(v) {
|
||||
res.push(String.fromCharCode(v));
|
||||
});
|
||||
var matchId = res.join('');
|
||||
var start0 = res.length - 8;
|
||||
var start1 = res.length - 5;
|
||||
if (res[start0] == '_') {
|
||||
start0++;
|
||||
var header = ['a', 's', 't', 'c'];
|
||||
for (var i = 0; i < header.length; i++) {
|
||||
if (res[start0 + i] != header[i]) {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
start0--;
|
||||
var astcBlockSize = matchId.substring(start0 + 5);
|
||||
return [matchId.substr(0, start0), astcBlockSize, false];
|
||||
} else if (res[start1] == '_') {
|
||||
start1++;
|
||||
var size = res[start1++];
|
||||
if (size != '4' && size != '5' && size != '6' && size != '8') {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
var astcBlockSize = size + 'x' + size;
|
||||
var limit = res[start1];
|
||||
var limitType = false;
|
||||
if (limit != '#') {
|
||||
limitType = true;
|
||||
}
|
||||
start1 -= 2;
|
||||
return [matchId.substr(0, start1), astcBlockSize, limitType];
|
||||
} else {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
return [-1, '8x8', false];
|
||||
}
|
||||
|
||||
var matchIdInfo = getMatchId();
|
||||
var matchId = matchIdInfo[0];
|
||||
var astcBlockSize = matchIdInfo[1];
|
||||
var limitType = matchIdInfo[2];
|
||||
|
||||
function compressedImage2D(rawData) {
|
||||
var format = 0;
|
||||
var dataOffset = 16;
|
||||
var compressFormat = limitType ? GameGlobal.NoneLimitSupportedTexture : GameGlobal.TextureCompressedFormat;
|
||||
switch (compressFormat) {
|
||||
case "astc":
|
||||
var astcList = GLctx.getExtension("WEBGL_compressed_texture_astc");
|
||||
if (astcBlockSize == '4x4') {
|
||||
format = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '5x5') {
|
||||
format = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '6x6') {
|
||||
format = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR;
|
||||
break;
|
||||
}
|
||||
format = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR;
|
||||
break;
|
||||
case "etc2":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc").COMPRESSED_RGBA8_ETC2_EAC;
|
||||
break;
|
||||
case "dds":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_s3tc").COMPRESSED_RGBA_S3TC_DXT5_EXT;
|
||||
dataOffset = 128;
|
||||
break;
|
||||
case "pvr":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_pvrtc").COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;
|
||||
var PVR_HEADER_METADATA = 12;
|
||||
var PVR_HEADER_LENGTH = 13; // The header length in 32 bit ints.
|
||||
var header = new Int32Array(rawData, 0, PVR_HEADER_LENGTH);
|
||||
dataOffset = header[PVR_HEADER_METADATA] + 52;
|
||||
break;
|
||||
case "etc1":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc1").COMPRESSED_RGB_ETC1_WEBGL;
|
||||
break
|
||||
}
|
||||
GLctx["compressedTexImage2D"](target, level, format, width, height, border, new Uint8Array(rawData, dataOffset))
|
||||
}
|
||||
|
||||
function texImage2D(image) {
|
||||
GLctx.texImage2D(GLctx.TEXTURE_2D, 0, GLctx.RGBA, GLctx.RGBA, GLctx.UNSIGNED_BYTE, image)
|
||||
}
|
||||
|
||||
function renderTexture(id) {
|
||||
if (!GL.textures[lastTid]) {
|
||||
return;
|
||||
}
|
||||
var PotList = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096];
|
||||
var _data = GameGlobal.DownloadedTextures[id].data;
|
||||
var tid = lastTid;
|
||||
if (!GL.textures[tid]) {
|
||||
return;
|
||||
}
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, GL.textures[tid]);
|
||||
|
||||
if (limitType && !GameGlobal.NoneLimitSupportedTexture) {
|
||||
texImage2D(_data);
|
||||
} else if (!GameGlobal.TextureCompressedFormat) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == "pvr" && (width !== height || PotList.indexOf(height) == -1)) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == 'dds' && (height % 4 !== 0 || width % 4 !== 0)) {
|
||||
texImage2D(_data);
|
||||
} else {
|
||||
compressedImage2D(_data);
|
||||
}
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, window._lastBoundTexture ? GL.textures[window._lastBoundTexture] : null);
|
||||
|
||||
}
|
||||
|
||||
function renderTransparent() {
|
||||
GLctx.texImage2D(GLctx.TEXTURE_2D, 0, GLctx.RGBA, 1, 1, 0, GLctx.RGBA, GLctx.UNSIGNED_SHORT_4_4_4_4, new Uint16Array([0, 0]))
|
||||
}
|
||||
|
||||
if (matchId != -1) {
|
||||
if (GameGlobal.DownloadedTextures[matchId] && GameGlobal.DownloadedTextures[matchId].data) {
|
||||
renderTexture(matchId)
|
||||
} else {
|
||||
renderTransparent();
|
||||
window.WXWASMSDK.WXDownloadTexture(matchId, width, height, (function() {
|
||||
renderTexture(matchId)
|
||||
}), limitType)
|
||||
}
|
||||
return
|
||||
}
|
||||
if (GL.currentContext.supportsWebGL2EntryPoints) {
|
||||
GLctx["compressedTexImage2D"](target, level, internalFormat, width, height, border, HEAPU8, data, imageSize);
|
||||
return
|
||||
}
|
||||
GLctx["compressedTexImage2D"](target, level, internalFormat, width, height, border, data ? HEAPU8.subarray(data, data + imageSize) : null)
|
||||
},
|
||||
glCompressedTexSubImage2D: function(target, level, xoffset, yoffset, width, height, format, imageSize, data) {
|
||||
var lastTid = window._lastTextureId;
|
||||
var isMiniProgram = typeof wx !== 'undefined';
|
||||
|
||||
function getMatchId() {
|
||||
var webgl2c = format == 37493;
|
||||
if (isMiniProgram && GameGlobal.USED_TEXTURE_COMPRESSION && webgl2c) {
|
||||
var length = HEAPU8.subarray(data, data + 1)[0];
|
||||
var d = HEAPU8.subarray(data + 1, data + 1 + length);
|
||||
var res = [];
|
||||
d.forEach(function(v) {
|
||||
res.push(String.fromCharCode(v));
|
||||
});
|
||||
var matchId = res.join('');
|
||||
var start0 = res.length - 8;
|
||||
var start1 = res.length - 5;
|
||||
if (res[start0] == '_') {
|
||||
start0++;
|
||||
var header = ['a', 's', 't', 'c'];
|
||||
for (var i = 0; i < header.length; i++) {
|
||||
if (res[start0 + i] != header[i]) {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
start0--;
|
||||
var astcBlockSize = matchId.substring(start0 + 5);
|
||||
return [matchId.substr(0, start0), astcBlockSize, false];
|
||||
} else if (res[start1] == '_') {
|
||||
start1++;
|
||||
var size = res[start1++];
|
||||
if (size != '4' && size != '5' && size != '6' && size != '8') {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
var astcBlockSize = size + 'x' + size;
|
||||
var limit = res[start1];
|
||||
var limitType = false;
|
||||
if (limit != '#') {
|
||||
limitType = true;
|
||||
}
|
||||
start1 -= 2;
|
||||
return [matchId.substr(0, start1), astcBlockSize, limitType];
|
||||
} else {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
return [-1, '8x8', false];
|
||||
}
|
||||
|
||||
var matchIdInfo = getMatchId();
|
||||
var matchId = matchIdInfo[0];
|
||||
var astcBlockSize = matchIdInfo[1];
|
||||
var limitType = matchIdInfo[2];
|
||||
|
||||
function compressedImage2D(rawData) {
|
||||
var format = 0;
|
||||
var dataOffset = 16;
|
||||
var compressFormat = limitType ? GameGlobal.NoneLimitSupportedTexture : GameGlobal.TextureCompressedFormat;
|
||||
switch (compressFormat) {
|
||||
case "astc":
|
||||
var astcList = GLctx.getExtension("WEBGL_compressed_texture_astc");
|
||||
if (astcBlockSize == '4x4') {
|
||||
format = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '5x5') {
|
||||
format = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '6x6') {
|
||||
format = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR;
|
||||
break;
|
||||
}
|
||||
format = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR;
|
||||
break;
|
||||
case "etc2":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc").COMPRESSED_RGBA8_ETC2_EAC;
|
||||
break;
|
||||
case "dds":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_s3tc").COMPRESSED_RGBA_S3TC_DXT5_EXT;
|
||||
dataOffset = 128;
|
||||
break;
|
||||
case "pvr":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_pvrtc").COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;
|
||||
var PVR_HEADER_METADATA = 12;
|
||||
var PVR_HEADER_LENGTH = 13; // The header length in 32 bit ints.
|
||||
var header = new Int32Array(rawData, 0, PVR_HEADER_LENGTH);
|
||||
dataOffset = header[PVR_HEADER_METADATA] + 52;
|
||||
break;
|
||||
case "etc1":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc1").COMPRESSED_RGB_ETC1_WEBGL;
|
||||
break
|
||||
}
|
||||
GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, new Uint8Array(rawData, dataOffset))
|
||||
}
|
||||
|
||||
function texImage2D(image) {
|
||||
GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, GLctx.RGBA, GLctx.UNSIGNED_BYTE, image)
|
||||
}
|
||||
|
||||
function renderTexture(id) {
|
||||
if (!GL.textures[lastTid]) {
|
||||
return;
|
||||
}
|
||||
var _data = GameGlobal.DownloadedTextures[id].data;
|
||||
var tid = lastTid;
|
||||
if (!GL.textures[tid]) {
|
||||
return;
|
||||
}
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, GL.textures[tid]);
|
||||
|
||||
if (limitType && !GameGlobal.NoneLimitSupportedTexture) {
|
||||
texImage2D(_data);
|
||||
} else if (!GameGlobal.TextureCompressedFormat) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == "pvr" && (width !== height || PotList.indexOf(height) == -1)) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == 'dds' && (height % 4 !== 0 || width % 4 !== 0)) {
|
||||
texImage2D(_data);
|
||||
} else {
|
||||
compressedImage2D(_data);
|
||||
}
|
||||
|
||||
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, window._lastBoundTexture ? GL.textures[window._lastBoundTexture] : null);
|
||||
|
||||
}
|
||||
|
||||
var p = window._lastTexStorage2DParams;
|
||||
if (matchId != -1) {
|
||||
var f = GLctx.RGBA8;
|
||||
switch (GameGlobal.TextureCompressedFormat) {
|
||||
case "astc":
|
||||
var astcList = GLctx.getExtension("WEBGL_compressed_texture_astc");
|
||||
if (astcBlockSize == '4x4') {
|
||||
f = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '5x5') {
|
||||
f = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '6x6') {
|
||||
f = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR;
|
||||
break;
|
||||
}
|
||||
f = astcList.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR;
|
||||
break;
|
||||
case "etc2":
|
||||
f = GLctx.getExtension("WEBGL_compressed_texture_etc").COMPRESSED_RGBA8_ETC2_EAC;
|
||||
break;
|
||||
case "dds":
|
||||
f = GLctx.getExtension("WEBGL_compressed_texture_s3tc").COMPRESSED_RGBA_S3TC_DXT5_EXT;
|
||||
break;
|
||||
case "pvr":
|
||||
f = GLctx.getExtension("WEBGL_compressed_texture_pvrtc").COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;
|
||||
break;
|
||||
}
|
||||
GLctx["texStorage2D"](p[0], p[1], f, width, height);
|
||||
if (GameGlobal.DownloadedTextures[matchId] && GameGlobal.DownloadedTextures[matchId].data) {
|
||||
renderTexture(matchId)
|
||||
} else {
|
||||
window.WXWASMSDK.WXDownloadTexture(matchId, width, height, (function() {
|
||||
renderTexture(matchId)
|
||||
}), limitType)
|
||||
}
|
||||
return
|
||||
}
|
||||
if (GL.currentContext.supportsWebGL2EntryPoints) {
|
||||
GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, HEAPU8, data, imageSize);
|
||||
return
|
||||
}
|
||||
GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, data ? HEAPU8.subarray(data, data + imageSize) : null)
|
||||
},
|
||||
});
|
||||
+37
@@ -0,0 +1,37 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f1315910877e64f9898a2c5a31a63994
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
WeixinMiniGame: WeixinMiniGame
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,324 @@
|
||||
mergeInto(LibraryManager.library, {
|
||||
|
||||
glCompressedTexImage2D: function(target, level, internalFormat, width, height, border, imageSize, data) {
|
||||
|
||||
var lastTid = window._lastTextureId;
|
||||
var isMiniProgram = typeof wx !== 'undefined';
|
||||
|
||||
function getMatchId() {
|
||||
var webgl2c = internalFormat == 37492;
|
||||
if (isMiniProgram && GameGlobal.USED_TEXTURE_COMPRESSION && webgl2c) {
|
||||
var length = HEAPU8.subarray(data, data + 1)[0];
|
||||
var d = HEAPU8.subarray(data + 1, data + 1 + length);
|
||||
var res = [];
|
||||
d.forEach(function(v) {
|
||||
res.push(String.fromCharCode(v));
|
||||
});
|
||||
var matchId = res.join('');
|
||||
var start0 = res.length - 8;
|
||||
var start1 = res.length - 5;
|
||||
if (res[start0] == '_') {
|
||||
start0++;
|
||||
var header = ['a', 's', 't', 'c'];
|
||||
for (var i = 0; i < header.length; i++) {
|
||||
if (res[start0 + i] != header[i]) {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
start0--;
|
||||
var astcBlockSize = matchId.substring(start0 + 5);
|
||||
return [matchId.substr(0, start0), astcBlockSize, false];
|
||||
} else if (res[start1] == '_') {
|
||||
start1++;
|
||||
var size = res[start1++];
|
||||
if (size != '4' && size != '5' && size != '6' && size != '8') {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
var astcBlockSize = size + 'x' + size;
|
||||
var limit = res[start1];
|
||||
var limitType = false;
|
||||
if (limit != '#') {
|
||||
limitType = true;
|
||||
}
|
||||
start1 -= 2;
|
||||
return [matchId.substr(0, start1), astcBlockSize, limitType];
|
||||
} else {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
return [-1, '8x8', false];
|
||||
}
|
||||
|
||||
var matchIdInfo = getMatchId();
|
||||
var matchId = matchIdInfo[0];
|
||||
var astcBlockSize = matchIdInfo[1];
|
||||
var limitType = matchIdInfo[2];
|
||||
|
||||
function compressedImage2D(rawData) {
|
||||
var format = 0;
|
||||
var dataOffset = 16;
|
||||
var compressFormat = limitType ? GameGlobal.NoneLimitSupportedTexture : GameGlobal.TextureCompressedFormat;
|
||||
switch (compressFormat) {
|
||||
case "astc":
|
||||
var astcList = GLctx.getExtension("WEBGL_compressed_texture_astc");
|
||||
if (astcBlockSize == '4x4') {
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_4x4_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '5x5') {
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_5x5_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '6x6') {
|
||||
format = 0x93B4;
|
||||
break;
|
||||
}
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_8x8_KHR;
|
||||
break;
|
||||
case "etc2":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc").COMPRESSED_RGBA8_ETC2_EAC;
|
||||
break;
|
||||
case "dds":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_s3tc").COMPRESSED_RGBA_S3TC_DXT5_EXT;
|
||||
dataOffset = 128;
|
||||
break;
|
||||
case "pvr":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_pvrtc").COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;
|
||||
var PVR_HEADER_METADATA = 12;
|
||||
var PVR_HEADER_LENGTH = 13; // The header length in 32 bit ints.
|
||||
var header = new Int32Array(rawData, 0, PVR_HEADER_LENGTH);
|
||||
dataOffset = header[PVR_HEADER_METADATA] + 52;
|
||||
break;
|
||||
case "etc1":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc1").COMPRESSED_RGB_ETC1_WEBGL;
|
||||
break
|
||||
}
|
||||
GLctx["compressedTexImage2D"](target, level, format, width, height, border, new Uint8Array(rawData, dataOffset))
|
||||
}
|
||||
|
||||
function texImage2D(image) {
|
||||
GLctx.texImage2D(GLctx.TEXTURE_2D, 0, GLctx.RGBA, GLctx.RGBA, GLctx.UNSIGNED_BYTE, image)
|
||||
}
|
||||
|
||||
function renderTexture(id) {
|
||||
if (!GL.textures[lastTid]) {
|
||||
return;
|
||||
}
|
||||
var PotList = [1, 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096];
|
||||
var _data = GameGlobal.DownloadedTextures[id].data;
|
||||
var tid = lastTid;
|
||||
if (!GL.textures[tid]) {
|
||||
return;
|
||||
}
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, GL.textures[tid]);
|
||||
|
||||
if (limitType && !GameGlobal.NoneLimitSupportedTexture) {
|
||||
texImage2D(_data);
|
||||
} else if (!GameGlobal.TextureCompressedFormat) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == "pvr" && (width !== height || PotList.indexOf(height) == -1)) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == 'dds' && (height % 4 !== 0 || width % 4 !== 0)) {
|
||||
texImage2D(_data);
|
||||
} else {
|
||||
compressedImage2D(_data);
|
||||
}
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, window._lastBoundTexture ? GL.textures[window._lastBoundTexture] : null);
|
||||
|
||||
}
|
||||
|
||||
function renderTransparent() {
|
||||
GLctx.texImage2D(GLctx.TEXTURE_2D, 0, GLctx.RGBA, 1, 1, 0, GLctx.RGBA, GLctx.UNSIGNED_SHORT_4_4_4_4, new Uint16Array([0, 0]))
|
||||
}
|
||||
|
||||
if (matchId != -1) {
|
||||
if (GameGlobal.DownloadedTextures[matchId] && GameGlobal.DownloadedTextures[matchId].data) {
|
||||
renderTexture(matchId)
|
||||
} else {
|
||||
renderTransparent();
|
||||
window.WXWASMSDK.WXDownloadTexture(matchId, width, height, (function() {
|
||||
renderTexture(matchId)
|
||||
}), limitType)
|
||||
}
|
||||
return
|
||||
}
|
||||
if (GL.currentContext.supportsWebGL2EntryPoints) {
|
||||
GLctx["compressedTexImage2D"](target, level, internalFormat, width, height, border, HEAPU8, data, imageSize);
|
||||
return
|
||||
}
|
||||
GLctx["compressedTexImage2D"](target, level, internalFormat, width, height, border, data ? HEAPU8.subarray(data, data + imageSize) : null)
|
||||
},
|
||||
glCompressedTexSubImage2D: function(target, level, xoffset, yoffset, width, height, format, imageSize, data) {
|
||||
var lastTid = window._lastTextureId;
|
||||
var isMiniProgram = typeof wx !== 'undefined';
|
||||
|
||||
function getMatchId() {
|
||||
var webgl2c = format == 37492;
|
||||
if (isMiniProgram && GameGlobal.USED_TEXTURE_COMPRESSION && webgl2c) {
|
||||
var length = HEAPU8.subarray(data, data + 1)[0];
|
||||
var d = HEAPU8.subarray(data + 1, data + 1 + length);
|
||||
var res = [];
|
||||
d.forEach(function(v) {
|
||||
res.push(String.fromCharCode(v));
|
||||
});
|
||||
var matchId = res.join('');
|
||||
var start0 = res.length - 8;
|
||||
var start1 = res.length - 5;
|
||||
if (res[start0] == '_') {
|
||||
start0++;
|
||||
var header = ['a', 's', 't', 'c'];
|
||||
for (var i = 0; i < header.length; i++) {
|
||||
if (res[start0 + i] != header[i]) {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
start0--;
|
||||
var astcBlockSize = matchId.substring(start0 + 5);
|
||||
return [matchId.substr(0, start0), astcBlockSize, false];
|
||||
} else if (res[start1] == '_') {
|
||||
start1++;
|
||||
var size = res[start1++];
|
||||
if (size != '4' && size != '5' && size != '6' && size != '8') {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
var astcBlockSize = size + 'x' + size;
|
||||
var limit = res[start1];
|
||||
var limitType = false;
|
||||
if (limit != '#') {
|
||||
limitType = true;
|
||||
}
|
||||
start1 -= 2;
|
||||
return [matchId.substr(0, start1), astcBlockSize, limitType];
|
||||
} else {
|
||||
return [matchId, '8x8', false];
|
||||
}
|
||||
}
|
||||
return [-1, '8x8', false];
|
||||
}
|
||||
|
||||
var matchIdInfo = getMatchId();
|
||||
var matchId = matchIdInfo[0];
|
||||
var astcBlockSize = matchIdInfo[1];
|
||||
var limitType = matchIdInfo[2];
|
||||
|
||||
function compressedImage2D(rawData) {
|
||||
var format = 0;
|
||||
var dataOffset = 16;
|
||||
var compressFormat = limitType ? GameGlobal.NoneLimitSupportedTexture : GameGlobal.TextureCompressedFormat;
|
||||
switch (compressFormat) {
|
||||
case "astc":
|
||||
var astcList = GLctx.getExtension("WEBGL_compressed_texture_astc");
|
||||
if (astcBlockSize == '4x4') {
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_4x4_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '5x5') {
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_5x5_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '6x6') {
|
||||
format = 0x93B4;
|
||||
break;
|
||||
}
|
||||
format = astcList.COMPRESSED_RGBA_ASTC_8x8_KHR;
|
||||
break;
|
||||
case "etc2":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc").COMPRESSED_RGBA8_ETC2_EAC;
|
||||
break;
|
||||
case "dds":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_s3tc").COMPRESSED_RGBA_S3TC_DXT5_EXT;
|
||||
dataOffset = 128;
|
||||
break;
|
||||
case "pvr":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_pvrtc").COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;
|
||||
var PVR_HEADER_METADATA = 12;
|
||||
var PVR_HEADER_LENGTH = 13; // The header length in 32 bit ints.
|
||||
var header = new Int32Array(rawData, 0, PVR_HEADER_LENGTH);
|
||||
dataOffset = header[PVR_HEADER_METADATA] + 52;
|
||||
break;
|
||||
case "etc1":
|
||||
format = GLctx.getExtension("WEBGL_compressed_texture_etc1").COMPRESSED_RGB_ETC1_WEBGL;
|
||||
break
|
||||
}
|
||||
GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, new Uint8Array(rawData, dataOffset))
|
||||
}
|
||||
|
||||
function texImage2D(image) {
|
||||
GLctx.texSubImage2D(target, level, xoffset, yoffset, width, height, GLctx.RGBA, GLctx.UNSIGNED_BYTE, image)
|
||||
}
|
||||
|
||||
function renderTexture(id) {
|
||||
if (!GL.textures[lastTid]) {
|
||||
return;
|
||||
}
|
||||
var _data = GameGlobal.DownloadedTextures[id].data;
|
||||
var tid = lastTid;
|
||||
if (!GL.textures[tid]) {
|
||||
return;
|
||||
}
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, GL.textures[tid]);
|
||||
|
||||
if (limitType && !GameGlobal.NoneLimitSupportedTexture) {
|
||||
texImage2D(_data);
|
||||
} else if (!GameGlobal.TextureCompressedFormat) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == "pvr" && (width !== height || PotList.indexOf(height) == -1)) {
|
||||
texImage2D(_data);
|
||||
} else if (GameGlobal.TextureCompressedFormat == 'dds' && (height % 4 !== 0 || width % 4 !== 0)) {
|
||||
texImage2D(_data);
|
||||
} else {
|
||||
compressedImage2D(_data);
|
||||
}
|
||||
|
||||
|
||||
GLctx.bindTexture(GLctx.TEXTURE_2D, window._lastBoundTexture ? GL.textures[window._lastBoundTexture] : null);
|
||||
|
||||
}
|
||||
|
||||
var p = window._lastTexStorage2DParams;
|
||||
if (matchId != -1) {
|
||||
var f = GLctx.RGBA8;
|
||||
switch (GameGlobal.TextureCompressedFormat) {
|
||||
case "astc":
|
||||
var astcList = GLctx.getExtension("WEBGL_compressed_texture_astc");
|
||||
if (astcBlockSize == '4x4') {
|
||||
f = astcList.COMPRESSED_RGBA_ASTC_4x4_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '5x5') {
|
||||
f = astcList.COMPRESSED_RGBA_ASTC_5x5_KHR;
|
||||
break;
|
||||
}
|
||||
if (astcBlockSize == '6x6') {
|
||||
f = 0x93B4;
|
||||
break;
|
||||
}
|
||||
f = astcList.COMPRESSED_RGBA_ASTC_8x8_KHR;
|
||||
break;
|
||||
case "etc2":
|
||||
f = GLctx.getExtension("WEBGL_compressed_texture_etc").COMPRESSED_RGBA8_ETC2_EAC;
|
||||
break;
|
||||
case "dds":
|
||||
f = GLctx.getExtension("WEBGL_compressed_texture_s3tc").COMPRESSED_RGBA_S3TC_DXT5_EXT;
|
||||
break;
|
||||
case "pvr":
|
||||
f = GLctx.getExtension("WEBGL_compressed_texture_pvrtc").COMPRESSED_RGBA_PVRTC_4BPPV1_IMG;
|
||||
break;
|
||||
}
|
||||
GLctx["texStorage2D"](p[0], p[1], f, width, height);
|
||||
if (GameGlobal.DownloadedTextures[matchId] && GameGlobal.DownloadedTextures[matchId].data) {
|
||||
renderTexture(matchId)
|
||||
} else {
|
||||
window.WXWASMSDK.WXDownloadTexture(matchId, width, height, (function() {
|
||||
renderTexture(matchId)
|
||||
}), limitType)
|
||||
}
|
||||
return
|
||||
}
|
||||
if (GL.currentContext.supportsWebGL2EntryPoints) {
|
||||
GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, HEAPU8, data, imageSize);
|
||||
return
|
||||
}
|
||||
GLctx["compressedTexSubImage2D"](target, level, xoffset, yoffset, width, height, format, data ? HEAPU8.subarray(data, data + imageSize) : null)
|
||||
},
|
||||
});
|
||||
@@ -0,0 +1,37 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 3940ebcc91b954d46ab08a5ee248e437
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
WeixinMiniGame: WeixinMiniGame
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,114 @@
|
||||
var UDPSocketLibrary =
|
||||
{
|
||||
$udpSocketManager:
|
||||
{
|
||||
/*
|
||||
* Map of instances
|
||||
*
|
||||
* Instance structure:
|
||||
* {
|
||||
* url: string,
|
||||
* ws: WebSocket
|
||||
* }
|
||||
*/
|
||||
instances: {},
|
||||
|
||||
/* Last instance ID */
|
||||
lastId: 0,
|
||||
|
||||
/* Event listeners */
|
||||
onOpen: null,
|
||||
onMessage: null,
|
||||
onError: null,
|
||||
onClose: null,
|
||||
},
|
||||
|
||||
|
||||
WXCreateUDPSocket: function (server, remotePort, localPort) {
|
||||
var instanceId = ++udpSocketManager.lastId;
|
||||
var udpSocket = wx.createUDPSocket();
|
||||
if (localPort == 0) {
|
||||
localPort = udpSocket.bind()
|
||||
} else {
|
||||
udpSocket.bind(localPort)
|
||||
}
|
||||
var instance = {
|
||||
instanceId: instanceId,
|
||||
socket: udpSocket,
|
||||
server: UTF8ToString(server),
|
||||
remotePort: remotePort,
|
||||
localPort: localPort,
|
||||
OnMessage: (function (res) {
|
||||
if (udpSocketManager.onMessage) {
|
||||
var dataBuffer = new Uint8Array(res.message);
|
||||
var buffer = _malloc(dataBuffer.length);
|
||||
HEAPU8.set(dataBuffer, buffer);
|
||||
Module.dynCall_viii(udpSocketManager.onMessage, instanceId, buffer, dataBuffer.length);
|
||||
_free(buffer)
|
||||
}
|
||||
}),
|
||||
OnError: (function (res) {
|
||||
if (udpSocketManager.onError) {
|
||||
var msg = res.errMsg;
|
||||
console.log("udp socket on error " + instanceId + " " + msg);
|
||||
var length = lengthBytesUTF8(msg) + 1;
|
||||
var buffer = _malloc(length);
|
||||
stringToUTF8(msg, buffer, length);
|
||||
Module.dynCall_vii(udpSocketManager.onError, instanceId, buffer);
|
||||
_free(buffer)
|
||||
}
|
||||
}),
|
||||
OnClose: (function (res) {
|
||||
if (udpSocketManager.onClose) {
|
||||
Module.dynCall_vi(udpSocketManager.onClose, instanceId)
|
||||
}
|
||||
})
|
||||
};
|
||||
udpSocket.onMessage(instance.OnMessage);
|
||||
udpSocket.onError(instance.OnError);
|
||||
udpSocket.onClose(instance.OnClose);
|
||||
udpSocket.connect({
|
||||
address:instance.server,
|
||||
port:instance.remotePort
|
||||
});
|
||||
udpSocketManager.instances[instanceId] = instance;
|
||||
return instanceId
|
||||
},
|
||||
|
||||
WXSendUDPSocket: function (instanceId, bufferPtr, offset, length) {
|
||||
var instance = udpSocketManager.instances[instanceId];
|
||||
if (instance && instance.socket) {
|
||||
instance.socket.write({
|
||||
address: instance.server,
|
||||
port: instance.remotePort,
|
||||
message: buffer.slice(bufferPtr + offset, bufferPtr + length)
|
||||
})
|
||||
} else {
|
||||
console.log("udp socket instance not found " + instanceId)
|
||||
}
|
||||
},
|
||||
|
||||
WXCloseUDPSocket: function (instanceId) {
|
||||
var instance = udpSocketManager.instances[instanceId];
|
||||
if (instance && instance.socket) {
|
||||
instance.socket.close();
|
||||
instance.socket = null;
|
||||
delete udpSocketManager.instances[instanceId]
|
||||
} else {
|
||||
console.log("udp socket instance not found " + instanceId)
|
||||
}
|
||||
},
|
||||
WXUDPSocketSetOnMessage: function (callback) {
|
||||
udpSocketManager.onMessage = callback
|
||||
},
|
||||
|
||||
WXUDPSocketSetOnClose: function (callback) {
|
||||
udpSocketManager.onClose = callback
|
||||
},
|
||||
WXUDPSocketSetOnError: function (callback) {
|
||||
udpSocketManager.onError = callback
|
||||
}
|
||||
};
|
||||
|
||||
autoAddDeps(UDPSocketLibrary, '$udpSocketManager');
|
||||
mergeInto(LibraryManager.library, UDPSocketLibrary);
|
||||
@@ -0,0 +1,74 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 1a619860d36bdfb4eaa583d3ba561e99
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
: Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Editor: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude WeixinMiniGame: 0
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
- 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: x86_64
|
||||
- first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
WeixinMiniGame: WeixinMiniGame
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
@@ -0,0 +1,33 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f17a7c2339e372b468d80e48b8a1fbb8
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,439 @@
|
||||
var WXAssetBundleLibrary = {
|
||||
$WXFS: {},
|
||||
|
||||
WXFSInit: function (ttl, capacity) {
|
||||
function _instanceof(left, right) { if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) { return !!right[Symbol.hasInstance](left); } else { return left instanceof right; } }
|
||||
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
||||
function _classCallCheck(instance, Constructor) { if (!_instanceof(instance, Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
||||
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
||||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
||||
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
||||
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
||||
var WXMap = /*#__PURE__*/function () {
|
||||
function WXMap(hash, rename) {
|
||||
_classCallCheck(this, WXMap);
|
||||
this.hash = hash;
|
||||
this.rename = rename;
|
||||
this.size = 0;
|
||||
}
|
||||
_createClass(WXMap, [{
|
||||
key: "get",
|
||||
value: function get(key) {
|
||||
return this.hash.get(this.rename(key));
|
||||
}
|
||||
}, {
|
||||
key: "set",
|
||||
value: function set(key, value) {
|
||||
this.delete(key);
|
||||
this.size += value;
|
||||
return this.hash.set(this.rename(key), value);
|
||||
}
|
||||
}, {
|
||||
key: "has",
|
||||
value: function has(key) {
|
||||
return this.hash.has(this.rename(key));
|
||||
}
|
||||
}, {
|
||||
key: "delete",
|
||||
value: function _delete(key) {
|
||||
this.size -= this.hash.get(this.rename(key))|0;
|
||||
return this.hash.delete(this.rename(key));
|
||||
}
|
||||
}]);
|
||||
return WXMap;
|
||||
}();
|
||||
WXFS.WXABErrorSteps = {
|
||||
"kWebRequestResponse": 0,
|
||||
"kLoadBundleFromFile": 1,
|
||||
"kCacheGet" : 2
|
||||
};
|
||||
WXFS.disk = new WXMap(unityNamespace.WXAssetBundles,unityNamespace.PathInFileOS);
|
||||
WXFS.msg = "";
|
||||
WXFS.fd2wxStream = new Map;
|
||||
WXFS.path2fd = new Map;
|
||||
WXFS.fs = wx.getFileSystemManager();
|
||||
WXFS.nowfd = FS.MAX_OPEN_FDS + 1;
|
||||
WXFS.isWXAssetBundle = function(url){
|
||||
if(url.startsWith(GameGlobal.unityNamespace.DATA_CDN)||url.startsWith('/vfs_streamingassets')){
|
||||
return unityNamespace.isWXAssetBundle(WXFS.url2path(url));
|
||||
}
|
||||
return unityNamespace.isWXAssetBundle(url);
|
||||
}
|
||||
WXFS.newfd = function(){
|
||||
return WXFS.nowfd++;
|
||||
}
|
||||
WXFS.doWXAccess = function(path, amode){
|
||||
if (amode & ~7) {
|
||||
return -28;
|
||||
}
|
||||
try{
|
||||
WXFS.fs.accessSync(path);
|
||||
} catch(e){
|
||||
return -44;
|
||||
}
|
||||
return 0
|
||||
}
|
||||
|
||||
var WXFileCache = /*#__PURE__*/function () {
|
||||
function WXFileCache(ttl, capacity) {
|
||||
_classCallCheck(this, WXFileCache);
|
||||
this.ttl = ttl;
|
||||
if (capacity > 0) this.capacity = capacity;
|
||||
this.hash = new Map();
|
||||
this.size = 0;
|
||||
this.maxSize = 0;
|
||||
this.obsolete = "";
|
||||
}
|
||||
// record obsolete file path when file not found
|
||||
_createClass(WXFileCache, [{
|
||||
key: "record",
|
||||
value: function record(path) {
|
||||
if (!this.obsolete.includes(path)) {
|
||||
if (this.obsolete != "") this.obsolete += ";";
|
||||
this.obsolete += path;
|
||||
}
|
||||
}
|
||||
}, {
|
||||
key: "get",
|
||||
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'));
|
||||
}
|
||||
}
|
||||
this.hash.delete(key);
|
||||
temp.time = Date.now();
|
||||
this.hash.set(key, temp);
|
||||
return temp.ab;
|
||||
}
|
||||
return -1;
|
||||
}
|
||||
}, {
|
||||
key: "put",
|
||||
value: function put(key, ab, cleanable) {
|
||||
if(!ab)return;
|
||||
cleanable = cleanable != undefined ? cleanable : true;
|
||||
var value = {
|
||||
ab: ab,
|
||||
time: Date.now(),
|
||||
cleanable: cleanable
|
||||
};
|
||||
var temp = this.hash.get(key);
|
||||
if (temp !== undefined) {
|
||||
this.size -= temp.ab.byteLength;
|
||||
this.hash.delete(key);
|
||||
this.hash.set(key, value);
|
||||
} else {
|
||||
if (this.capacity !== undefined && this.size >= this.capacity) {
|
||||
var idx = this.hash.keys().next().value;
|
||||
this.size -= idx.ab.byteLength;
|
||||
this.hash.delete(idx);
|
||||
this.hash.set(key, value);
|
||||
} else {
|
||||
this.hash.set(key, value);
|
||||
}
|
||||
}
|
||||
this.size += value.ab.byteLength;
|
||||
this.maxSize = Math.max(this.size, this.maxSize);
|
||||
}
|
||||
}, {
|
||||
key: "cleanable",
|
||||
value: function cleanable(key, _cleanable) {
|
||||
_cleanable = _cleanable != undefined ? _cleanable : true;
|
||||
var temp = this.hash.get(key);
|
||||
if (temp !== undefined) {
|
||||
// this.hash.delete(key);
|
||||
// temp.time = Date.now();
|
||||
temp.cleanable = _cleanable;
|
||||
this.hash.set(key, temp);
|
||||
return 0;
|
||||
} else {
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}, {
|
||||
key: "cleanbytime",
|
||||
value: function cleanbytime(deadline) {
|
||||
var iter = this.hash.keys(),
|
||||
key,
|
||||
value;
|
||||
while ((key = iter.next().value) != undefined && (value = this.hash.get(key)).time < deadline) {
|
||||
if (value.cleanable) {
|
||||
this.size -= value.ab.byteLength;
|
||||
this.hash.delete(key);
|
||||
}
|
||||
}
|
||||
}
|
||||
}, {
|
||||
key: "RegularCleaning",
|
||||
value: function RegularCleaning(kIntervalSecond) {
|
||||
var _this = this;
|
||||
setInterval(function () {
|
||||
_this.cleanbytime(Date.now() - _this.ttl * 1000);
|
||||
}, kIntervalSecond * 1000);
|
||||
}
|
||||
}, {
|
||||
key: "delete",
|
||||
value: function _delete(key) {
|
||||
this.size -= this.hash.get(key).ab.byteLength;
|
||||
return this.hash.delete(key)
|
||||
}
|
||||
}, {
|
||||
key: "has",
|
||||
value: function _has(key) {
|
||||
return this.hash.has(key)
|
||||
}
|
||||
}
|
||||
]);
|
||||
return WXFileCache;
|
||||
}();
|
||||
|
||||
WXFS.cache = new WXFileCache(ttl, capacity);
|
||||
if(!unityNamespace.isAndroid) {
|
||||
WXFS.cache.RegularCleaning(1);
|
||||
}
|
||||
|
||||
WXFS.wxstat = function(path){
|
||||
try {
|
||||
var fd = WXFS.path2fd.get(path)
|
||||
if (fd !== undefined){
|
||||
var stat = {
|
||||
mode: 33206,
|
||||
size: WXFS.cache.get(fd).byteLength,
|
||||
dev: 1,
|
||||
ino: 1,
|
||||
nlink: 1,
|
||||
uid: 0,
|
||||
gid: 0,
|
||||
rdev: 0,
|
||||
atime: new Date(),
|
||||
mtime: new Date(0),
|
||||
ctime: new Date(),
|
||||
blksize: 4096
|
||||
}
|
||||
stat.blocks = Math.ceil(stat.size / stat.blksize);
|
||||
return stat;
|
||||
}
|
||||
var stat = WXFS.fs.statSync(path);
|
||||
// something not in wx.FileSystemManager, just fill in 0/1
|
||||
stat.dev = 1;
|
||||
stat.ino = 1;
|
||||
stat.nlink = 1;
|
||||
stat.uid = 0;
|
||||
stat.gid = 0;
|
||||
stat.rdev = 0;
|
||||
stat.atime = new Date(stat.lastAccessedTime * 1000);
|
||||
stat.mtime = new Date(0); // if update modified time, wasm will log error "Archive file was modified when opened"
|
||||
stat.ctime = new Date(stat.lastModifiedTime * 1000); // time of permission modification, just use mtime to instand
|
||||
delete stat.lastAccessedTime;
|
||||
delete stat.lastModifiedTime;
|
||||
stat.blksize = 4096;
|
||||
stat.blocks = Math.ceil(stat.size / stat.blksize);
|
||||
return stat;
|
||||
} catch (e){
|
||||
console.error(e)
|
||||
throw e;
|
||||
}
|
||||
}
|
||||
WXFS._url2path = new Map();
|
||||
WXFS.url2path = function(url) {
|
||||
if(WXFS._url2path.has(url)){
|
||||
return WXFS._url2path.get(url);
|
||||
}
|
||||
if(url.startsWith('/vfs_streamingassets/')){
|
||||
var path = url.replace('/vfs_streamingassets/', wx.env.USER_DATA_PATH + "/__GAME_FILE_CACHE/StreamingAssets/");
|
||||
}
|
||||
else{
|
||||
var path = url.replace(GameGlobal.unityNamespace.DATA_CDN, wx.env.USER_DATA_PATH+'/__GAME_FILE_CACHE/');
|
||||
}
|
||||
if(path.indexOf('?') > -1){
|
||||
path = path.substring(0,path.indexOf("?"));
|
||||
}
|
||||
WXFS._url2path.set(url, path);
|
||||
return path;
|
||||
};
|
||||
WXFS.LoadBundleFromFile = function(path){
|
||||
try {
|
||||
var res = WXFS.fs.readFileSync(path);
|
||||
} catch(e) {
|
||||
var err_msg = !!e ? e.toString() : 'unknown';
|
||||
}
|
||||
var expected_size = WXFS.disk.get(path);
|
||||
if(!res || res.byteLength != expected_size){
|
||||
var wxab_error = {
|
||||
stage: WXFS.WXABErrorSteps['kLoadBundleFromFile'],
|
||||
path: path,
|
||||
size: (!!res ? res.byteLength : 0),
|
||||
expected_size: expected_size,
|
||||
error: err_msg
|
||||
};
|
||||
GameGlobal.manager.reporter.wxAssetBundle.reportEmptyContent(wxab_error);
|
||||
GameGlobal.manager.Logger.pluginLog('[WXAssetBundle]readFileSync at path ' + path + ' return size ' + (!!res?res.byteLength:0) + ', different from expected size ' + expected_size + ' error: ' + err_msg);
|
||||
wx.setStorageSync("wxfs_unserviceable",true);
|
||||
GameGlobal.onCrash();
|
||||
return "";
|
||||
}
|
||||
return res;
|
||||
};
|
||||
WXFS.read = function(stream, buffer, offset, length, position){
|
||||
var contents = WXFS.cache.get(stream.fd);
|
||||
if (contents === -1) {
|
||||
var res = WXFS.LoadBundleFromFile(stream.path);
|
||||
WXFS.cache.put(stream.fd, res);
|
||||
contents = res;
|
||||
}
|
||||
if (position >= stream.node.usedBytes) return 0;
|
||||
var size = Math.min(stream.node.usedBytes - position, length);
|
||||
assert(size >= 0);
|
||||
buffer.set(new Uint8Array(contents.slice(position, position + size)), offset);
|
||||
return size;
|
||||
};
|
||||
},
|
||||
|
||||
GetObsoleteFilePath: function () {
|
||||
var bufferSize = lengthBytesUTF8(WXFS.cache.obsolete) + 1;
|
||||
var buffer = _malloc(bufferSize);
|
||||
stringToUTF8(WXFS.cache.obsolete, buffer, bufferSize);
|
||||
WXFS.cache.obsolete = "";
|
||||
return buffer;
|
||||
},
|
||||
|
||||
UnCleanbyPath: function (ptr) {
|
||||
var url = UTF8ToString(ptr);
|
||||
var path = WXFS.url2path(url);
|
||||
if(!WXFS.disk.has(path)){
|
||||
WXFS.disk.set(path, 0);
|
||||
}
|
||||
},
|
||||
|
||||
UnloadbyPath: function (ptr) {
|
||||
var path = WXFS.url2path(UTF8ToString(ptr));
|
||||
var fd = WXFS.path2fd.get(path);
|
||||
if(WXFS.cache.has(fd)){
|
||||
WXFS.cache.delete(fd);
|
||||
}
|
||||
if(WXFS.disk.has(path)){
|
||||
WXFS.disk.delete(path);
|
||||
}
|
||||
},
|
||||
|
||||
CheckWXFSReady: function () {
|
||||
return WXFS.fs!==undefined;
|
||||
},
|
||||
|
||||
WXGetBundleFromXML: function(url, id, callback, needRetry){
|
||||
needRetry = needRetry?needRetry:true;
|
||||
var _url = UTF8ToString(url);
|
||||
var _id = UTF8ToString(id);
|
||||
var len = lengthBytesUTF8(_id) + 1;
|
||||
var idPtr = _malloc(len);
|
||||
stringToUTF8(_id, idPtr, len);
|
||||
var xhr = new GameGlobal.unityNamespace.UnityLoader.UnityCache.XMLHttpRequest;
|
||||
xhr.open('GET', _url, true);
|
||||
xhr.responseType = "arraybuffer";
|
||||
xhr.onload = function (e) {
|
||||
if (xhr.status >= 400 && needRetry) {
|
||||
setTimeout(function () {
|
||||
_WXGetBundleFromXML(url, false);
|
||||
}, 1000);
|
||||
xhr=null;
|
||||
return false;
|
||||
}
|
||||
if (callback) {
|
||||
var kWebRequestOK = 0;
|
||||
var kNoResponseBuffer = 1111;
|
||||
var xhrByteArray = new Uint8Array(xhr.response);
|
||||
if (xhrByteArray.length != 0) {
|
||||
var arrayBuffer = xhr.response;
|
||||
var path = WXFS.url2path(_url);
|
||||
var numberfd = WXFS.path2fd.get(path);
|
||||
if (numberfd == undefined) {
|
||||
numberfd = WXFS.newfd();
|
||||
WXFS.path2fd.set(path, numberfd);
|
||||
}
|
||||
var wxStream = WXFS.fd2wxStream.get(numberfd);
|
||||
if (wxStream == undefined) {
|
||||
wxStream = {
|
||||
fd: numberfd,
|
||||
path: path,
|
||||
seekable: true,
|
||||
position: 0,
|
||||
stream_ops: MEMFS.stream_ops,
|
||||
ungotten: [],
|
||||
node:{mode:32768,usedBytes:xhrByteArray.length},
|
||||
error: false
|
||||
};
|
||||
wxStream.stream_ops.read = WXFS.read;
|
||||
WXFS.fd2wxStream.set(numberfd, wxStream);
|
||||
}
|
||||
WXFS.cache.put(numberfd, arrayBuffer, xhr.isReadFromCache);
|
||||
WXFS.disk.set(path, xhrByteArray.length);
|
||||
dynCall("viii", callback, [idPtr, kWebRequestOK, 0]);
|
||||
if(xhr.isReadFromCache){
|
||||
_free(idPtr);
|
||||
}
|
||||
} else {
|
||||
dynCall('viii', callback, [idPtr, kNoResponseBuffer, 0]);
|
||||
_free(idPtr);
|
||||
}
|
||||
}
|
||||
};
|
||||
xhr.onsave = function xhr_onsave(e){
|
||||
WXFS.cache.cleanable(WXFS.path2fd.get(e));
|
||||
_free(idPtr);
|
||||
}
|
||||
function XHRHandleError(err, code) {
|
||||
if (needRetry) {
|
||||
return setTimeout(function () {
|
||||
_WXGetBundleFromXML(url, false);
|
||||
}, 1e3);
|
||||
}
|
||||
if (callback) {
|
||||
var len = lengthBytesUTF8(err) + 1;
|
||||
var buffer = _malloc(len);
|
||||
stringToUTF8(err, buffer, len);
|
||||
dynCall("viii", callback, [idPtr, code, buffer]);
|
||||
_free(buffer);
|
||||
_free(idPtr);
|
||||
}
|
||||
}
|
||||
xhr.onerror = function xhr_onerror(e) {
|
||||
var kWebErrorUnknown = 2;
|
||||
XHRHandleError("Unknown error.", kWebErrorUnknown);
|
||||
};
|
||||
xhr.ontimeout = function xhr_onerror(e) {
|
||||
var kWebErrorTimeout = 14;
|
||||
XHRHandleError("Connection timed out.", kWebErrorTimeout);
|
||||
};
|
||||
xhr.onabort = function xhr_onerror(e) {
|
||||
var kWebErrorAborted = 17;
|
||||
XHRHandleError("Aborted.", kWebErrorAborted);
|
||||
}
|
||||
xhr.send();
|
||||
},
|
||||
|
||||
WXGetBundleNumberInMemory: function () {
|
||||
return WXFS&&WXFS.cache&&WXFS.cache.hash&&WXFS.cache.hash.size;
|
||||
},
|
||||
WXGetBundleNumberOnDisk: function () {
|
||||
return WXFS&&WXFS.disk&&WXFS.disk.hash&&WXFS.disk.hash.size;
|
||||
},
|
||||
WXGetBundleSizeInMemory: function () {
|
||||
return WXFS&&WXFS.cache&&WXFS.cache.size;
|
||||
},
|
||||
WXGetBundleSizeOnDisk: function () {
|
||||
return WXFS&&WXFS.disk&&WXFS.disk.size;
|
||||
}
|
||||
};
|
||||
|
||||
autoAddDeps(WXAssetBundleLibrary, '$WXFS');
|
||||
mergeInto(LibraryManager.library, WXAssetBundleLibrary);
|
||||
@@ -0,0 +1,79 @@
|
||||
fileFormatVersion: 2
|
||||
guid: f0312171d672c4253a88f587630cce43
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
: Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Editor: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude WeixinMiniGame: 0
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
- first:
|
||||
Facebook: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
WeixinMiniGame: WeixinMiniGame
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,43 @@
|
||||
mergeInto(LibraryManager.library, {
|
||||
_WXPointer_stringify_adaptor:function(str){
|
||||
if (typeof UTF8ToString !== "undefined") {
|
||||
return UTF8ToString(str)
|
||||
}
|
||||
return Pointer_stringify(str)
|
||||
},
|
||||
DumpUICallback: function (str) {
|
||||
if(typeof GameGlobal!='undefined'){
|
||||
GameGlobal.monkeyCallback(_WXPointer_stringify_adaptor(str));
|
||||
}
|
||||
},
|
||||
GetScreenSizeCallback: function(width, height){
|
||||
if(typeof GameGlobal!='undefined'){
|
||||
GameGlobal.monkeyCallback([width, height]);
|
||||
}
|
||||
},
|
||||
GetUnityVersionCallback: function(version){
|
||||
if(typeof GameGlobal!='undefined'){
|
||||
GameGlobal.monkeyCallback(_WXPointer_stringify_adaptor(version));
|
||||
}
|
||||
},
|
||||
GetUnityFrameRateCallback: function(rate){
|
||||
if(typeof GameGlobal!='undefined'){
|
||||
GameGlobal.monkeyCallback(rate)
|
||||
}
|
||||
},
|
||||
GetUnityCacheDetailCallback: function(str) {
|
||||
if(typeof GameGlobal!='undefined'){
|
||||
GameGlobal.monkeyCallback(_WXPointer_stringify_adaptor(str));
|
||||
}
|
||||
},
|
||||
SetUnityUIType: function(str){
|
||||
if(typeof GameGlobal!='undefined'){
|
||||
GameGlobal.UnityUIType = _WXPointer_stringify_adaptor(str);
|
||||
}
|
||||
},
|
||||
DumpProfileStatsCallback: function(str){
|
||||
if(typeof GameGlobal!='undefined') {
|
||||
GameGlobal.monkeyCallback(_WXPointer_stringify_adaptor(str));
|
||||
}
|
||||
}
|
||||
});
|
||||
@@ -0,0 +1,74 @@
|
||||
fileFormatVersion: 2
|
||||
guid: dae845d21bfc9479cbd0cbe4e34ac070
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
: Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Editor: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude WeixinMiniGame: 0
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
- 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: x86_64
|
||||
- first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
WeixinMiniGame: WeixinMiniGame
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
@@ -0,0 +1,4 @@
|
||||
<linker>
|
||||
<assembly fullname="wx-runtime" preserve="all"/>
|
||||
<assembly fullname="LitJson" preserve="all"/>
|
||||
</linker>
|
||||
@@ -0,0 +1,7 @@
|
||||
fileFormatVersion: 2
|
||||
guid: b079ebcdeb0414c9e9e8990e3490fcb6
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
@@ -0,0 +1,96 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 30bbdd4df4b1a43bb83ed8e59cc42c54
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
: Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Editor: 0
|
||||
Exclude Linux: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude LinuxUniversal: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude WebGL: 1
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
- first:
|
||||
Facebook: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Facebook: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Linux
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86_64
|
||||
- first:
|
||||
Standalone: LinuxUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
- first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Binary file not shown.
@@ -0,0 +1,107 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 6708da74d31314f7e96085e884d8b693
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
: Any
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
Exclude Editor: 1
|
||||
Exclude Linux: 1
|
||||
Exclude Linux64: 1
|
||||
Exclude LinuxUniversal: 1
|
||||
Exclude OSXUniversal: 1
|
||||
Exclude WebGL: 0
|
||||
Exclude WeixinMiniGame: 0
|
||||
Exclude Win: 1
|
||||
Exclude Win64: 1
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
DefaultValueInitialized: true
|
||||
OS: AnyOS
|
||||
- first:
|
||||
Facebook: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Facebook: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Linux
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: x86
|
||||
- first:
|
||||
Standalone: Linux64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: LinuxUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: None
|
||||
- first:
|
||||
Standalone: OSXUniversal
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
Standalone: Win64
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
- first:
|
||||
WebGL: WebGL
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
WeixinMiniGame: WeixinMiniGame
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Windows Store Apps: WindowsStoreApps
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
||||
Reference in New Issue
Block a user