SDL Game Development-第2章-4.使用SDL_image库操作更多格式的图片

原作中对图片的翻转Flip略,只是将纹理复制函数换成SDL_RenderCopyEx()即可。

一、下载并设置SDL_image
SDL_image的下载地址: http://www.libsdl.org/projects/SDL_image/
将.h和lib中的内容复制到Code::Blocks指向的默认路径中,或显式指向也行。

为Linker指明参数,如图:

二、使用SDL_image
1.将素材包中的animate.png复制到assets文件夹中。png格式的图片有alpha通道,可以产生透明效果
2.修改背景为深蓝色:0x0, 0x0, 0x66, 0xFF
3.添加包含语句
//Game.cpp中
#include <SDL_image.h>

4.载入图片的代码修改为:
SDL_Surface* pTempSurface = IMG_Load("assets/animate.png");

测试运行:深蓝的背景上,黑底的角色在跑动。
注:素材中的png图片以黑色为底,如果用PS把黑色处理掉,就可以透明了。这在素材包中是另一个图片,叫animate-alpha.png

5.修改载入的图片为:
SDL_Surface* pTempSurface = IMG_Load("assets/animate-alpha.png");

运行测试:

注意输出中:

libpng warning: iCCP: known incorrect sRGB profile

这个警告讯息怎么也去不掉,不知哪位高手指点,谢。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值