@tolokoban/tgd
Version:
ToloGameDev library for WebGL2
18 lines • 1.28 kB
JavaScript
import { TgdMaterial } from "./material.js";
export class TgdMaterialNormalMap extends TgdMaterial {
constructor() {
super({
varyings: { varNormal: "vec3" },
fragmentShaderCode: [
"vec3 n = normalize(varNormal);",
"vec3 color = vec3(",
["0.5 * (1.0 + n.x),", "0.5 * (1.0 + n.y),", "max(0.0, n.z)"],
");",
"color *= 0.5;",
"return vec4(color, 1.0);",
],
vertexShaderCode: ["varNormal = mat3(uniModelViewMatrix) * mat3(uniTransfoMatrix) * normal;"],
});
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibm9ybWFsLW1hcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tYXRlcmlhbC9ub3JtYWwtbWFwLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxZQUFZLENBQUE7QUFFeEMsTUFBTSxPQUFPLG9CQUFxQixTQUFRLFdBQVc7SUFDakQ7UUFDSSxLQUFLLENBQUM7WUFDRixRQUFRLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFO1lBQy9CLGtCQUFrQixFQUFFO2dCQUNoQixnQ0FBZ0M7Z0JBQ2hDLG9CQUFvQjtnQkFDcEIsQ0FBQyxvQkFBb0IsRUFBRSxvQkFBb0IsRUFBRSxlQUFlLENBQUM7Z0JBQzdELElBQUk7Z0JBQ0osZUFBZTtnQkFDZiwwQkFBMEI7YUFDN0I7WUFDRCxnQkFBZ0IsRUFBRSxDQUFDLHlFQUF5RSxDQUFDO1NBQ2hHLENBQUMsQ0FBQTtJQUNOLENBQUM7Q0FDSiJ9