static void CreateRenderTarget(MyRenderTargets renderTarget, int width, int height, Format preferredFormat, Usage usage = Usage.RenderTarget, bool mipmaps = true) { try { // Dispose render target - this happens e.g. after video resolution change DisposeRenderTarget(renderTarget); if (width <= 0 || height <= 0) // may happen when creatting in load content { return; } // Create new render target, no anti-aliasing m_renderTargets[(int)renderTarget] = new Texture(GraphicsDevice, width, height, mipmaps ? 0 : 1, usage, preferredFormat, Pool.Default); m_renderTargets[(int)renderTarget].DebugName = renderTarget.ToString(); } catch (Exception e) { string formatStr = "Creating render target failed, target: {0}({1}), width: {2}, height: {3}, format: {4}, usage: {5}, mipmaps: {6}"; string str = String.Format(formatStr, renderTarget, (int)renderTarget, width, height, preferredFormat, usage, mipmaps); if (m_adaptersList[m_settings.AdapterOrdinal].DeviceName.Contains("Microsoft Basic Display Adapter")) { throw new MyRenderException(str, MyRenderExceptionEnum.DriverNotInstalled); } else { throw new MyRenderException(str, MyRenderExceptionEnum.GpuNotSupported); } //throw new ApplicationException(str, e); } }
static void CreateRenderTargetCube(MyRenderTargets renderTarget, int size, Format surfaceFormat) { DisposeRenderTarget(renderTarget); if (size <= 0) { return; } m_renderTargets[(int)renderTarget] = new CubeTexture(GraphicsDevice, size, 0, Usage.RenderTarget | Usage.AutoGenerateMipMap, surfaceFormat, Pool.Default); m_renderTargets[(int)renderTarget].DebugName = renderTarget.ToString(); }
static void CreateRenderTarget(MyRenderTargets renderTarget, int width, int height, Format preferredFormat, Usage usage = Usage.RenderTarget /*| Usage.AutoGenerateMipMap*/) { // Dispose render target - this happens e.g. after video resolution change DisposeRenderTarget(renderTarget); if (width <= 0 || height <= 0) // may happen when creatting in load content { return; } // Create new render target, no anti-aliasing m_renderTargets[(int)renderTarget] = new Texture(m_device, width, height, 0, usage, preferredFormat, Pool.Default); m_renderTargets[(int)renderTarget].DebugName = renderTarget.ToString(); m_renderTargets[(int)renderTarget].Tag = new Vector2(width, height); }
static void CreateRenderTargetCube(MyRenderTargets renderTarget, int size, Format surfaceFormat) { MyMwcLog.WriteLine("MyRender.CreateRenderTargetCube - START"); DisposeRenderTarget(renderTarget); if (size <= 0) { return; } m_renderTargets[(int)renderTarget] = new CubeTexture(m_device, size, 0, Usage.RenderTarget, surfaceFormat, Pool.Default); m_renderTargets[(int)renderTarget].DebugName = renderTarget.ToString(); m_renderTargets[(int)renderTarget].Tag = new Vector2(size, size); MyMwcLog.WriteLine("MyRender.CreateRenderTargetCube - END"); }
static void CreateRenderTarget(MyRenderTargets renderTarget, int width, int height, Format preferredFormat, Usage usage = Usage.RenderTarget, bool mipmaps = true) { try { // Dispose render target - this happens e.g. after video resolution change DisposeRenderTarget(renderTarget); if (width <= 0 || height <= 0) // may happen when creatting in load content return; // Create new render target, no anti-aliasing m_renderTargets[(int)renderTarget] = new Texture(GraphicsDevice, width, height, mipmaps ? 0 : 1, usage, preferredFormat, Pool.Default); m_renderTargets[(int)renderTarget].DebugName = renderTarget.ToString(); } catch (Exception e) { string formatStr = "Creating render target failed, target: {0}({1}), width: {2}, height: {3}, format: {4}, usage: {5}, mipmaps: {6}"; string str = String.Format(formatStr, renderTarget, (int)renderTarget, width, height, preferredFormat, usage, mipmaps); if(m_adaptersList[m_settings.AdapterOrdinal].DeviceName.Contains("Microsoft Basic Display Adapter")) { throw new MyRenderException(str, MyRenderExceptionEnum.DriverNotInstalled); } else { throw new MyRenderException(str, MyRenderExceptionEnum.GpuNotSupported); } //throw new ApplicationException(str, e); } }
public static void TakeScreenshot(MyRenderTargets rt) { TakeScreenshot(GetRenderTarget(rt), rt.ToString()); }
static void CreateRenderTarget(MyRenderTargets renderTarget, int width, int height, Format preferredFormat, Usage usage = Usage.RenderTarget /*| Usage.AutoGenerateMipMap*/) { // Dispose render target - this happens e.g. after video resolution change DisposeRenderTarget(renderTarget); if (width <= 0 || height <= 0) // may happen when creatting in load content return; // Create new render target, no anti-aliasing m_renderTargets[(int)renderTarget] = new Texture(m_device, width, height, 0, usage, preferredFormat, Pool.Default); m_renderTargets[(int)renderTarget].DebugName = renderTarget.ToString(); m_renderTargets[(int)renderTarget].Tag = new Vector2(width, height); }