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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhbWVidWZmZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvZnJhbWVidWZmZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLFNBQVMsQ0FBQTtBQUVyQyxNQUFNLFVBQVUsc0JBQXNCLENBQUMsRUFBMEI7SUFDN0QsTUFBTSxFQUFFLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixFQUFFLENBQUE7SUFDakMsSUFBSSxDQUFDLEVBQUU7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHNDQUFzQyxDQUFDLENBQUE7SUFFaEUsT0FBTyxFQUFFLENBQUE7QUFDYixDQUFDO0FBRUQsTUFBTSxVQUFVLG1DQUFtQyxDQUMvQyxFQUEwQixFQUMxQixPQUFlLEVBQ2YsY0FBc0IsRUFDdEIsS0FBYSxFQUNiLE1BQWM7SUFFZCxFQUFFLENBQUMsOEJBQThCLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxPQUFPLEVBQUUsY0FBYyxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQTtJQUMxRixNQUFNLEtBQUssR0FBRyxFQUFFLENBQUMsUUFBUSxFQUFFLENBQUE7SUFDM0IsSUFBSSxLQUFLLEtBQUssRUFBRSxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQ3hCLE9BQU8sQ0FBQyxLQUFLLENBQ1Qsa0RBQWtELFdBQVcsQ0FBQyxLQUFLLENBQUMsS0FBSyxLQUFLO2tCQUN4RSxPQUFPO3FCQUNKLFdBQVcsQ0FBQyxjQUFjLENBQUM7a0JBQzlCLEtBQUs7a0JBQ0wsTUFBTSxFQUFFLEVBQ2QsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUNyQixDQUFBO1FBQ0QsTUFBTSxnQkFBZ0IsR0FBRyxFQUFFLENBQUMsMEJBQTBCLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxjQUFjLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxDQUFBO1FBQ25HLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQztZQUN0QyxPQUFPLENBQUMsS0FBSyxDQUNULG1DQUFtQyxXQUFXLENBQUMsY0FBYyxDQUFDLFFBQVEsSUFBSSxDQUFDLFNBQVMsQ0FDaEYsZ0JBQWdCLENBQ25CLHNCQUFzQixPQUFPLEdBQUcsQ0FDcEMsQ0FBQTtRQUNMLENBQUM7UUFDRCxPQUFPLEtBQUssQ0FBQTtJQUNoQixDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUE7QUFDZixDQUFDIn0=