/**
         * Draw shadow volume
         * */
        public void DrawShadowVolume(Vector3 lightPosition, Matrix4 transformation)
        {
            if (shadowVolumeNode == null)
            {
                TriangleMesh silhouetteMesh = new TriangleMesh();
                shadowVolumeNode = new TriangleMeshNode(silhouetteMesh);
                shadowVolumeNode.SetParentNode(this);
            }
            float extend = 500;

            mesh.CreateShadowPolygons(lightPosition, extend, shadowVolumeNode.Mesh);
            shadowVolumeNode.Traverse(RenderMode.REGULAR, transformation);
            shadowVolumeNode.CreateTrianglesVBO();
        }