Beispiel #1
0
        /// <summary>
        /// Function to copy this texture into a new staging texture.
        /// </summary>
        /// <returns>
        /// The new staging texture.
        /// </returns>
        protected override GorgonTexture OnGetStagingTexture()
        {
            var settings1D = new GorgonTexture1DSettings
            {
                ArrayCount = Settings.ArrayCount,
                Format     = Settings.Format,
                Width      = Settings.Width,
                MipCount   = Settings.MipCount,
                Usage      = BufferUsage.Staging
            };

            GorgonTexture staging = Graphics.Textures.CreateTexture(Name + ".Staging", settings1D);

            staging.Copy(this);

            return(staging);
        }
Beispiel #2
0
        /// <summary>
        /// Function to copy this texture into a new staging texture.
        /// </summary>
        /// <returns>
        /// The new staging texture.
        /// </returns>
        protected override GorgonTexture OnGetStagingTexture()
        {
            var settings3D = new GorgonTexture3DSettings
            {
                Format   = Settings.Format,
                Width    = Settings.Width,
                Height   = Settings.Height,
                Depth    = Settings.Depth,
                MipCount = Settings.MipCount,
                Usage    = BufferUsage.Staging
            };

            GorgonTexture staging = Graphics.ImmediateContext.Textures.CreateTexture(Name + ".Staging", settings3D);

            staging.Copy(this);

            return(staging);
        }
Beispiel #3
0
        /// <summary>
        /// Function to copy this texture into a new staging texture.
        /// </summary>
        /// <returns>
        /// The new staging texture.
        /// </returns>
        protected override GorgonTexture OnGetStagingTexture()
        {
            var settings2D = new GorgonTexture2DSettings
            {
                ArrayCount    = Settings.ArrayCount,
                Format        = Settings.Format,
                Width         = Settings.Width,
                Height        = Settings.Height,
                IsTextureCube = Settings.IsTextureCube,
                Multisampling = Settings.Multisampling,
                MipCount      = Settings.MipCount,
                Usage         = BufferUsage.Staging
            };

            GorgonTexture staging = Graphics.ImmediateContext.Textures.CreateTexture(Name + ".Staging", settings2D);

            staging.Copy(this);

            return(staging);
        }