Ejemplo n.º 1
0
        public static IFilter SetSize(this IFilter filter, TextureSize size)
        {
            var resizeable = (filter as IResizeableFilter) ?? new ResizeFilter(filter);

            resizeable.SetSize(size);
            return(resizeable);
        }
Ejemplo n.º 2
0
 public ResizeFilter(IFilter inputFilter, TextureSize outputSize, TextureChannels channels, Vector2 offset, IScaler upscaler, IScaler downscaler, IScaler convolver = null)
     : base(inputFilter)
 {
     m_Upscaler   = upscaler;
     m_Downscaler = downscaler;
     m_Convolver  = convolver;
     m_OutputSize = outputSize;
     m_Channels   = channels;
     m_Offset     = offset;
 }
Ejemplo n.º 3
0
        public static IResizeableFilter Resize(this ITextureFilter inputFilter, TextureSize outputSize, TextureChannels?channels = null, Vector2?offset = null, IScaler upscaler = null, IScaler downscaler = null, IScaler convolver = null, TextureFormat?outputFormat = null, bool tagged = false)
        {
            var result = new ResizeFilter(inputFilter, outputSize, channels ?? TextureChannels.All, offset ?? Vector2.Zero, upscaler, downscaler, convolver, outputFormat);

            if (tagged)
            {
                result.EnableTag();
            }
            return(result);
        }
Ejemplo n.º 4
0
        private IEnumerable <int> CompareTo(TextureSize b)
        {
            yield return(Width.CompareTo(b.Width));

            yield return(Height.CompareTo(b.Height));

            if (Is3D || b.Is3D)
            {
                yield return(Depth.CompareTo(b.Depth));
            }
        }
Ejemplo n.º 5
0
        public static ITargetTexture GetTexture(TextureSize textureSize, TextureFormat?textureFormat = null)
        {
            foreach (var list in new[] { s_SavedTextures, s_OldTextures })
            {
                var index = list.FindIndex(x => (x.GetSize() == textureSize) && (x.Format == textureFormat));
                if (index < 0)
                {
                    continue;
                }

                var texture = list[index];
                list.RemoveAt(index);
                return(texture);
            }

            return(Renderer.CreateRenderTarget(textureSize.Width, textureSize.Height,
                                               textureFormat ?? Renderer.RenderQuality.GetTextureFormat()));
        }
Ejemplo n.º 6
0
        public static ITextureFilter SetSize(this ITextureFilter filter, TextureSize size, bool tagged = false)
        {
            ITextureFilter textureFilter;

            if (filter.Size() == size && (textureFilter = filter as ITextureFilter) != null)
            {
                return(textureFilter);
            }

            var resizeable = (filter as IResizeableFilter) ?? new ResizeFilter(filter, size);

            if (tagged)
            {
                resizeable.EnableTag();
            }

            return(resizeable.ResizeTo(size));
        }
Ejemplo n.º 7
0
 public void SetSize(TextureSize targetSize)
 {
     m_OutputSize = targetSize;
 }
Ejemplo n.º 8
0
 public ResizeFilter(IFilter inputFilter, TextureSize outputSize, IScaler convolver = null)
     : this(inputFilter, outputSize, TextureChannels.All, Vector2.Zero, Renderer.LumaUpscaler, Renderer.LumaDownscaler, convolver)
 {
 }
Ejemplo n.º 9
0
        public static ITextureFilter SetSize(this ITextureFilter <ITexture2D> filter, TextureSize size, bool tagged = false)
        {
            var resizeable = (filter as IResizeableFilter) ?? new ResizeFilter(filter);

            if (tagged)
            {
                resizeable.EnableTag();
            }
            return(resizeable.SetSize(size));
        }
Ejemplo n.º 10
0
        public bool IsUpscalingFrom(TextureSize size)
        {
            var targetSize = Renderer.TargetSize;

            return(targetSize.Width > size.Width || targetSize.Height > size.Height);
        }
Ejemplo n.º 11
0
 public bool IsDownscalingFrom(TextureSize size)
 {
     return(!IsNotScalingFrom(size) && !IsUpscalingFrom(size));
 }
Ejemplo n.º 12
0
        public static ITargetTexture GetTexture(TextureSize textureSize, TextureFormat? textureFormat = null)
        {
            foreach (var list in new[] {s_SavedTextures, s_OldTextures})
            {
                var index = list.FindIndex(x => (x.GetSize() == textureSize) && (x.Format == textureFormat));
                if (index < 0)
                    continue;

                var texture = list[index];
                list.RemoveAt(index);
                return texture;
            }

            return Renderer.CreateRenderTarget(textureSize.Width, textureSize.Height,
                textureFormat ?? Renderer.RenderQuality.GetTextureFormat());
        }
Ejemplo n.º 13
0
 public bool Equals(TextureSize other)
 {
     return(Width == other.Width && Height == other.Height && Depth == other.Depth);
 }
Ejemplo n.º 14
0
 public ResizeFilter(IFilter inputFilter, TextureSize outputSize, TextureChannels channels, Vector2 offset, IScaler convolver = null)
     : this(inputFilter, outputSize, channels, offset, Renderer.LumaUpscaler, Renderer.LumaDownscaler, convolver)
 {
 }
Ejemplo n.º 15
0
 public bool IsNotScalingFrom(TextureSize size)
 {
     return size == Renderer.TargetSize;
 }
