2011-08-17 75 views
5

我使用pygame的一個簡單的行爲測試程序。我在我的MacBook Pro上運行它,並具有幾乎所有的功能。但是,在測試過程中,我會有第二個外部顯示器,主體可以看到筆記本電腦顯示器。我想讓遊戲在外接顯示器上全屏顯示,而不是在筆記本電腦的顯示器上,以便我可以監控性能。目前,該文件的開頭看起來像:pygame的雙顯示器和全屏

#! /usr/bin/env python2.6 

import pygame 
import sys 

stdscr = curses.initscr() 
pygame.init() 
screen = pygame.display.set_mode((1900, 1100), pygame.RESIZABLE) 

我想開始在一個可調整大小的屏幕上的遊戲,但OS X有調整窗口的大小問題。

回答

7

Pygame的不支持兩個顯示在一個單一的處理pygame的(還)。看到問題here和開發人員的回答immediately after,他說

一旦SDL 1.3完成再pygame的將獲得在相同的工藝使用多窗口的支持。

所以,你的選擇是:

  1. 使用多個進程。二pygame的情況下,各最大化自己的屏幕上,來回通信(你可以使用任何的:非常酷的python multiprocessing module,本地TCP,管道,寫入/讀取文件等)
  2. 設置在兩個相同的分辨率的顯示並創建一個大的(寬)窗口,其中包含一半的信息,另一半顯示用戶的信息。然後手動放置窗口,以便用戶端位於其屏幕上,而您的位於筆記本電腦屏幕上。這很不方便,但可能更好地利用你的時間,而不是設計一個更好的解決方案(「如果它是個好東西,它起作用,它不是愚蠢的」)。
  3. 使用pyglet,這是類似的Pygame和supports full screen windowspyglet.window.Window(fullscreen=True, screens[1])

好運。

+0

我有一個類似的問題,我有一個投影儀提供光的圖案,而我還是希望能夠做的東西在其他顯示器上的背景。這可能嗎? – user391339

+0

Pyglet不支持MacOS上的多顯示器全屏顯示。經過大量時間,沒有結果,並在Pyglet源代碼中找到這條評論後,我發現這很困難:「#BUG:我懷疑這在使用多個顯示器時不會正確(這可能會導致在窗口所在的顯示器上全屏顯示),但我無法測試。「它不起作用,事實上,我在MacOS上發現了* no *平臺,可以打開多個全屏顯示。 –