public void MakeVideo(string videoName)
        {
            watch.Start();
            int imgCount = Option.VideoFPS * Option.VideoDuration;

            Bitmap[] image_sequence = new Bitmap[imgCount];

            tasksSceneRenderer = new PotatoTasksSceneRenderer(Scene.PotatoSceneData);

            for (int i = 0; i < imgCount; i++)
            {
                Bitmap[] imgs = tasksSceneRenderer.Run();

                BlendAllRenderedImageContainInTasksResult(imgs);

                Bitmap finalImage = imageBlender.GetFinalImageRender();
                image_sequence[i] = finalImage.Clone(new Rectangle(0, 0, finalImage.Width, finalImage.Height), finalImage.PixelFormat);

                //Scene.PotatoSceneData.Camera.Position = Scene.PotatoSceneData.Camera.Position + new System.DoubleNumerics.Vector3(1, 0, 0);
                for (int j = 0; j < Scene.PotatoSceneData.Spheres.Count; j++)
                {
                    Scene.PotatoSceneData.Spheres[j].Position = Scene.PotatoSceneData.Spheres[j].Position + new System.DoubleNumerics.Vector3(1, 0, 0);
                }
                imageBlender.Clear();
            }

            ClearRenderContext();
            CreateVideo(videoName, image_sequence);

            watch.Stop();
        }
        private void SaveImage(string imgageName)
        {
            Bitmap finalImage = imageBlender.GetFinalImageRender();

            finalImage.Save(imgageName);
        }