2013-05-03 16 views
5

Sto iniziando a esplorare Python e Pygame, tuttavia sto riscontrando un problema. Tutto ciò che disegno sullo schermo viene visualizzato solo nel quarto in alto a sinistra della finestra. Ho pensato che fosse il mio codice, ma tutti i programmi dimostrativi che ho provato sono visualizzati allo stesso modo.Schermo visualizzato solo nell'angolo in alto a sinistra della finestra

codice demo da thenewboston su youtube

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() 

Nel video i suoi schermi in modo corretto e la mia sembra che questo screenshot of game rendering only in the top left quarter of the screen

Usando:

  • Python 2.7.4 a 32 bit
  • pygame 1.9.1 32 bit
  • mac 10.8.3 64 bit su macbook pro retina

Penso che o abbia a che fare con il display retina o ho installato qualcosa di sbagliato. Qualsiasi aiuto sarebbe apprezzato.

+0

codice funziona benissimo sulla mia macchina. Prova a installare python e pygame da zero e guarda cosa succede (usando virtualenv). E no, la retina non ha niente a che fare con questo. –

+0

Sto ancora correndo lo stesso problema dopo aver usato il virtualenv python – Sam

+0

prova questo: 'screen.blit (mouse_c, (50,50))' se funziona, il modulo mouse pygame non funziona correttamente. –

risposta

5

Il problema è, in effetti, con la risoluzione dello schermo retina. Per far funzionare correttamente pygame, scarica setresx e usalo per impostare la tua risoluzione su qualsiasi impostazione senza HiDPI.

+0

Grazie mille, ho lavorato al mio vecchio computer per un mese perché non riuscivo a capirlo. Sono a lavoro ma sicuramente tornerò a casa quando tornerò a casa. – Sam

+0

Ha funzionato benissimo ancora. – Sam

Problemi correlati