UNPKG

@tolokoban/tgd

Version:

ToloGameDev library for WebGL2

25 lines 2.65 kB
import { webglLookup } from "./webgl.js"; export function webglCreateFramebuffer(gl) { const fb = gl.createFramebuffer(); if (!fb) throw new Error("Unable to create a WebGLFramebuffer!"); return fb; } export function webglRenderbufferStorageMultisample(gl, samples, internalFormat, width, height) { gl.renderbufferStorageMultisample(gl.RENDERBUFFER, samples, internalFormat, width, height); const error = gl.getError(); if (error !== gl.NO_ERROR) { console.error(`WebGL Error in renderbufferStorageMultisample: ${webglLookup(error)} (${error})\n samples: ${samples} internalFormat: gl.${webglLookup(internalFormat)} width: ${width} height: ${height}`, webglLookup(error)); const availableSamples = gl.getInternalformatParameter(gl.RENDERBUFFER, internalFormat, gl.SAMPLES); if (!availableSamples.includes(samples)) { console.error(`Available samples for format gl.${webglLookup(internalFormat)} are ${JSON.stringify(availableSamples)}, but you provided ${samples}!`); } return false; } return true; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWVidWZmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvZnJhbWVidWZmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUVyQyxNQUFNLFVBQVUsc0JBQXNCLENBQ2xDLEVBQTBCO0lBRTFCLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsRUFBRSxDQUFBO0lBQ2pDLElBQUksQ0FBQyxFQUFFO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFBO0lBRWhFLE9BQU8sRUFBRSxDQUFBO0FBQ2IsQ0FBQztBQUVELE1BQU0sVUFBVSxtQ0FBbUMsQ0FDL0MsRUFBMEIsRUFDMUIsT0FBZSxFQUNmLGNBQXNCLEVBQ3RCLEtBQWEsRUFDYixNQUFjO0lBRWQsRUFBRSxDQUFDLDhCQUE4QixDQUM3QixFQUFFLENBQUMsWUFBWSxFQUNmLE9BQU8sRUFDUCxjQUFjLEVBQ2QsS0FBSyxFQUNMLE1BQU0sQ0FDVCxDQUFBO0lBQ0QsTUFBTSxLQUFLLEdBQUcsRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFBO0lBQzNCLElBQUksS0FBSyxLQUFLLEVBQUUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUN4QixPQUFPLENBQUMsS0FBSyxDQUNULGtEQUFrRCxXQUFXLENBQ3pELEtBQUssQ0FDUixLQUFLLEtBQUs7a0JBQ0wsT0FBTztxQkFDSixXQUFXLENBQUMsY0FBYyxDQUFDO2tCQUM5QixLQUFLO2tCQUNMLE1BQU0sRUFBRSxFQUNkLFdBQVcsQ0FBQyxLQUFLLENBQUMsQ0FDckIsQ0FBQTtRQUNELE1BQU0sZ0JBQWdCLEdBQUcsRUFBRSxDQUFDLDBCQUEwQixDQUNsRCxFQUFFLENBQUMsWUFBWSxFQUNmLGNBQWMsRUFDZCxFQUFFLENBQUMsT0FBTyxDQUNiLENBQUE7UUFDRCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7WUFDdEMsT0FBTyxDQUFDLEtBQUssQ0FDVCxtQ0FBbUMsV0FBVyxDQUMxQyxjQUFjLENBQ2pCLFFBQVEsSUFBSSxDQUFDLFNBQVMsQ0FDbkIsZ0JBQWdCLENBQ25CLHNCQUFzQixPQUFPLEdBQUcsQ0FDcEMsQ0FBQTtRQUNMLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQTtJQUNoQixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUE7QUFDZixDQUFDIn0=