Pārlūkot izejas kodu

metal: contrary to documentation, we need to set the drawableSize explicitly.

Fixes Bugzilla #4149.
Ryan C. Gordon 6 gadi atpakaļ
vecāks
revīzija
3d3870982c

+ 3 - 4
src/video/cocoa/SDL_cocoametalview.m

@@ -66,11 +66,10 @@
         /* Allow resize. */
         self.autoresizingMask = NSViewWidthSizable | NSViewHeightSizable;
 
-        /* Set the desired scale. The default drawableSize of a CAMetalLayer
-         * is its bounds x its scale so nothing further needs to be done.
-         */
+        /* Set the desired scale. */
+        ((CAMetalLayer *) self.layer).drawableSize = NSSizeToCGSize([self bounds].size);
         self.layer.contentsScale = scale;
-	}
+    }
   
 	return self;
 }

+ 2 - 2
src/video/uikit/SDL_uikitmetalview.m

@@ -49,8 +49,8 @@
 {
     if ((self = [super initWithFrame:frame])) {
         self.tag = METALVIEW_TAG;
-        /* Set the desired scale. The default drawableSize of a CAMetalLayer
-         * is its bounds x its scale so nothing further needs to be done. */
+        /* Set the desired scale. */
+        ((CAMetalLayer *) self.layer).drawableSize = self.bounds.size;
         self.layer.contentsScale = scale;
     }