Quellcode durchsuchen

metal and moltenvk: fix highdpi.

Alex Szpakowski vor 7 Jahren
Ursprung
Commit
f9cd765020
2 geänderte Dateien mit 3 neuen und 7 gelöschten Zeilen
  1. 0 3
      src/render/metal/SDL_render_metal.m
  2. 3 4
      src/video/cocoa/SDL_cocoametalview.m

+ 0 - 3
src/render/metal/SDL_render_metal.m

@@ -563,9 +563,6 @@ static int
 METAL_GetOutputSize(SDL_Renderer * renderer, int *w, int *h)
 { @autoreleasepool {
     METAL_RenderData *data = (__bridge METAL_RenderData *) renderer->driverdata;
-    // !!! FIXME: We shouldn't need ActivateRenderer, but drawableSize is 0
-    // in the first frame without it.
-    METAL_ActivateRenderer(renderer);
     if (w) {
         *w = (int)data.mtllayer.drawableSize.width;
     }

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

@@ -61,11 +61,12 @@
                    useHighDPI:(bool)useHighDPI
 {
 	if ((self = [super initWithFrame:frame])) {
-    
+        self.wantsLayer = YES;
+
         /* Allow resize. */
         self.autoresizingMask = NSViewWidthSizable | NSViewHeightSizable;
         _tag = METALVIEW_TAG;
-      
+
         _useHighDPI = useHighDPI;
         [self updateDrawableSize];
 	}
@@ -100,8 +101,6 @@ Cocoa_Mtl_AddMetalView(SDL_Window* window)
     SDL_cocoametalview *metalview
         = [[SDL_cocoametalview alloc] initWithFrame:view.frame
                        useHighDPI:(window->flags & SDL_WINDOW_ALLOW_HIGHDPI)];
-    // Instantiate the CAMetalLayer
-    metalview.wantsLayer = YES;
     [view addSubview:metalview];
     return metalview;
 }