/** * 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(); }