public virtual async System.Threading.Tasks.Task <bool> InitEnviroment() { var rc = EngineNS.CEngine.Instance.RenderContext; mCamera = new EngineNS.Graphics.CGfxCamera(); mCamera.Init(rc, false); Vector3 Eye = new Vector3(); Eye.SetValue(0.0f, 0.0f, -3.0f); Vector3 At = new Vector3(); At.SetValue(0.0f, 0.0f, 0.0f); Vector3 Up = new Vector3(); Up.SetValue(0.0f, 1.0f, 0.0f); mCamera.LookAtLH(Eye, At, Up); mCamera.PerspectiveFovLH(mCamera.mDefaultFoV, (float)mWidth, (float)mHeight, 0.1f, 1000.0f); mCamera.BeforeFrame(); mCamera.SwapBuffer(false); mRP_Snapshot = new EngineNS.Graphics.RenderPolicy.CGfxRP_Snapshot(); await mRP_Snapshot.Init(rc, mWidth, mHeight, mCamera, IntPtr.Zero); return(await InitWorld()); }
public void FinalCleanup() { mRP_Snapshot.Cleanup(); mRP_Snapshot = null; mCamera.Cleanup(); mCamera = null; }