Ejemplo n.º 1
0
        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);
            }
        }
Ejemplo n.º 2
0
        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();
        }
Ejemplo n.º 3
0
        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);
        }
Ejemplo n.º 4
0
        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");
        }
Ejemplo n.º 5
0
        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);
            }
        }
Ejemplo n.º 6
0
        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();
        }
Ejemplo n.º 7
0
 public static void TakeScreenshot(MyRenderTargets rt)
 {
     TakeScreenshot(GetRenderTarget(rt), rt.ToString());
 }
Ejemplo n.º 8
0
        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);
        }
Ejemplo n.º 9
0
        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");
        }