|
|
|
|
|
|
32
|
sliderValueEl.textContent = sliderEl.value;
|
32
|
sliderValueEl.textContent = sliderEl.value;
|
|
33
|
sliderContainerEl.appendChild(sliderValueEl);
|
33
|
sliderContainerEl.appendChild(sliderValueEl);
|
|
34
|
|
34
|
|
|
35
|
sliderEl.addEventListener("input", () => sliderValueEl.textContent = sliderEl.value);
|
|
|
|
|
|
35
|
sliderEl.addEventListener("input", function() { sliderValueEl.textContent = sliderEl.value });
|
|
36
|
|
36
|
|
|
37
|
return sliderContainerEl;
|
37
|
return sliderContainerEl;
|
|
38
|
}
|
38
|
}
|
|
|
|
|
|
|
47
|
containerEl.appendChild(labelEl);
|
47
|
containerEl.appendChild(labelEl);
|
|
48
|
|
48
|
|
|
49
|
var names = [".x", ".y", ".z", ".y"];
|
49
|
var names = [".x", ".y", ".z", ".y"];
|
|
50
|
ranges.forEach((range, i) => {
|
|
|
|
|
|
50
|
ranges.forEach(function(range, i) {
|
|
51
|
containerEl.appendChild(makeSlider(names[i], range, function(ev) {
|
51
|
containerEl.appendChild(makeSlider(names[i], range, function(ev) {
|
|
52
|
onChange(ev, i);
|
52
|
onChange(ev, i);
|
|
53
|
}));
|
53
|
}));
|
|
|
|
|
|
|
57
|
}
|
57
|
}
|
|
58
|
|
58
|
|
|
59
|
function addSliders(parent, sliders) {
|
59
|
function addSliders(parent, sliders) {
|
|
60
|
sliders.forEach((slider) => {
|
|
|
|
|
|
60
|
sliders.forEach(function(slider) {
|
|
61
|
switch (slider.type) {
|
61
|
switch (slider.type) {
|
|
62
|
case "int":
|
62
|
case "int":
|
|
63
|
case "float":
|
63
|
case "float":
|
|
|
|
|
|
|
106
|
|
106
|
|
|
107
|
case "vec2":
|
107
|
case "vec2":
|
|
108
|
case "vec3":
|
108
|
case "vec3":
|
|
109
|
slider.values = slider.range.map((r) => r[1]);
|
|
|
|
|
|
109
|
slider.values = slider.range.map(function(r) { return r[1] });
|
|
110
|
slider.uniform = gl.getUniformLocation(program, slider.name);
|
110
|
slider.uniform = gl.getUniformLocation(program, slider.name);
|
|
111
|
if (slider.type == "vec2") {
|
111
|
if (slider.type == "vec2") {
|
|
112
|
gl.uniform2f(slider.uniform, slider.values[0], slider.values[1]);
|
112
|
gl.uniform2f(slider.uniform, slider.values[0], slider.values[1]);
|