} // Begin

        /// <summary>
        /// Begins the rendering of the depth information from the light point of view over a cube render target.
        /// </summary>
        internal void Begin(int lightDepthTextureSize, Vector3 lightPosition, float lightRadius)
        {
            try
            {
                // Creates the render target textures
                lightDepthTextureCube = RenderTargetCube.Fetch(lightDepthTextureSize, SurfaceFormat.Single, DepthFormat.Depth24, RenderTarget.AntialiasingType.NoAntialiasing);

                spLightPosition.Value = lightPosition;
                spLightRadius.Value   = lightRadius;
            }
            catch (Exception e)
            {
                throw new InvalidOperationException("Shadow Map Shader: Unable to begin the rendering.", e);
            }
        } // Begin