laya-coreui-es
Version:
laya核心库、ui库es版本,剔除了媒体、TTF等功能。基于 LayaAir-release_2.12.0 修改
37 lines (36 loc) • 1.5 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.LayaGLRunner = void 0;
const LayaGL_1 = require("./LayaGL");
class LayaGLRunner {
static uploadShaderUniforms(layaGL, commandEncoder, shaderData, uploadUnTexture) {
var data = shaderData._data;
var shaderUniform = commandEncoder.getArrayData();
var shaderCall = 0;
for (var i = 0, n = shaderUniform.length; i < n; i++) {
var one = shaderUniform[i];
if (uploadUnTexture || one.textureID !== -1) {
var value = data[one.dataOffset];
if (value != null)
shaderCall += one.fun.call(one.caller, one, value);
}
}
return shaderCall;
}
static uploadCustomUniform(layaGL, custom, index, data) {
var shaderCall = 0;
var one = custom[index];
if (one && data != null)
shaderCall += one.fun.call(one.caller, one, data);
return shaderCall;
}
static uploadShaderUniformsForNative(layaGL, commandEncoder, shaderData) {
var nType = LayaGL_1.LayaGL.UPLOAD_SHADER_UNIFORM_TYPE_ID;
if (shaderData._runtimeCopyValues.length > 0) {
nType = LayaGL_1.LayaGL.UPLOAD_SHADER_UNIFORM_TYPE_DATA;
}
var data = shaderData._data;
return LayaGL_1.LayaGL.instance.uploadShaderUniforms(commandEncoder, data, nType);
}
}
exports.LayaGLRunner = LayaGLRunner;