Files
nothoughts/node_modules/pixi.js/lib/rendering/high-shader/compileHighShaderToProgram.js
2025-08-04 18:57:35 +02:00

52 lines
1.5 KiB
JavaScript

'use strict';
var GlProgram = require('../renderers/gl/shader/GlProgram.js');
var GpuProgram = require('../renderers/gpu/shader/GpuProgram.js');
var compileHighShader = require('./compiler/compileHighShader.js');
var defaultProgramTemplate = require('./defaultProgramTemplate.js');
var globalUniformsBit = require('./shader-bits/globalUniformsBit.js');
"use strict";
function compileHighShaderGpuProgram({ bits, name }) {
const source = compileHighShader.compileHighShader({
template: {
fragment: defaultProgramTemplate.fragmentGPUTemplate,
vertex: defaultProgramTemplate.vertexGPUTemplate
},
bits: [
globalUniformsBit.globalUniformsBit,
...bits
]
});
return GpuProgram.GpuProgram.from({
name,
vertex: {
source: source.vertex,
entryPoint: "main"
},
fragment: {
source: source.fragment,
entryPoint: "main"
}
});
}
function compileHighShaderGlProgram({ bits, name }) {
return new GlProgram.GlProgram({
name,
...compileHighShader.compileHighShaderGl({
template: {
vertex: defaultProgramTemplate.vertexGlTemplate,
fragment: defaultProgramTemplate.fragmentGlTemplate
},
bits: [
globalUniformsBit.globalUniformsBitGl,
...bits
]
})
});
}
exports.compileHighShaderGlProgram = compileHighShaderGlProgram;
exports.compileHighShaderGpuProgram = compileHighShaderGpuProgram;
//# sourceMappingURL=compileHighShaderToProgram.js.map