<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-6747657806842556578</id><updated>2011-12-04T00:19:44.983-08:00</updated><category term='driver'/><category term='zbuffer'/><category term='Fedora'/><category term='mouse'/><category term='pyopengl'/><category term='pygame.display'/><category term='python'/><category term='gl_get_attribute'/><category term='class'/><category term='script'/><category term='pygame'/><category term='colors'/><category term='Android'/><category term='binary'/><category term='get_driver'/><category term='time'/><title type='text'>pygame-catalin</title><subtitle type='html'>pygame-catalin is a blogger create by Catalin Festila.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>15</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-6204934951505846881</id><published>2011-10-01T05:05:00.000-07:00</published><updated>2011-10-01T05:05:30.710-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='class'/><category scheme='http://www.blogger.com/atom/ns#' term='mouse'/><category scheme='http://www.blogger.com/atom/ns#' term='script'/><title type='text'>pygame - test mouse class</title><content type='html'>Today I will show how to test mouse with pygame.&lt;br /&gt;This is very simple , just you try to use &lt;b&gt;MOUSEBUTTONDOWN&lt;/b&gt;.&lt;br /&gt;Also , the click mouse only registers once so you can use it with another event.&lt;br /&gt;If you don't want to use an event handler, you can check for input with:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;pygame.mouse.get_pos() &lt;br /&gt;pygame.mouse.get_pressed()&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;I created a class called &lt;b&gt;Game&lt;/b&gt;, which contains four functions.&lt;br /&gt;A function that needs to pay attention is &lt;b&gt;mainLoop&lt;/b&gt;.&lt;br /&gt;This function deals with events in the following order.&lt;br /&gt;While there is no event QUIT then read events.&lt;br /&gt;If there is event QUIT or MOUSEBUTTONDOWN then is running this:&lt;br /&gt;Event QUIT the program is quit.&lt;br /&gt;Event MOUSEBUTTONDOWN print mouse events , next is use update function with print "update function".&lt;br /&gt;Press mouse buttons: &lt;b&gt;left,right,mouse wheel ,spinning mouse wheel&lt;/b&gt;.&lt;br /&gt;&lt;code&gt;&lt;br /&gt;(1, 0, 0)&lt;br /&gt;update function&lt;br /&gt;(0, 0, 1)&lt;br /&gt;update function&lt;br /&gt;(0, 1, 0)&lt;br /&gt;update function&lt;br /&gt;(0, 0, 0)&lt;br /&gt;update function&lt;br /&gt;&lt;/code&gt;&lt;br /&gt;The code is show bellow. &lt;br /&gt;&lt;code&gt;&lt;br /&gt;import pygame&lt;br /&gt;from pygame.locals import *&lt;br /&gt;&lt;br /&gt;screen_mode = (640, 480)&lt;br /&gt;color_black = 0, 0, 0&lt;br /&gt;&lt;br /&gt;class Game:&lt;br /&gt; def __init__(self):&lt;br /&gt;  pygame.init()&lt;br /&gt;  self.screen = pygame.display.set_mode(screen_mode)&lt;br /&gt;  pygame.display.set_caption("Pygame first window")&lt;br /&gt;  self.quit = False&lt;br /&gt;  &lt;br /&gt; def update(self):&lt;br /&gt;  print "update function"&lt;br /&gt;  return&lt;br /&gt;  &lt;br /&gt; def draw(self):&lt;br /&gt;  self.screen.fill(color_black)&lt;br /&gt;  pygame.display.flip()&lt;br /&gt;  &lt;br /&gt; def mainLoop(self):&lt;br /&gt;  while not self.quit:&lt;br /&gt;   for event in pygame.event.get():&lt;br /&gt;    if event.type == pygame.QUIT:&lt;br /&gt;     self.quit = True&lt;br /&gt;    elif  event.type  == pygame.MOUSEBUTTONDOWN:&lt;br /&gt;     print pygame.mouse.get_pressed()&lt;br /&gt;     self.update()&lt;br /&gt;   self.draw()&lt;br /&gt; &lt;br /&gt;if __name__ == '__main__':&lt;br /&gt; game = Game()&lt;br /&gt; game.mainLoop()&lt;br /&gt;&lt;/code&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-6204934951505846881?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/6204934951505846881/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2011/10/pygame-test-mouse-class.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/6204934951505846881'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/6204934951505846881'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2011/10/pygame-test-mouse-class.html' title='pygame - test mouse class'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-8701399378022267896</id><published>2011-08-07T06:03:00.000-07:00</published><updated>2011-08-07T06:03:19.818-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='colors'/><category scheme='http://www.blogger.com/atom/ns#' term='script'/><title type='text'>pygame script tool - colors</title><content type='html'>&lt;p&gt;This is a simple script to allow us to see all colors used by pygame.&lt;/p&gt;&lt;pre&gt;&lt;code&gt;import pygame&lt;br /&gt;from pygame.locals import *&lt;br /&gt;from pygame.color import THECOLORS&lt;br /&gt;from time import sleep&lt;br /&gt;&lt;br /&gt;def main():&lt;br /&gt;    WINSIZE = 640,480&lt;br /&gt;    pygame.init()&lt;br /&gt;    screen = pygame.display.set_mode(WINSIZE,0,8)&lt;br /&gt;    pygame.display.set_caption('Colors in pygame!')&lt;br /&gt;&lt;br /&gt;    for i,j in THECOLORS.iteritems():&lt;br /&gt;        print i&lt;br /&gt; screen.fill(THECOLORS[i])&lt;br /&gt; font = pygame.font.Font(None, 36)&lt;br /&gt; text = font.render(i, 1,(0,0,0),(100,100,100))&lt;br /&gt; sleep(1.1)&lt;br /&gt; textpos = text.get_rect()&lt;br /&gt; textpos.centerx = screen .get_rect().centerx&lt;br /&gt; screen.blit(text, textpos)&lt;br /&gt; pygame.display.update()&lt;br /&gt;&lt;br /&gt;if __name__=="__main__":&lt;br /&gt;    main()&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;The script is very simple, just try it.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-8701399378022267896?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/8701399378022267896/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2011/08/pygame-script-tool-colors.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/8701399378022267896'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/8701399378022267896'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2011/08/pygame-script-tool-colors.html' title='pygame script tool - colors'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-4887385650655071493</id><published>2011-08-07T05:14:00.000-07:00</published><updated>2011-08-07T05:14:46.489-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='pygame.display'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>pygame.display routines</title><content type='html'>&lt;p&gt;Start pygame display:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;C:\&gt;python&lt;br /&gt;Python 2.7 (r27:82525, Jul  4 2010, 09:01:59) [MSC v.1500 32 bit (Intel)] on win&lt;br /&gt;32&lt;br /&gt;Type "help", "copyright", "credits" or "license" for more information.&lt;br /&gt;&gt;&gt;&gt; import pygame&lt;br /&gt;&gt;&gt;&gt; pygame.display.init()&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;pygame.display.Info() creates object with some data about hardware:&lt;/p&gt;&lt;pre&gt;&lt;code&gt;&gt;&gt;&gt; pygame.display.Info()&lt;br /&gt;&lt;VideoInfo(hw = 1, wm = 1,video_mem = 220616&lt;br /&gt;             blit_hw = 1, blit_hw_CC = 1, blit_hw_A = 0,&lt;br /&gt;             blit_sw = 1, blit_sw_CC = 1, blit_sw_A = 0,&lt;br /&gt;             bitsize  = 32, bytesize = 4,&lt;br /&gt;             masks =  (16711680, 65280, 255, 0),&lt;br /&gt;             shifts = (16, 8, 0, 0),&lt;br /&gt;             losses =  (0, 0, 0, 0),&lt;br /&gt;             current_w = 1024, current_h = 600&lt;br /&gt;&gt;&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Here is the interpretation of output.&lt;/p&gt;&lt;pre&gt;&lt;code&gt;&lt;b&gt;hw&lt;/b&gt;: True if the display is hardware accelerated&lt;br /&gt;&lt;b&gt;wm&lt;/b&gt;: True if windowed display modes can be used&lt;br /&gt;&lt;b&gt;video_mem&lt;/b&gt;: The megabytes of video memory on the display. This is 0 if unknown&lt;br /&gt;&lt;b&gt;bitsize&lt;/b&gt;: Number of bits used to store each pixel&lt;br /&gt;&lt;b&gt;bytesize&lt;/b&gt;: Number of bytes used to store each pixel&lt;br /&gt;&lt;b&gt;masks&lt;/b&gt;: Four values used to pack RGBA values into pixels&lt;br /&gt;&lt;b&gt;shifts&lt;/b&gt;: Four values used to pack RGBA values into pixels&lt;br /&gt;&lt;b&gt;losses&lt;/b&gt;: Four values used to pack RGBA values into pixels&lt;br /&gt;&lt;b&gt;blit_hw&lt;/b&gt;: True if hardware Surface blitting is accelerated&lt;br /&gt;&lt;b&gt;blit_hw_CC&lt;/b&gt;: True if hardware Surface colorkey blitting is accelerated&lt;br /&gt;&lt;b&gt;blit_hw_A&lt;/b&gt;: True if hardware Surface pixel alpha blitting is accelerated&lt;br /&gt;&lt;b&gt;blit_sw&lt;/b&gt;: True if software Surface blitting is accelerated&lt;br /&gt;&lt;b&gt;blit_sw_CC&lt;/b&gt;: True if software Surface colorkey blitting is accelerated&lt;br /&gt;&lt;b&gt;blit_sw_A&lt;/b&gt;: True if software Surface pixel alpha blitting is acclerated&lt;br /&gt;&lt;b&gt;current_h, current_h&lt;/b&gt;: Width and height of the current video mode, or of the&lt;br /&gt;desktop mode if called before the display.set_mode is called.&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;This will return the name of the currently running video driver.&lt;/p&gt;&lt;pre&gt;&lt;code&gt;&gt;&gt;&gt; pygame.display.get_driver()&lt;br /&gt;'directx'&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Without arguments &lt;b&gt;list_modes&lt;/b&gt; returns a list of possible dimensions&lt;/p&gt;&lt;pre&gt;&lt;code&gt;&gt;&gt;&gt; pygame.display.list_modes()&lt;br /&gt;[(1024, 600), (800, 600), (640, 480), (640, 400), (600, 1024), (600, 800), (512,&lt;br /&gt; 384), (480, 640), (400, 640), (400, 300), (384, 512), (320, 240), (320, 200)]&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;How to query a specific display mode.&lt;/p&gt;&lt;pre&gt;&lt;code&gt;&gt;&gt;&gt; full=pygame.FULLSCREEN | pygame.HWSURFACE | pygame.DOUBLEBUF&lt;br /&gt;&gt;&gt;&gt; pygame.display.mode_ok( [ 800,600 ], full, 32)&lt;br /&gt;32&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;You can create such a script to help you.&lt;/p&gt;&lt;pre&gt;&lt;code&gt;&gt;&gt;&gt; for i in pygame.display.list_modes():&lt;br /&gt;...     a=pygame.display.mode_ok(i,full,16)&lt;br /&gt;...     print "FULLSCREEN | HWSURFACE | DOUBLEBUF for "+str(i)+" x "+str(a)&lt;br /&gt;...&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (1024, 600) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (800, 600) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (640, 480) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (640, 400) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (600, 1024) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (600, 800) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (512, 384) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (480, 640) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (400, 640) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (400, 300) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (384, 512) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (320, 240) x 16&lt;br /&gt;FULLSCREEN | HWSURFACE | DOUBLEBUF for (320, 200) x 16&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;See more &lt;a href="http://pythonpro.narod.ru/docsrus/ref/pygame_display.html"&gt;here&lt;/a&gt;.&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-4887385650655071493?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/4887385650655071493/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2011/08/pygamedisplay-routines.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/4887385650655071493'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/4887385650655071493'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2011/08/pygamedisplay-routines.html' title='pygame.display routines'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-3026888327152647913</id><published>2011-03-21T05:48:00.000-07:00</published><updated>2011-03-21T05:48:00.796-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='Fedora'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='Android'/><title type='text'>Pygame and Android</title><content type='html'>&lt;b&gt;What is Android?&lt;/b&gt;&lt;br /&gt;Wikipedia say :&lt;br /&gt;&lt;i&gt;Android is an open-source software stack for mobile devices that includes an operating system, middleware and key applications.[5][6] Google Inc. purchased the initial developer of the software, Android Inc.&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Python on Android?&lt;/b&gt;&lt;br /&gt;&lt;a href="http://pygame.renpy.org/#samples"&gt;Here&lt;/a&gt; I saw:&lt;br /&gt;&lt;i&gt;The Pygame Subset for Android is a port of a subset of Pygame functionality to the Android platform. &lt;/i&gt;&lt;br /&gt;This pygame subset for Android , allow us creation of Android-specific games.&lt;br /&gt;In the chapter "samples" comes only with just one classic sliding numbers puzzle.&lt;br /&gt;The good thing is, it can run on PC.&lt;br /&gt;I installed Fedora pygame with "yum install pygame" as root.&lt;br /&gt;And I run the application example of "samples".&lt;br /&gt;Here is the result:&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://2.bp.blogspot.com/-bQOWmy1GpjA/TYdIzsdaCdI/AAAAAAAAI7o/oc1XPr58I4s/s1600/pygame-android.jpg" imageanchor="1" style=""&gt;&lt;img border="0" height="304" width="400" src="http://2.bp.blogspot.com/-bQOWmy1GpjA/TYdIzsdaCdI/AAAAAAAAI7o/oc1XPr58I4s/s400/pygame-android.jpg" /&gt;&lt;/a&gt;&lt;/div&gt;It works great on Fedora.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-3026888327152647913?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/3026888327152647913/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2011/03/pygame-and-android.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/3026888327152647913'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/3026888327152647913'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2011/03/pygame-and-android.html' title='Pygame and Android'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/-bQOWmy1GpjA/TYdIzsdaCdI/AAAAAAAAI7o/oc1XPr58I4s/s72-c/pygame-android.jpg' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-8537017490901738894</id><published>2010-10-12T08:26:00.000-07:00</published><updated>2010-10-12T08:26:32.158-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='pyopengl'/><title type='text'>PyGame - first interface - part 2</title><content type='html'>One thing necessary to create an interface and a game is using a "sprite system".&lt;br /&gt;To illustrate this, I'll show you a sequence of source code:&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;import pygame&lt;br /&gt;def must_quit():&lt;br /&gt;    event = pygame.event.poll()&lt;br /&gt;    return event.type == pygame.QUIT&lt;br /&gt;screen = pygame.display.set_mode((640, 480))&lt;br /&gt;SpriteImage = pygame.image.load('image.jpg')&lt;br /&gt;while not must_quit():&lt;br /&gt;    screen.blit(SpriteImage, (0, 0))&lt;br /&gt;    pygame.display.flip()&lt;br /&gt;&lt;/pre&gt;&lt;/code&gt;&lt;br /&gt;It sounds simple but is not.&lt;br /&gt;Why? Because when you work with multiple images when source code is more complicated.&lt;br /&gt;For this we need a system and use the "classes".&lt;br /&gt;Let's see:&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;class SpriteImage:&lt;br /&gt;    def __init__(self, image_filename):&lt;br /&gt;        self.image = pygame.image.load(image_filename)&lt;br /&gt;    def paint(self):&lt;br /&gt;        screen.blit(self.image, (0, 0))&lt;br /&gt;screen = pygame.display.set_mode((640, 480))&lt;br /&gt;sprite = SpriteImage('image.jpg')&lt;br /&gt;&lt;/pre&gt;&lt;/code&gt;&lt;br /&gt;This is more simple way to use it.&lt;br /&gt;Try learning more about pygame. &lt;br /&gt;Good luck.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-8537017490901738894?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/8537017490901738894/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2010/10/pygame-first-interface-part-2.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/8537017490901738894'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/8537017490901738894'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2010/10/pygame-first-interface-part-2.html' title='PyGame - first interface - part 2'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-6697503490693960312</id><published>2010-08-02T13:40:00.000-07:00</published><updated>2010-08-02T13:40:51.562-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='zbuffer'/><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='get_driver'/><category scheme='http://www.blogger.com/atom/ns#' term='gl_get_attribute'/><category scheme='http://www.blogger.com/atom/ns#' term='driver'/><title type='text'>Pygame info about driver and zbuffer</title><content type='html'>Sometime is very easy to see some info about pygame.&lt;br /&gt;Just use this code:&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;&gt;&gt;&gt; import pygame &lt;br /&gt;&gt;&gt;&gt; from pygame import * &lt;br /&gt;&gt;&gt;&gt; pygame.init()&lt;br /&gt;(6, 0)&lt;br /&gt;&gt;&gt;&gt; pygame.display.gl_set_attribute(GL_DEPTH_SIZE, 16)&lt;br /&gt;&gt;&gt;&gt; pygame.display.set_mode((640,480), OPENGL|DOUBLEBUF )&lt;br /&gt;&lt;Surface(640x480x32 SW)&gt;&lt;br /&gt;&gt;&gt;&gt; print "ZBUFFER is:" ,pygame.display.gl_get_attribute(GL_DEPTH_SIZE)&lt;br /&gt;ZBUFFER is: 24&lt;br /&gt;&gt;&gt;&gt; print "Driver is:", pygame.display.get_driver()&lt;br /&gt;Driver is: x11&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;NOTE: The OPENGL flags are;&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;  GL_ALPHA_SIZE, GL_DEPTH_SIZE, GL_STENCIL_SIZE, GL_ACCUM_RED_SIZE,&lt;br /&gt;  GL_ACCUM_GREEN_SIZE,  GL_ACCUM_BLUE_SIZE, GL_ACCUM_ALPHA_SIZE,&lt;br /&gt;  GL_MULTISAMPLEBUFFERS, GL_MULTISAMPLESAMPLES, GL_STEREO&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;You can see more &lt;a href="http://www.pygame.org/docs/ref/display.html"&gt;here&lt;/a&gt;.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-6697503490693960312?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/6697503490693960312/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2010/08/pygame-info-about-driver-and-zbuffer.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/6697503490693960312'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/6697503490693960312'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2010/08/pygame-info-about-driver-and-zbuffer.html' title='Pygame info about driver and zbuffer'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-203370840929262121</id><published>2010-08-02T11:31:00.000-07:00</published><updated>2010-08-02T11:31:50.609-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='binary'/><title type='text'>Binary bitmate with pygame</title><content type='html'>Is a very simple example.&lt;br /&gt;I use this code :&lt;br /&gt;&lt;pre&gt;&lt;code&gt;&lt;br /&gt;import pygame&lt;br /&gt;from pygame.locals import *&lt;br /&gt;import random&lt;br /&gt;import Numeric&lt;br /&gt;from math import *&lt;br /&gt;import random&lt;br /&gt;WIDTH = 640     #width of screen&lt;br /&gt;HEIGHT = 480    #height of screen&lt;br /&gt;def main():&lt;br /&gt;    pygame.display.init()&lt;br /&gt;    &lt;br /&gt;    screen = pygame.display.set_mode((WIDTH,HEIGHT),DOUBLEBUF,32)&lt;br /&gt;    pixels = pygame.surfarray.pixels3d(screen)&lt;br /&gt;    &lt;br /&gt;    width = len(pixels)-1&lt;br /&gt;    height = len(pixels[0])-1&lt;br /&gt;    &lt;br /&gt;    for y in xrange(height):&lt;br /&gt;        for x in xrange(width):&lt;br /&gt;   a=random.choice([0,1])&lt;br /&gt;   if a==1 : b=(255,255,255)&lt;br /&gt;   else : b=(0,0,0)&lt;br /&gt;   pixels[x,y] = (b)&lt;br /&gt;    pygame.display.update()&lt;br /&gt;    done = False&lt;br /&gt;    while not done:&lt;br /&gt;        for e in pygame.event.get():&lt;br /&gt;            if e.type == KEYDOWN:&lt;br /&gt;                done = True&lt;br /&gt;if __name__ == "__main__":&lt;br /&gt;    main()&lt;br /&gt;&lt;/code&gt;&lt;/pre&gt;The most important is this line :&lt;code&gt;&amp;nbsp;&lt;/code&gt;&lt;br /&gt;&lt;code&gt; pixels = pygame.surfarray.pixels3d(screen) &lt;/code&gt;&lt;br /&gt;I use random function to select "0" or "1" and set the colors . &lt;br /&gt;Next, I fill the screen by update the screen with new values of &lt;i&gt;pixels&lt;/i&gt; :&lt;code&gt; pygame.display.update() &lt;/code&gt;&lt;br /&gt;See bellow the result :&lt;br /&gt;&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;a href="http://3.bp.blogspot.com/_bKSzsk0V0BA/TFcO_KV9iHI/AAAAAAAADQI/tzkqK7_McU0/s1600/01.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_bKSzsk0V0BA/TFcO_KV9iHI/AAAAAAAADQI/tzkqK7_McU0/s320/01.png" /&gt;&lt;/a&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-203370840929262121?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/203370840929262121/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2010/08/binary-bitmate-with-pygame.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/203370840929262121'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/203370840929262121'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2010/08/binary-bitmate-with-pygame.html' title='Binary bitmate with pygame'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_bKSzsk0V0BA/TFcO_KV9iHI/AAAAAAAADQI/tzkqK7_McU0/s72-c/01.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-1553396845644379984</id><published>2010-06-09T12:01:00.000-07:00</published><updated>2010-10-12T08:08:16.940-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>PyGame - first interface - part 1</title><content type='html'>&lt;div class="separator" style="clear: both; text-align: center;"&gt;&lt;/div&gt;&lt;a href="http://3.bp.blogspot.com/_bKSzsk0V0BA/TA_k0Y_c1WI/AAAAAAAADLk/6g3DZuginyk/s1600/pygame_int.png" imageanchor="1" style="clear: left; float: left; margin-bottom: 1em; margin-right: 1em;"&gt;&lt;img border="0" src="http://3.bp.blogspot.com/_bKSzsk0V0BA/TA_k0Y_c1WI/AAAAAAAADLk/6g3DZuginyk/s320/pygame_int.png" /&gt;&lt;/a&gt;This is the first game based on pygame that I tried to use interface.&lt;br /&gt;As shown in the picture below, we have three areas:&lt;br /&gt;- One at the top where there will be characters&lt;br /&gt;- One at the bottom where there will be buttons&lt;br /&gt;- A mini map on bottom left&lt;br /&gt;&lt;br /&gt;I do not want to display the source code yet, since it is rough.&lt;br /&gt;I will present in future in a more understandable formula.&lt;br /&gt;&lt;div style="text-align: left;"&gt;Good luck.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-1553396845644379984?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/1553396845644379984/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2010/06/pygame-first-interface-part-1.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/1553396845644379984'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/1553396845644379984'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2010/06/pygame-first-interface-part-1.html' title='PyGame - first interface - part 1'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_bKSzsk0V0BA/TA_k0Y_c1WI/AAAAAAAADLk/6g3DZuginyk/s72-c/pygame_int.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-7970029243467516724</id><published>2010-03-11T02:37:00.000-08:00</published><updated>2010-10-12T08:09:03.757-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='pyopengl'/><title type='text'>PyGame and OpenGL - part 2</title><content type='html'>Today i will show you how we find stuff about graphic hardware.&lt;br /&gt;We will use two modules: pyopengl and pygame. &lt;br /&gt;Modules can import other modules. &lt;br /&gt;Each module is only imported once per interpreter session.&lt;br /&gt;&lt;pre&gt;&gt;&gt;&gt; import pygame &lt;br /&gt;&gt;&gt;&gt; import OpenGL &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The imports are taken in the local symbol table, so we need to do this:&lt;br /&gt;&lt;pre&gt;&gt;&gt;&gt; from pygame import *&lt;br /&gt;&gt;&gt;&gt; from OpenGL import *&lt;br /&gt;&gt;&gt;&gt; from OpenGL.GL import * &lt;br /&gt;&gt;&gt;&gt; from OpenGL.GLUT import * &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The next thing you must do is call the function glutInit. &lt;br /&gt;&lt;pre&gt;&gt;&gt;&gt; glutInit()&lt;br /&gt;['foo']&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;And now use pygame to create window.&lt;br /&gt;&lt;pre&gt;&gt;&gt;&gt; pygame.init()&lt;br /&gt;(6, 0)&lt;br /&gt;&gt;&gt;&gt; pygame.display.set_mode((10,10),OPENGL|DOUBLEBUF)&lt;br /&gt;&lt;Surface(10x10x32 SW)&gt;&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Note:If we not create the window the next commands will not work.&lt;br /&gt;About the beautiful glGetString function, we know.&lt;br /&gt;This return a string describing the current GL connection.&lt;br /&gt;You can use dir() and help() functions to see more.&lt;br /&gt;But we see bellow, some example:&lt;br /&gt;&lt;pre&gt;&gt;&gt;&gt; dir(glGetString)&lt;br /&gt;['__call__', '__class__', '__ctypes_from_outparam__', '__delattr__', '__dict__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__module__', '__name__', '__new__', '__nonzero__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__setstate__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', '_b_base_', '_b_needsfree_', '_flags_', '_objects', '_restype_', 'argtypes', 'errcheck', 'restype']&lt;br /&gt;&gt;&gt;&gt; dir(glGetString())&lt;br /&gt;['__class__', '__delattr__', '__doc__', '__format__', '__getattribute__', '__hash__', '__init__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__']&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Now, the parameters of this function are :&lt;br /&gt;&lt;pre&gt;glGetString(GL_VERSION)&lt;br /&gt;glGetString(GL_VENDOR)&lt;br /&gt;glGetString(GL_RENDERER)&lt;br /&gt;glGetStringi(GL_EXTENSIONS, i) &lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Bellow, we see how we use these parameters:&lt;br /&gt;&lt;pre&gt;&gt;&gt;&gt; glGetString(GL_VERSION) &lt;br /&gt;'2.1.2 NVIDIA 173.14.22'&lt;br /&gt;&gt;&gt;&gt; glGetString(GL_VENDOR) &lt;br /&gt;'NVIDIA Corporation'&lt;br /&gt;&gt;&gt;&gt; glGetString(GL_RENDERER) &lt;br /&gt;'GeForce FX 5200/AGP/SSE/3DNOW!'&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Because the GL_EXTENSIONS is a space-separated list of supported extensions to GL, we can use these commands:&lt;br /&gt;&lt;pre&gt;&gt;&gt;&gt; print glGetString(GL_EXTENSIONS)&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;Or you can format this result, see bellow&lt;br /&gt;&lt;pre&gt;&gt;&gt;&gt; print glGetString(GL_EXTENSIONS).split()&lt;br /&gt;['GL_ARB_depth_texture', 'GL_ARB_fragment_program', ...&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;This is all.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-7970029243467516724?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/7970029243467516724/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2010/03/pygame-and-opengl-part-2.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/7970029243467516724'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/7970029243467516724'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2010/03/pygame-and-opengl-part-2.html' title='PyGame and OpenGL - part 2'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-8490862587562431056</id><published>2009-03-28T09:06:00.000-07:00</published><updated>2010-03-11T02:37:10.802-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><category scheme='http://www.blogger.com/atom/ns#' term='pyopengl'/><title type='text'>PyGame and OpenGL - part 1</title><content type='html'>OpenGL is an application programming interface. &lt;br /&gt;The PyOpenGL modules has many functions  and several matrices for working with 3D graphics.&lt;br /&gt;This is one example how to use PyOpenGL.&lt;br /&gt;I've successfully tested it under Linux.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;&lt;br /&gt;import os&lt;br /&gt;import sys&lt;br /&gt;import pygame&lt;br /&gt;from pygame import *&lt;br /&gt;from OpenGL.GL import *&lt;br /&gt;from OpenGL.GLU import *&lt;br /&gt;from OpenGL.GLUT import *&lt;br /&gt;&lt;br /&gt;def init_display(w, h):&lt;br /&gt; pygame.display.set_mode( (w,h) , pygame.OPENGL | pygame.DOUBLEBUF )&lt;br /&gt; glViewport(0, 0, w, h)&lt;br /&gt; glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT)&lt;br /&gt;&lt;br /&gt; glEnable(GL_LIGHTING)&lt;br /&gt;&lt;br /&gt; glEnable(GL_LIGHT0)        &lt;br /&gt;&lt;br /&gt; glLight(GL_LIGHT0, GL_POSITION,  (0, 0, 1, 0))    &lt;br /&gt; glMatrixMode(GL_PROJECTION);&lt;br /&gt;&lt;br /&gt; glLoadIdentity();&lt;br /&gt;&lt;br /&gt; gluOrtho2D(-1, 1, -1, 1);&lt;br /&gt;&lt;br /&gt; glMatrixMode(GL_MODELVIEW);&lt;br /&gt;&lt;br /&gt;def draw():&lt;br /&gt; glClearColor(0.0, 0.0, 0.0, 1.0)&lt;br /&gt; glClear(GL_COLOR_BUFFER_BIT|GL_DEPTH_BUFFER_BIT)&lt;br /&gt; glColor(0,1,0)&lt;br /&gt; glLight(GL_LIGHT0, GL_POSITION,  (1, 1, 1, 0))&lt;br /&gt; glMaterial(GL_FRONT, GL_AMBIENT, (0.1, 0.1, 0.1, 1.0))    &lt;br /&gt;&lt;br /&gt; glMaterial(GL_FRONT, GL_DIFFUSE, (1.0, 1.0, 1.0, 1.0))&lt;br /&gt; glutSolidTorus(0.1,0.5,24,24)&lt;br /&gt; pygame.display.flip()&lt;br /&gt;&lt;br /&gt;def main():&lt;br /&gt; pygame.init()&lt;br /&gt; glutInit()&lt;br /&gt; init_display(800, 600)&lt;br /&gt; while 1:&lt;br /&gt;  event=pygame.event.poll ()&lt;br /&gt;  draw()&lt;br /&gt;  if event.type is KEYDOWN:&lt;br /&gt;   if event.key is K_ESCAPE:&lt;br /&gt;    sys.exit(0)&lt;br /&gt;main()&lt;br /&gt;&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-8490862587562431056?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/8490862587562431056/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2009/03/pygame-and-opengl.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/8490862587562431056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/8490862587562431056'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2009/03/pygame-and-opengl.html' title='PyGame and OpenGL - part 1'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-3547962617188665463</id><published>2009-02-27T05:30:00.000-08:00</published><updated>2009-02-27T05:53:38.086-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='time'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>How i used time on pygame.</title><content type='html'>This is simple example. &lt;br /&gt;The program show some random colors.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;import time&lt;br /&gt;import random&lt;br /&gt;import pygame&lt;br /&gt;&lt;br /&gt;pygame.init()&lt;br /&gt;&lt;br /&gt;def main():&lt;br /&gt;    for i in range(60):&lt;br /&gt;        screen = pygame.display.set_mode((800,600))&lt;br /&gt;        pygame.display.set_caption("Some random colors!")&lt;br /&gt;&lt;br /&gt;        bg = pygame.Surface(screen.get_size())&lt;br /&gt;        bg = bg.convert()&lt;br /&gt;        bg.fill((random.randint(1,255),random.randint(1,255),random.randint(1,255)))&lt;br /&gt;        clock = pygame.time.Clock()&lt;br /&gt;        Go = True&lt;br /&gt;        while Go:&lt;br /&gt;            clock.tick(2)&lt;br /&gt;            screen.blit(bg,(0,0))&lt;br /&gt;            pygame.display.flip()&lt;br /&gt;            time.sleep(6)&lt;br /&gt;            Go = False&lt;br /&gt;&lt;br /&gt;if __name__ == "__main__":&lt;br /&gt;    main()&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;As you see , try to create one loop:&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;        clock = pygame.time.Clock()&lt;br /&gt;        Go = True&lt;br /&gt;        while Go:&lt;br /&gt;            clock.tick(2)&lt;br /&gt;            ...  &lt;br /&gt;            &lt;span style="font-weight:bold;"&gt;some code line &lt;/span&gt;&lt;br /&gt;            ...&lt;br /&gt;            time.sleep(6)&lt;br /&gt;            Go = False&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-3547962617188665463?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/3547962617188665463/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2009/02/how-i-used-time-on-pygame.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/3547962617188665463'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/3547962617188665463'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2009/02/how-i-used-time-on-pygame.html' title='How i used time on pygame.'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-8975650178924399713</id><published>2009-02-18T05:43:00.000-08:00</published><updated>2009-09-12T03:19:13.601-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>Sounds in pygame.</title><content type='html'>First of all you need two files.&lt;br /&gt;This is "load.py".&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;import os&lt;br /&gt;import sys&lt;br /&gt;import pygame&lt;br /&gt;from pygame import mixer&lt;br /&gt;pygame.mixer.init() &lt;br /&gt;def snd(nume):&lt;br /&gt;    numeintreg = os.path.join("sunete",nume)&lt;br /&gt;    sound = pygame.mixer.Sound(numeintreg)&lt;br /&gt;    return sound&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;This is "main.py".&lt;br /&gt;The sounds "o.wav" can be any sound file.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;import os&lt;br /&gt;import sys&lt;br /&gt;import pygame&lt;br /&gt;from pygame import *&lt;br /&gt;import load&lt;br /&gt;def main():&lt;br /&gt;     ocean=&lt;span style="font-weight:bold;"&gt;load.snd&lt;/span&gt;("o.wav")&lt;br /&gt;     ocean.play()&lt;br /&gt;main()&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-8975650178924399713?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/8975650178924399713/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2009/02/sounds-in-pygame.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/8975650178924399713'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/8975650178924399713'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2009/02/sounds-in-pygame.html' title='Sounds in pygame.'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-2891078038057161241</id><published>2009-02-18T05:27:00.000-08:00</published><updated>2009-02-18T05:37:42.546-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>Showing pictures on pygame</title><content type='html'>First of all you need two files.&lt;br /&gt;This is "load.py"&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;import os&lt;br /&gt;import sys&lt;br /&gt;import pygame&lt;br /&gt;def img(nume):&lt;br /&gt;    numeintreg = os.path.join("date",nume)&lt;br /&gt;    image = pygame.image.load(numeintreg)&lt;br /&gt;    image = image.convert()&lt;br /&gt;    return image&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;This is "main.py".&lt;br /&gt;The image "bk2.bmp" can be any image.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;import os&lt;br /&gt;import sys&lt;br /&gt;import pygame&lt;br /&gt;import load&lt;br /&gt;def main():&lt;br /&gt;    pygame.init()&lt;br /&gt;    ecran = pygame.display.set_mode((640, 480))&lt;br /&gt;    fundal = &lt;span style="font-weight:bold;"&gt;load.img&lt;/span&gt;('bk2.bmp')&lt;br /&gt;    ecran.blit(fundal, (0, 0))&lt;br /&gt;    pygame.display.flip()&lt;br /&gt;main()&lt;br /&gt;&lt;/pre&gt;&lt;br /&gt;The image will be displayed and removed immediately.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-2891078038057161241?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/2891078038057161241/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2009/02/showing-pictures-on-pygame.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/2891078038057161241'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/2891078038057161241'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2009/02/showing-pictures-on-pygame.html' title='Showing pictures on pygame'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-1712531023588732171</id><published>2009-02-17T05:58:00.000-08:00</published><updated>2009-02-18T05:47:22.127-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>Keyboard on pygame</title><content type='html'>This is a short example of how to use the keyboard in pygame.&lt;br /&gt;&lt;pre&gt;&lt;br /&gt;import os&lt;br /&gt;import sys&lt;br /&gt;import pygame&lt;br /&gt;from pygame import *&lt;br /&gt;def main():&lt;br /&gt;   pygame.init()&lt;br /&gt;   ecran = pygame.display.set_mode((640, 480))&lt;br /&gt;   ruleaza= True&lt;br /&gt;   action = "Help!"&lt;br /&gt;   while ruleaza is True:&lt;br /&gt;       for event in pygame.event.get():&lt;br /&gt;           if event.type == QUIT:&lt;br /&gt;               ruleaza == False&lt;br /&gt;           elif event.type == KEYDOWN:&lt;br /&gt;               if event.key == K_ESCAPE:&lt;br /&gt;                   ruleaza = False&lt;br /&gt;               elif event.key == K_LEFT:&lt;br /&gt;                   action="L"&lt;br /&gt;               elif event.key == K_RIGHT:&lt;br /&gt;                   action="R"&lt;br /&gt;           print action&lt;br /&gt;main()&lt;br /&gt;&lt;/pre&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-1712531023588732171?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/1712531023588732171/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2009/02/keyboard-on-pygame.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/1712531023588732171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/1712531023588732171'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2009/02/keyboard-on-pygame.html' title='Keyboard on pygame'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-6747657806842556578.post-5200374459056531631</id><published>2009-02-09T08:39:00.000-08:00</published><updated>2009-02-23T23:29:52.920-08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='pygame'/><category scheme='http://www.blogger.com/atom/ns#' term='python'/><title type='text'>About PYGAME</title><content type='html'>&lt;p&gt; &lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;Yet another powerful open source 2D game engine.Pygame is a set of modules allows you to create fully featured games and multimedia programs in the python language. Pygame is portable and runs on every platform and operating system.&lt;br /&gt;&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;blockquote&gt;Pygame is free. Released under the LGPL licence, you can create open source, free, freeware, shareware, and commercial games with it. See the licence for full details.&lt;/blockquote&gt;&lt;p&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6747657806842556578-5200374459056531631?l=pygame-catalin.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://pygame-catalin.blogspot.com/feeds/5200374459056531631/comments/default' title='Postare comentarii'/><link rel='replies' type='text/html' href='http://pygame-catalin.blogspot.com/2009/02/about-pygame.html#comment-form' title='0 comentarii'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/5200374459056531631'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/6747657806842556578/posts/default/5200374459056531631'/><link rel='alternate' type='text/html' href='http://pygame-catalin.blogspot.com/2009/02/about-pygame.html' title='About PYGAME'/><author><name>Catalin Festila</name><uri>http://www.blogger.com/profile/10800322932529698711</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='25' height='32' src='http://2.bp.blogspot.com/_bKSzsk0V0BA/S0M6nv_iqgI/AAAAAAAADGE/E_vmGFgXuSU/S220/cata.jpeg'/></author><thr:total>0</thr:total></entry></feed>
