(let i = 0, len = lights.length; i < len; ++i) {
                lightMatrix = mat4.create();
                utils.xformMatrix(lightMatrix, lights[i].position);
                mat4.multiply(lightMatrix, viewProjMatrix, lightMatrix);


                lights[i].uniforms.set(0, lightMatrix).update();
            }
        }

        Promise.all([
            app.createPrograms([geoVsSource, geoFsSource], [vsSource, fsSource]),
            utils.loadImages(["img/webgl-logo.png"])
        ]).then(([
         