Kaynağa Gözat

Remove more unused code

gdkchan 6 yıl önce
ebeveyn
işleme
9bfb373bdf

+ 0 - 4
Ryujinx.Graphics.GAL/ITexture.cs

@@ -4,15 +4,11 @@ namespace Ryujinx.Graphics.GAL
 {
     public interface ITexture : IDisposable
     {
-        int Handle { get; }
-
         void CopyTo(ITexture destination, int firstLayer, int firstLevel);
         void CopyTo(ITexture destination, Extents2D srcRegion, Extents2D dstRegion, bool linearFilter);
 
         ITexture CreateView(TextureCreateInfo info, int firstLayer, int firstLevel);
 
-        int GetStorageDebugId();
-
         byte[] GetData();
 
         void SetData(Span<byte> data);

+ 5 - 42
Ryujinx.Graphics.Gpu/Engine/Methods.cs

@@ -336,8 +336,6 @@ namespace Ryujinx.Graphics.Gpu.Engine
 
             _context.Renderer.Pipeline.SetDepthMode(depthMode);
 
-            bool transformEnable = GetViewportTransformEnable(state);
-
             bool flipY = (state.Get<int>(MethodOffset.YControl) & 1) != 0;
 
             float yFlip = flipY ? -1 : 1;
@@ -349,35 +347,13 @@ namespace Ryujinx.Graphics.Gpu.Engine
                 var transform = state.Get<ViewportTransform>(MethodOffset.ViewportTransform, index);
                 var extents   = state.Get<ViewportExtents>  (MethodOffset.ViewportExtents,   index);
 
-                RectangleF region;
-
-                if (transformEnable)
-                {
-                    float x = transform.TranslateX - MathF.Abs(transform.ScaleX);
-                    float y = transform.TranslateY - MathF.Abs(transform.ScaleY);
+                float x = transform.TranslateX - MathF.Abs(transform.ScaleX);
+                float y = transform.TranslateY - MathF.Abs(transform.ScaleY);
 
-                    float width  = transform.ScaleX * 2;
-                    float height = transform.ScaleY * 2 * yFlip;
+                float width  = transform.ScaleX * 2;
+                float height = transform.ScaleY * 2 * yFlip;
 
-                    region = new RectangleF(x, y, width, height);
-                }
-                else
-                {
-                    // It's not possible to fully disable viewport transform, at least with the most
-                    // common graphics APIs, but we can effectively disable it with a dummy transform.
-                    // The transform is defined as: xw = (width / 2) * xndc + x + (width / 2)
-                    // By setting x to -(width / 2), we effectively remove the translation.
-                    // By setting the width to 2, we remove the scale since 2 / 2 = 1.
-                    // Now, the only problem is the viewport clipping, that we also can't disable.
-                    // To prevent the values from being clipped, we multiply (-1, -1, 2, 2) by
-                    // the maximum supported viewport dimensions.
-                    // This must be compensated on the shader, by dividing the vertex position
-                    // by the maximum viewport dimensions.
-                    float maxSize     = _context.Capabilities.MaximumViewportDimensions;
-                    float halfMaxSize = _context.Capabilities.MaximumViewportDimensions * 0.5f;
-
-                    region = new RectangleF(-halfMaxSize, -halfMaxSize, maxSize, maxSize * yFlip);
-                }
+                RectangleF region = new RectangleF(x, y, width, height);
 
                 viewports[index] = new Viewport(
                     region,
@@ -827,19 +803,6 @@ namespace Ryujinx.Graphics.Gpu.Engine
             _context.Renderer.Pipeline.SetProgram(gs.HostProgram);
         }
 
-        /// <summary>
-        /// Gets viewport transform enable.
-        /// </summary>
-        /// <param name="state">Current GPU state</param>
-        /// <returns>Viewport transform enable</returns>
-        public bool GetViewportTransformEnable(GpuState state)
-        {
-            // FIXME: We should read ViewportTransformEnable, but it seems that some games writes 0 there?
-            // return state.Get<Boolean32>(MethodOffset.ViewportTransformEnable) != 0;
-
-            return true;
-        }
-
         /// <summary>
         /// Gets texture target from a sampler type.
         /// </summary>

+ 0 - 2
Ryujinx.Graphics.Gpu/Shader/ShaderCache.cs

@@ -308,8 +308,6 @@ namespace Ryujinx.Graphics.Gpu.Shader
                         return Convert.ToInt32(QueryIsTextureRectangle(state, (int)stage - 1, index));
                     case QueryInfoName.PrimitiveTopology:
                         return (int)GetPrimitiveTopology();
-                    case QueryInfoName.ViewportTransformEnable:
-                        return Convert.ToInt32(_context.Methods.GetViewportTransformEnable(state));
                 }
 
                 return QueryInfoCommon(info);

+ 0 - 36
Ryujinx.Graphics.OpenGL/TextureView.cs

@@ -130,24 +130,12 @@ namespace Ryujinx.Graphics.OpenGL
             }
         }
 
