要山寨flappyBird,首先得要有资源!!!教你如何将这死鸟的资源给拆出来!
来源:互联网 发布:mac thunder 删不掉 编辑:程序博客网 时间:2024/05/11 15:18
哥最近手残,游戏打多了,代码敲多了之后,我发现我的手指的神经有点不听使唤,因此flappybird我只能拿到个位数的分数(当然从来没看过什么高分教程或者使用什么作弊方法)
但是我还是怒了,我打算弄一个水管能让我自动钻过去的flappybird!
我在网上找了一个web版的鸟的资源,那过来之后越发觉得这资源丑陋,而且极为不全,背景都没有,我又怒了
想想,最原生态的资源就是游戏包里面的资源,所以,我打算从里面把他拆出来!
1.从像素鸟的apk里面找到那张通过texturePacker之类的工具拼过的图片,对,没错,拿个解压软件打开apk,找呀找!就是assets\gfx\atlas.png
2.这是一张拼过的图片,要知道这张图片是怎么拼出来的,总得找到配置文件把,继续找,就是res/raw/atlas.txt打开这文件,你会发现这么一下东西
要怎么解读这些数字呢?且听如下分解
首先,每一行代表一个图片资源,第一个不用猜都知道,是文件名
第二个和第三个分别是图片的宽度和高度,单位是像素
第四个和第五个分别是图片左上角的定点的x坐标和y坐标,这是他们的坐标占整张图片的比例(换句话来说就是当整张图片长宽为1时这张图片左上角顶点的坐标)
第六个和第七个分别是图片宽度和高度所占总长度和总宽度的比例
3.了解了以上信息之后的程序员都会不由得微微一笑,看老子不把你给切出来!你要用ps慢慢切,我不拦着你,但是让电脑自动给我切好会带来更爽的赶脚!
切图,我用python + opencv(这玩意儿我在搞我树莓派的时候也在window上面搭好了环境,所以,毫不犹豫),要找怎么配环境呢就搜一下“python opencv 环境搭建”
代码么,我加上注释就贴在下面了
import cv2.cv as cvimport osimg = cv.LoadImage("e:/output/atlas.png", -1) #读取原图(这就是那张拼过的图片,我改了一下名字)mask = cv.LoadImage("e:/output/atlas.png", 0) #读取maskwidth, height = cv.GetSize(img)img2 = cv.CreateImage((width, height), 8, 4) #创建一张背景透明的图片cv.Copy(img, img2, mask) #copy过去file = open("e:/output/atlas.txt") #这是输入的文件for line in file: strs = line.split(" ") fileName = strs[0] imgWidth = int(strs[1]) imgHeight = int(strs[2]) imgX = float(strs[3])*width imgY = float(strs[4])*height cv.SetImageROI(img2, (int(imgX), int(imgY), imgWidth, imgHeight)); #设置感兴趣的区域 cv.SaveImage("e:/output/" + fileName + ".png", img2) #根据读取到的文件名保存到这个路径下
4. 抄完哥的代码之后直接就run一把,你会惊奇的发现你的输出文件夹里面全都是这鸟游戏的素材了,哈哈,获取素材大功告成,下面就是将图片全贴到哥的小游戏里了
5. 对于经过上面步骤不能拿到素材的童鞋们,能获取到素材的哥们给他们默哀一分钟吧!
6. 再来一个图,让你们羡慕一下
- 要山寨flappyBird,首先得要有资源!!!教你如何将这死鸟的资源给拆出来!
- 你要整合资源,首先你得是一个有资源的人
- 凡要成为高手的人,首先要有骨气
- 如何给MDI的Mainframe替换菜单资源
- 《代码之髓》读书笔记(一)——要确认理解正确,首先得表达出来
- VB中如何把资源器的文件释放出来,并且允许。。如把1.bat载入资源编辑器
- 教你如何下载百度已失效的资源(如:对不起你来晚了)
- 做设计得收藏的100个网址 对你绝对有用的好资源!
- 求助AS如何解决图片资源太大加载不出来的问题
- 如何让浏览器调用你的程序来打开资源
- 如何保护你的Flash源代码与资源
- 让你了解HTML及资源是如何加载的
- 如何让浏览器调用你的程序来打开资源
- 你如何对网站的文件和资源进行优化?
- 你如何对网站的文件和资源进行优化?
- 你如何对网站的文件和资源进行优化?
- 你如何对网站的文件和资源进行优化?
- 你如何对网站的文件和资源进行优化?
- hadoop1.2.1安装配置
- 图说Java —— 理解Java机制最受欢迎的8幅图
- uva 12235 - Help Bubu(dp)
- SQLite入门与分析(四)---Page Cache之事务处理(2)
- Oracle执行分析详细
- 要山寨flappyBird,首先得要有资源!!!教你如何将这死鸟的资源给拆出来!
- 教你用python写游戏之flappy bird(1)
- 关于编程学习的个人警醒
- 通过SlidingMenu Viewpager实现当前最流行的侧滑[二]
- OpenCV中Hough直线检测和圆检测
- PsSetCreateProcessNotifyRoutine 中文翻译
- 软件推荐
- Apache+Tomcat集群配置 采用mod_jk方法
- gvim 的启动配置文件 .vimrc