|
|
@ -76,6 +76,7 @@ function initSliders(gl, program, sliders, onChange) {
|
|
76
|
76
|
switch (slider.type) {
|
|
77
|
77
|
case "float":
|
|
78
|
78
|
slider.uniform = gl.getUniformLocation(program, slider.name);
|
|
|
79
|
gl.uniform1f(slider.uniform, slider.range[1]);
|
|
79
|
80
|
|
|
80
|
81
|
slider.onChange = function(ev) {
|
|
81
|
82
|
gl.uniform1f(slider.uniform, parseFloat(ev.target.value));
|
|
|
@ -91,6 +92,13 @@ function initSliders(gl, program, sliders, onChange) {
|
|
91
|
92
|
case "vec3":
|
|
92
|
93
|
slider.values = slider.range.map((r) => r[1]);
|
|
93
|
94
|
slider.uniform = gl.getUniformLocation(program, slider.name);
|
|
|
95
|
if (slider.type == "vec2") {
|
|
|
96
|
gl.uniform2f(slider.uniform, slider.values[0], slider.values[1]);
|
|
|
97
|
} else if (slider.type == "vec3") {
|
|
|
98
|
gl.uniform3f(slider.uniform, slider.values[0], slider.values[1], slider.values[2]);
|
|
|
99
|
} else {
|
|
|
100
|
throw new Error("unknown slider type " + slider.type);
|
|
|
101
|
}
|
|
94
|
102
|
|
|
95
|
103
|
slider.onChange = function(ev, i) {
|
|
96
|
104
|
slider.values[0] = parseFloat(ev.target.value);
|