-        public int GetStorageDebugId()
-        {
-            return _parent.GetHashCode();
-        }
-
         public void CopyTo(ITexture destination, int firstLayer, int firstLevel)
         {
             TextureView destinationView = (TextureView)destination;
 
             TextureCopyUnscaled.Copy(this, destinationView, firstLayer, firstLevel);
 
-            int width  = Math.Min(Width,  destinationView.Width);
-            int height = Math.Min(Height, destinationView.Height);
-
-            int depth = Math.Min(_info.GetDepthOrLayers(), destinationView._info.GetDepthOrLayers());
-
-            int levels = Math.Min(_info.Levels, destinationView._info.Levels);
-
             if (destinationView._emulatedViewParent != null)
             {
                 TextureCopyUnscaled.Copy(
@@ -415,32 +403,8 @@ namespace Ryujinx.Graphics.OpenGL
             GL.BindTexture(target, Handle);
         }
 
-        public void Acquire()
-        {
-            _acquired = true;
-        }
-
-        public void Release()
-        {
-            _acquired = false;
-
-            if (_pendingDelete)
-            {
-                _pendingDelete = false;
-
-                Dispose();
-            }
-        }
-
         public void Dispose()
         {
-            if (_acquired)
-            {
-                _pendingDelete = true;
-
-                return;
-            }
-
             if (Handle != 0)
             {
                 GL.DeleteTexture(Handle);

+ 1 - 2
Ryujinx.Graphics.Shader/QueryInfoName.cs

@@ -11,7 +11,6 @@ namespace Ryujinx.Graphics.Shader
         MaximumViewportDimensions,
         PrimitiveTopology,
         StorageBufferOffsetAlignment,
-        SupportsNonConstantTextureOffset,
-        ViewportTransformEnable
+        SupportsNonConstantTextureOffset
     }
 }

+ 1 - 12
Ryujinx.Graphics.Shader/Translation/EmitterContext.cs

@@ -59,18 +59,7 @@ namespace Ryujinx.Graphics.Shader.Translation
 
         public void PrepareForReturn()
         {
-            if (_config.Stage == ShaderStage.Vertex)
-            {
-                if (!_config.QueryInfoBool(QueryInfoName.ViewportTransformEnable))
-                {
-                    Operand posX = Attribute(AttributeConsts.PositionX);
-                    Operand posY = Attribute(AttributeConsts.PositionY);
-
-                    this.Copy(posX, this.FPDivide(posX, ConstF(_config.QueryInfo(QueryInfoName.MaximumViewportDimensions) / 2)));
-                    this.Copy(posY, this.FPDivide(posY, ConstF(_config.QueryInfo(QueryInfoName.MaximumViewportDimensions) / 2)));
-                }
-            }
-            else if (_config.Stage == ShaderStage.Fragment)
+            if (_config.Stage == ShaderStage.Fragment)
             {
                 if (_config.OmapDepth)
                 {

+ 0 - 2
Ryujinx.Graphics.Shader/Translation/ShaderConfig.cs

@@ -94,8 +94,6 @@ namespace Ryujinx.Graphics.Shader.Translation
                         return 16;
                     case QueryInfoName.SupportsNonConstantTextureOffset:
                         return Convert.ToInt32(true);
-                    case QueryInfoName.ViewportTransformEnable:
-                        return Convert.ToInt32(true);
                 }
             }