gpu.js
Version:
GPU Accelerated JavaScript
24 lines (21 loc) • 826 B
JavaScript
const { utils } = require('../../../utils');
const { WebGL2KernelValueSingleArray1DI } = require('../../web-gl2/kernel-value/single-array1d-i');
class WebGL2KernelValueDynamicSingleArray1DI extends WebGL2KernelValueSingleArray1DI {
getSource() {
const variablePrecision = this.getVariablePrecisionString();
return utils.linesToString([
`uniform ${ variablePrecision } sampler2D ${this.id}`,
`uniform ${ variablePrecision } ivec2 ${this.sizeId}`,
`uniform ${ variablePrecision } ivec3 ${this.dimensionsId}`,
]);
}
updateValue(value) {
this.setShape(value);
this.kernel.setUniform3iv(this.dimensionsId, this.dimensions);
this.kernel.setUniform2iv(this.sizeId, this.textureSize);
super.updateValue(value);
}
}
module.exports = {
WebGL2KernelValueDynamicSingleArray1DI
};