继续搞起
文字图形都ok
这该来重点啦..
加载图片
pygame 加载图片比交简单
话不多说
直接上代码
这里在程序住循环中
通过pygame 的image.load 方法加载 图片为对象
通过transform 进行缩放 调整大小
最后进行位置绘制
效果如下
下面是一些对于图片的其他操作做拓展
创建Surface对象
>>>a = pygame.Surface((256,256))
1
这个Surface对象是全黑的。除了大小外,Surface函数还有flags和depth两个参数。
alpha_surface = pygame.Surface((256,256), flags=SRCALPHA, depth=32)
1
转换Surfaces
convert(): 当一个surface多次使用blit时,最好使用convert。转换后的surface没有alpha。
convert_alpha(): change the pixel format of an image including per pixel alphas.
矩形对象(Rectangle Objects)
pygame中有Rect类,用来存储和处理矩形对象(包含在pygame.locals)中。
Rect(left, top, width, height)
Rect((left, top), (width, height))
有了Rect对象之后,可以对其做很多操作,例如调整大小、位置,判断一个点是否在其中等。
剪裁(Clipping)
surface中有裁剪区域(clip area),
是一个矩形,定义了哪部分会被绘制,
即若定义了这个区域,只有这个区域内的像素会被修改。
set_clip(screen_rect=None): 设定区域,当参数为None时,重置。一个surface对象默认的剪裁区域为这个surface。
get_clip() : 得到剪裁区域,返回一个Rect对象。
当然让这一个图片显示到屏幕上居然这么多行代码
老套路我们自定义一个方法搞定
主程序调用
这样就方便多了
不过我们的图片只是图片还不能动
那我们继续让他动起来
所谓动画的实现方式
就是时时的改变
这里实现让小飞机往下飞也就是y坐标增大
效果.. 没弄动图 看不出来...
红色箭头指示的飞机是从上面移动下来的
若想改变飞机的移动速度
可以调整累加值
再设置坐标前与steep(速度)做运算即可
效果图就不上了不是动图看不出来
领取专属 10元无门槛券
私享最新 技术干货