Ejemplo n.º 16
0
 public TextureSourceFilter(TTexture texture)
 {
     m_Texture = texture;
     m_Size    = m_Texture.GetSize();
 }
Ejemplo n.º 17
0
 public void SetSize(TextureSize outputSize)
 {
     m_InputFilter.SetSize(outputSize);
     CheckSize();
 }
Ejemplo n.º 18
0
 public ResizeFilter(IFilter inputFilter, TextureSize outputSize, TextureChannels channels, IScaler upscaler, IScaler downscaler, IScaler convolver = null)
     : this(inputFilter, outputSize, channels, Vector2.Zero, upscaler, downscaler, convolver)
 {
 }
Ejemplo n.º 19
0
 public ResizeFilter(IFilter inputFilter, TextureSize outputSize, Vector2 offset, IScaler upscaler, IScaler downscaler, IScaler convolver = null)
     : this(inputFilter, outputSize, TextureChannels.All, offset, upscaler, downscaler, convolver)
 {
 }
Ejemplo n.º 20
0
 public bool IsDownscalingFrom(TextureSize size)
 {
     return !IsNotScalingFrom(size) && !IsUpscalingFrom(size);
 }
Ejemplo n.º 21
0
 public void SetSize(TextureSize outputSize)
 {
     m_InputFilter.SetSize(outputSize);
     CheckSize();
 }
Ejemplo n.º 22
0
 public bool IsUpscalingFrom(TextureSize size)
 {
     var targetSize = Renderer.TargetSize;
     return targetSize.Width > size.Width || targetSize.Height > size.Height;
 }
Ejemplo n.º 23
0
 public ResizeFilter(IFilter inputFilter, TextureSize outputSize, IScaler convolver = null)
     : this(inputFilter, outputSize, TextureChannels.All, Vector2.Zero, Renderer.LumaUpscaler, Renderer.LumaDownscaler, convolver)
 {
 }
Ejemplo n.º 24
0
 public ResizeFilter(IFilter inputFilter, TextureSize outputSize, TextureChannels channels, Vector2 offset, IScaler convolver = null)
     : this(inputFilter, outputSize, channels, offset, Renderer.LumaUpscaler, Renderer.LumaDownscaler, convolver)
 {
 }
Ejemplo n.º 25
0
 public ResizeFilter(IFilter inputFilter, TextureSize outputSize, TextureChannels channels, IScaler upscaler, IScaler downscaler, IScaler convolver = null)
     : this(inputFilter, outputSize, channels, Vector2.Zero, upscaler, downscaler, convolver)
 {
 }
Ejemplo n.º 26
0
 public ITextureFilter CreateChromaFilter(ITextureFilter lumaInput, ITextureFilter chromaInput, TextureSize targetSize, Vector2 chromaOffset)
 {
     return(new CompositionFilter(lumaInput, chromaInput, null, targetSize, chromaOffset) + Chain);
 }
Ejemplo n.º 27
0
 public ResizeFilter(IFilter inputFilter, TextureSize outputSize, Vector2 offset, IScaler upscaler, IScaler downscaler, IScaler convolver = null)
     : this(inputFilter, outputSize, TextureChannels.All, offset, upscaler, downscaler, convolver)
 {
 }
Ejemplo n.º 28
0
 public bool Equals(TextureSize other)
 {
     return Width == other.Width && Height == other.Height && Depth == other.Depth;
 }
Ejemplo n.º 29
0
 public ResizeFilter(IFilter inputFilter, TextureSize outputSize, TextureChannels channels, Vector2 offset, IScaler upscaler, IScaler downscaler, IScaler convolver = null)
     : base(inputFilter)
 {
     m_Upscaler = upscaler;
     m_Downscaler = downscaler;
     m_Convolver = convolver;
     m_OutputSize = outputSize;
     m_Channels = channels;
     m_Offset = offset;
 }
Ejemplo n.º 30
0
 public bool IsNotScalingFrom(TextureSize size)
 {
     return(size == Renderer.TargetSize);
 }
Ejemplo n.º 31
0
 public void SetSize(TextureSize targetSize)
 {
     m_OutputSize = targetSize;
 }
Ejemplo n.º 32
0
 public static ITextureFilter Resize(this ITextureFilter <ITexture2D> inputFilter, TextureSize outputSize, TextureChannels?channels = null, Vector2?offset = null, IScaler upscaler = null, IScaler downscaler = null, IScaler convolver = null, TextureFormat?outputFormat = null)
 {
     return(new ResizeFilter(inputFilter, outputSize, channels ?? TextureChannels.All, offset ?? Vector2.Zero, upscaler, downscaler, convolver, outputFormat));
 }
Ejemplo n.º 33
0
 public static IFilter SetSize(this IFilter filter, TextureSize size)
 {
     var resizeable = (filter as IResizeableFilter) ?? new ResizeFilter(filter);
     resizeable.SetSize(size);
     return resizeable;
 }
Ejemplo n.º 34
0
 public ITextureFilter SetSize(TextureSize outputSize)
 {
     return(new TransformedResizeableFilter(m_Transformation, m_InputFilter));
 }
Ejemplo n.º 35
0
 public static IFilter SetSize(this IFilter<ITexture2D> filter, TextureSize size, bool tagged = false)
 {
     var resizeable = (filter as IResizeableFilter) ?? new ResizeFilter(filter);
     if (tagged)
         resizeable.MakeTagged();
     resizeable.SetSize(size);
     return resizeable;
 }