UNPKG

@tolokoban/tgd

Version:

ToloGameDev library for WebGL2

36 lines 2.34 kB
import { TgdMaterial } from "./material.js"; export class TgdMaterialFlatTexture extends TgdMaterial { constructor(options) { const uniforms = { uniTexture: "sampler2D", }; const fragmentShaderCode = ["return texture(uniTexture, varUV);"]; const varyings = { varUV: "vec2", }; const vertexShaderCode = () => { const code = [`varUV = ${this.attUV};`]; return code; }; super({ uniforms, varyings, vertexShaderCode, fragmentShaderCode, setUniforms: ({ program }) => { this._texture?.activate(0, program, "uniTexture"); }, }); this._texture = null; this._texture = options.texture; } get texture() { return this._texture; } set texture(texture) { if (this._texture === texture) return; this._texture = texture; } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmxhdC10ZXh0dXJlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL21hdGVyaWFsL2ZsYXQtdGV4dHVyZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sWUFBWSxDQUFBO0FBU3hDLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxXQUFXO0lBR25ELFlBQVksT0FBc0M7UUFDOUMsTUFBTSxRQUFRLEdBQXlDO1lBQ25ELFVBQVUsRUFBRSxXQUFXO1NBQzFCLENBQUE7UUFDRCxNQUFNLGtCQUFrQixHQUFnQixDQUFDLG9DQUFvQyxDQUFDLENBQUE7UUFDOUUsTUFBTSxRQUFRLEdBQTJDO1lBQ3JELEtBQUssRUFBRSxNQUFNO1NBQ2hCLENBQUE7UUFDRCxNQUFNLGdCQUFnQixHQUFHLEdBQUcsRUFBRTtZQUMxQixNQUFNLElBQUksR0FBZ0IsQ0FBQyxXQUFXLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFBO1lBQ3BELE9BQU8sSUFBSSxDQUFBO1FBQ2YsQ0FBQyxDQUFBO1FBRUQsS0FBSyxDQUFDO1lBQ0YsUUFBUTtZQUNSLFFBQVE7WUFDUixnQkFBZ0I7WUFDaEIsa0JBQWtCO1lBQ2xCLFdBQVcsRUFBRSxDQUFDLEVBQUUsT0FBTyxFQUEyQixFQUFRLEVBQUU7Z0JBQ3hELElBQUksQ0FBQyxRQUFRLEVBQUUsUUFBUSxDQUFDLENBQUMsRUFBRSxPQUFPLEVBQUUsWUFBWSxDQUFDLENBQUE7WUFDckQsQ0FBQztTQUNKLENBQUMsQ0FBQTtRQXZCRSxhQUFRLEdBQXdCLElBQUksQ0FBQTtRQXdCeEMsSUFBSSxDQUFDLFFBQVEsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFBO0lBQ25DLENBQUM7SUFFRCxJQUFJLE9BQU87UUFDUCxPQUFPLElBQUksQ0FBQyxRQUFRLENBQUE7SUFDeEIsQ0FBQztJQUVELElBQUksT0FBTyxDQUFDLE9BQTRCO1FBQ3BDLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxPQUFPO1lBQUUsT0FBTTtRQUVyQyxJQUFJLENBQUMsUUFBUSxHQUFHLE9BQU8sQ0FBQTtJQUMzQixDQUFDO0NBQ0oifQ==