В цикле
for
происходит вызов функции
imitate(j)
, которая выполняет анимацию в WebGL и длится 24 секунды.
Цикл:
for (j; j<=finDay; j++) {
imitate(j);
};
Функция:
imitate = function(d) {
function startTrackInterval(day) {
if (day) effectController.day=day;
effectController.hour=0;
var timerId = setInterval(function() {
if (effectController.hour > 24) clearInterval(timerId);
else {
gui.updateDisplay();
tracker();
};
effectController.hour=effectController.hour+0.01;
}, 10);
}
startTrackInterval(d);
}
Как сделать в цикле ожидание выполнения функции и только потом инкрементировать
j
?
Если это не сделать, то JS запускает практически параллельно
finDay
-е число копий функции и на рендере получается мешанина.
P.S.: Читал про колбеки и промисы, но не смог применить их.