 += 0.04;
                cubeMesh.rotation.set(xRotation, yRotation, zRotation);
            }

            // Define the function, which is called by the browser supported timer loop. If the
            // browser tab is not visible, the animation is paused. So 'animateScene()' is called
            // in a browser controlled loop.
            requestAnimationFrame(animateScene);

            // Map the 3D scene down to the 2D screen (render the frame)
            renderScene();
        }

  