RBG图像,游戏中往往使用RBGA图像,A即Alpha,也就是表示透明度的部分(0~255),0代表完全透明。可以使用多种软件创建含有Alpha通道的图片
存储图像的方式(图片格式),JPEG、PNG等等,python大多能支持。
使用surface对象
对于Pygame,加载图片就是python.image.load,给定一个文件名,就还你一个surface对象。事实上屏幕也是一个surface,pygame.display.set_mode即返回了一个屏幕surface对象。
创建Surface对象的方法:1、就是pygame.image.load,这个对象有与图像相同的尺寸和颜色;2、就是指定尺寸创建一个空的surface,
blank_surface == pygame.Surface((256,256),flags,depth)
其中第一个参数是对象的像素256*256;
第二个参数flags可以设定为HWSURFACE – 类似于前面讲的,更快!不过最好不设定,Pygmae可以自己优化。或者SRCALPHA – 有Alpha通道的surface,如果你需要透明,就要这个选项。这个选项的使用需要第三个参数为32。
第三个参数是depth,pygame.display.set_mode中的一样,你可以不设定,Pygame会自动设的和display一致。不过如果你使用了SRCALPHA,还是设为32吧:
bland_alpha_surface = pygame.Surface((256, 256), flags=SRCALPHA, depth=32)
转换Surfaces
最开始的hello world程序中有两句转换背景图和鼠标图的程序,包括第一个普通的转换convert(),等价于display;第二个是带有alpha通道的转换convert_alpha()
矩形对象(Rectangle Objects)
一般来说在制定一个区域的时候,