- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
龙图教育cocos2d之pvz整理
Cocos2d之pvz整理
内容介绍:
游戏最原始的开发框架。
主要会介绍
SurfaceView+SurfaceHolder.CalllBack+Thread
Canvas+Paint
业务处理
Cocos2d-android游戏引擎
什么是游戏引擎
为什么选择Cocos2d
Cocos2d架构
Cocos2d基础
如何使用Cocos2d
CCDirector
图形引擎Graphic
CCNode
CCScene
CCLayer
CCSprite
CCLable
CCMenu
CCAction
声音引擎CocosDenshion
Tiled工具使用
粒子系统
游戏开发一般流程
植物大战僵尸
大体功能
连接服务器失败处理方式。(弹出对话框,引擎线程和UI线程交互)
根据等级选择植物,白天或黑夜进入游戏界面
可以种植向日葵收集阳光
可以种植植物攻击僵尸
僵尸可以吃掉植物和向日葵
架构
MVC
五个界面
登陆界面LoginScene
Home界面HomeScene
帮助界面HelpPop
选择界面SelectScene
游戏界面GameScene
游戏开发框架原理
在Activity当中加载一个View,该View继承了SurfaceView并实现了SurfaceHolder.CallBack和Runnable接口。之后在线程中实现界面的不断刷新,在每次刷新当中通过SurfaceHolder取得Canvas对象,整个界面由Canvas绘制。
基础点:
①游戏开发框架 原理
SurfaceView+SurfaceHolder.CallBack和Runnable
②SurfaceHolder sfh = null;
sfh = this.getHolder();//拿到SurfaceView的控制者,SurfaceView在SurfaceHolder内,但是两者不直接打交道,而是通过lockCanvas和unlockCanvasAndPost。
sfh.addCallback(this);
③Canvas画布
canvas = sfh.lockCanvas();//拿到画布
draw…
sfh.unlockCanvasAndPost(canvas);
canvas.save();//保存之前的画布,继续往下绘制
canvas.restore();//还原到上一次画布保存的状态
介绍:
Canvas():创建一个空的画布,可以使用setBitmap()方法来设置绘制的具体画布;
Canvas(Bitmap bitmap):以bitmap对象创建一个画布,则将内容都绘制在bitmap上,bitmap不得为null;
Canvas(GL gl):在绘制3D效果时使用,与OpenGL有关;
drawColor:设置画布的背景色;
setBitmap:设置具体的画布;
clipRect:设置显示区域,即设置裁剪区;
isOpaque:检测是否支持透明;
rotate:旋转画布;
canvas.drawRect(RectF,Paint)方法用于画矩形,第一个参数为图形显示区域;第二个参数为画笔。
canvas.drawRoundRect(RectF, float, float, Paint) 方法用于画圆角矩形,第一个参数为图形显示区域,第二个参数和第三个参数分别是水平圆角半径和垂直圆角半径。
canvas.drawLine(startX, startY, stopX, stopY, paint):前四个参数的类型均为float,最后一个参数类型为Paint。表示用画笔paint从点(startX,startY)到点(stopX,stopY)画一条直线;
canvas.drawArc(oval, startAngle, sweepAngle, useCenter, paint):第一个参数oval为RectF类型,即圆弧显示区域,startAngle和sweepAngle均为float类型,分别表示圆弧起始角度和圆弧度数,3点钟方向为0度,useCenter设置是否显示圆心,boolean类型,paint为画笔;
canvas.drawCircle(float,float, float, Paint)方法用于画圆,前两个参数代表圆心坐标,第三个参数为圆半径,第四个参数是画笔;
④Paint画笔。在自定义绘图当中,可以通过其来改变该View的颜色,字体大小,样式,透明度等。
paint.setAntiAlias(true);//设置抗锯齿
⑤动手练习
public void drawAndroid() {
//将画笔的颜色设置为绿色
paint.setColor(Color.GREEN);
//绘制两根天线
canvas.draw
您可能关注的文档
- 重构金融监管体系理念功能和模式选择.doc
- 金山小学篮球比赛活动方案计划总结.doc
- 金沙县学校食堂食品安全管理17个制度汇编.doc
- 金版教程2017高考历史一轮复习第5单元复杂多样的当代世界第10讲二战后世界政治格局的变化课时强化练.doc
- 金牌学案20162017学年高考语文二轮复习专题七写作训练临考突破重实效19四方案解决材料作文审题立意学案.doc
- 金版教程2017高考历史一轮复习第八单元第19讲近代中国经济结构的变动与资本主义的曲折发展限时特训.doc
- 金融风险集中问题汇报.doc
- 金融法银行业务管理法律制度.doc
- 金桥停车场高支模排架施工评审方案2016530.doc
- 钢筋工班班组活动.doc
文档评论(0)