/** * @brief build a scene with code, only for test use * * @param the scene object * * @result success? * */ public static bool PostLoadScene(Scene scene) { PostProcessColorAdjustment colorAdjustment = scene.m_postProcessManager.GetPostProcess(typeof(PostProcessColorAdjustment).ToString()) as PostProcessColorAdjustment; PostProcessBloom bloom = scene.m_postProcessManager.GetPostProcess(typeof(PostProcessBloom).ToString()) as PostProcessBloom; PostProcessMotionBlur motionBlur = scene.m_postProcessManager.GetPostProcess(typeof(PostProcessMotionBlur).ToString()) as PostProcessMotionBlur; PostProcessVignette vignette = scene.m_postProcessManager.GetPostProcess(typeof(PostProcessVignette).ToString()) as PostProcessVignette; // colorAdjustment.AddDependOn(scene._renderList); bloom.AddDependOn(colorAdjustment); motionBlur.AddDependOn(bloom); vignette.AddDependOn(motionBlur); scene.m_postProcessManager.SetEndPostProcess(typeof(PostProcessVignette).ToString()); // scene.PostProcessManager.AddPostProcess(typeof(PostProcessColorAdjustment).ToString(), // scene.m_colorAdjustment); // scene.PostProcessManager.AddPostProcess(typeof(PostProcessBloom).ToString(), // scene.m_bloom); // scene.PostProcessManager.AddPostProcess(typeof(PostProcessMotionBlur).ToString(), // scene.m_motionBlur); // scene.PostProcessManager.AddPostProcess(typeof(PostProcessVignette).ToString(), // scene.m_vignette); // TODO: test if the effect files exist // scene.m_motionBlur = new PostProcessMotionBlur(); // scene.m_motionBlur.AddDependOn(scene._renderList); // scene.PostProcessManager.AddPostProcess(typeof(PostProcessMotionBlur).ToString(), // scene.m_motionBlur); // scene.m_colorAdjustment = new PostProcessColorAdjustment(); // scene.m_colorAdjustment.AddDependOn(scene.m_motionBlur); // scene.PostProcessManager.AddPostProcess(typeof(PostProcessColorAdjustment).ToString(), // scene.m_colorAdjustment); // scene.m_vignette = new PostProcessVignette(); // scene.m_vignette.AddDependOn(scene.m_colorAdjustment); // scene.PostProcessManager.AddPostProcess(typeof(PostProcessVignette).ToString(), // scene.m_vignette); // PostProcessHDR hdr = new PostProcessHDR(); // hdr.AddDependOn(scene._renderList); // scene.PostProcessManager.AddPostProcess(typeof(PostProcessHDR).ToString(), // hdr); scene.m_bloom = new PostProcessBloom(); scene.m_bloom.AddDependOn(scene.m_vignette); scene.PostProcessManager.AddPostProcess(typeof(PostProcessBloom).ToString(), scene.m_bloom); return(true); }