-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathinstallShaders.ts
More file actions
30 lines (29 loc) · 1.2 KB
/
installShaders.ts
File metadata and controls
30 lines (29 loc) · 1.2 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import { type Stage } from '@lightningjs/renderer';
export async function installShaders(stage: Stage, renderMode: string) {
let shaders;
if (renderMode === 'webgl') {
shaders = await import('@lightningjs/renderer/webgl/shaders');
} else if (renderMode === 'canvas') {
shaders = await import('@lightningjs/renderer/canvas/shaders');
}
stage.shManager.registerShaderType('Rounded', shaders.Rounded);
stage.shManager.registerShaderType(
'RoundedWithBorder',
shaders.RoundedWithBorder,
);
stage.shManager.registerShaderType(
'RoundedWithShadow',
shaders.RoundedWithShadow,
);
stage.shManager.registerShaderType(
'RoundedWithBorderAndShadow',
shaders.RoundedWithBorderAndShadow,
);
stage.shManager.registerShaderType('Border', shaders.Border);
stage.shManager.registerShaderType('Shadow', shaders.Shadow);
stage.shManager.registerShaderType('HolePunch', shaders.HolePunch);
stage.shManager.registerShaderType('RadialGradient', shaders.RadialGradient);
stage.shManager.registerShaderType('LinearGradient', shaders.LinearGradient);
stage.shManager.registerShaderType('RadialProgress', shaders.RadialProgress);
stage.shManager.registerShaderType('Blur', shaders.Blur);
}