2013-05-03 8 views
5

私はPythonとPygameを探索し始めていますが、問題に遭遇しています。私が画面に描くものは、ウィンドウの左上四半分にのみ表示されます。私はそれが私のコードだと思ったが、私が試したデモプログラムも同じように表示される。画面はウィンドウの左上隅にのみ表示されます

ビデオでユーチューブ

import pygame, sys 
from pygame.locals import * 

pygame.init() 

screen = pygame.display.set_mode((640,360),0,32) 

background = pygame.image.load("Background.jpg").convert() 
mouse_c = pygame.image.load("ball.png").convert_alpha() 

while True: 
    for event in pygame.event.get(): 
     if event.type == QUIT: 
      pygame.quit() 
      sys.exit() 

    screen.blit(background, (0,0)) 

    x,y = pygame.mouse.get_pos() 
    x -= mouse_c.get_width()/2 
    y -= mouse_c.get_height()/2 

    screen.blit(mouse_c, (x,y)) 

    pygame.display.update() 

上thenewbostonからデモコード彼の正しく表示されると私が使用してこの screenshot of game rendering only in the top left quarter of the screen

次のようになります。

  • をPythonの2.7.4 32ビット
  • パイガム1.9.1 32ビット
  • mac 10.8.3 macbook proの網膜で64ビット

私は網膜ディスプレイと関係があるか、何か間違ってインストールしたと思います。どんな助けもありがとう。

+0

コードは私のマシンで素晴らしい動作します。 pythonをインストールして、最初からpygameを試して、何が起こるかを見てみてください(virtualenvを使ってください)。 いいえ、網膜はそれとは関係ありません。 –

+0

virtualenv python – Sam

+0

を使っても同じ問題が起きています: 'screen.blit(mouse_c、(50,50))'これが動作すれば、pygameマウスモジュールは正しく動作しません。 –

答えて

5

問題は、実際には、網膜スクリーンの解像度です。 pygameが正しく動作するようにするには、setresxをダウンロードし、それを使って解像度をHiDPIなしの任意の設定に設定します。

+0

ありがとう、私は古いコンピュータを使って私はこれを理解することができなかったからです。私は仕事中ですが、家に帰ると間違いなくこのショットを出します。 – Sam

+0

もう一度誠にありがとうございました。 – Sam

関連する問題