pygame double buffering

Posted by BaldDude on Game Development See other posts from Game Development or by BaldDude
Published on 2013-07-03T15:32:27Z Indexed on 2013/07/03 17:19 UTC
Read the original article Hit count: 1004

Filed under:
|

I am trying to use double buffering in pygame. What I'm trying to do is display a red then green screen, and switch from one to the other. Unfortunately, all I have is a black screen. I looked through many sites, but have been unable to find a solution. Any help would be appreciated.

import pygame, sys
from pygame.locals import *

RED = (255, 0, 0)
GREEN = ( 0, 255, 0)
bob = 1

pygame.init()
#DISPLAYSURF = pygame.display.set_mode((500, 400), 0, 32)
DISPLAYSURF = pygame.display.set_mode((1920, 1080), pygame.OPENGL | pygame.DOUBLEBUF | pygame.HWSURFACE | pygame.FULLSCREEN)
glClear(GL_COLOR_BUFFER_BIT)
glMatrixMode(GL_MODELVIEW)
glLoadIdentity()
running = True  
while running:

if bob==1:
    #pygame.draw.rect(DISPLAYSURF, RED, (0, 0, 1920, 1080))
    #pygame.display.flip()
    glBegin(GL_QUADS)
    glColor3f(1.0, 0.0, 0.0)
    glVertex2f(-1.0, 1.0)
    glVertex2f(-1.0, -1.0)
    glVertex2f(1.0, -1.0)
    glVertex2f(1.0, 1.0)
    glEnd()
    pygame.dis
    bob = 0

else:
    #pygame.draw.rect(DISPLAYSURF, GREEN, (0, 0, 1920, 1080))
    #pygame.display.flip()
    glBegin(GL_QUADS)
    glColor3f(0.0, 1.0, 0.0)
    glVertex2f(-1.0, 1.0)
    glVertex2f(-1.0, -1.0)
    glVertex2f(1.0, -1.0)
    glVertex2f(1.0, 1.0)
    glEnd()
    pygame.dis
    bob = 1

for event in pygame.event.get():
    if event.type == pygame.QUIT:
        running = False
    elif event.type == KEYDOWN:
        if event.key == K_ESCAPE:
            running = False

pygame.quit()
sys.exit()

I'm using Python 2.7 and my code need to be os independent.

Thanks for your help.

© Game Development or respective owner

Related posts about python

Related posts about pygame