位置: 编程技术 - 正文

[置顶] CocosBuilder的使用([置顶]bilinovel)

编辑:rootadmin
CocosBuilder部分1)创建工程

推荐整理分享[置顶] CocosBuilder的使用([置顶]bilinovel),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:[置顶] 此外,车牌号:458143(懂得都懂[吃瓜]),[置顶] 此外,车牌号:458143(懂得都懂[吃瓜]),[置顶] chill your life,[置顶] chill your life,[置顶] 此外,车牌号:454118(懂得都懂[doge]),[置顶] chill your life,[置顶] cmbwfh,[置顶] clauvio,Twitter小老鼠,内容如对您有帮助,希望把文章链接给更多的朋友!

首先创建Cocos2dx工程“ShootTheApple”,然后在其Resources目录下新建ccb,并在ccb中创建CocosBuilder工程。目录结构如下图:

CocosBuilder工程会产生3类文件,后缀分别为ccbproj, ccb, ccbi(其中前两个文件使工程文件--ccb.ccbproj, apple.ccb。 ccbi文件,是导出的文件,被cocos2dx程序使用,如上图的apple.ccbi);

2)配置cocosBuilder属性

点击菜单File/Publish Setting…, 弹出如下对话框:按上图进行配置,其中最为重要的是选择导出ccbi的目录,这里将设置为cocos2dx的Resources目录,就是cocosBuilder的上级目录。然后勾选最后的“Flatten paths when publishing”和“Only publish ccb-files”选项。观察ccb/Resources目录,其中有个ccbResources文件,这里面放ccb使用的图片等资源。在ccb发布成ccbi后,我们还需要把此ccbResources拷贝到cocos2dx的resources目录下,这样ccbi才可以正确的读取。3)创建ccb文件。菜单File/New/New File…, 弹出如下的对话框:这里可以创建4类Object,CCLayer, CCNode, CCParticleSystemQuad和CCSprite;这里还可以选择游戏运行的device的类型,保持默认,点击create后,给定名称(这里为MainScene.ccb),选择ccb/Resources为其根目录,就生成了一个ccb文件。操作界面如下图:点击界面下方时间轴中的物体,其构成了树状结构(这个正是cocos2dx中对CCNode的构成结构);选择其中一项,比如CCLayer,其右方将显示其相关属性。比如Position, ContentSize,AnchorPoint等信息。当cocosBuilder生成ccbi的时候,将导出这些信息(文件为二进制形式,其中还包含动画信息和回调函数的信息;动画信息在操作界面的下方定义)。cocos2dx在载入这个ccbi文件的时候,将调用相关解析器(CCBReader)来解析这个文件,生成相应的cocos2dx对象,然后呈现出来,并播放相应的动画。4)编辑ccb文件--按钮在cocosBuilder的编辑,都是“可见即可得”的。cocosBuilder兼容SpriteSheet(可以使用TexturePacker进行编辑),编辑的时候,直接把图片拖动到模拟器就可以了。创建按钮有两种方式(和cocos2dx中一样),这里只介绍使用Menu的方式。先创建Menu,点击工具栏中的Menu按钮(左边),如下图:在当前的Menu中,然后点击Menu按钮的右边5下,就创建了5个MenuItem。类的层次结构,可以在时间轴边上看到。如下图:创建的按钮如下图:这时需要在右侧的设置属性,如下图:设置事件响应函数的名称(如btnPlay,target为Document root);并设置CCMenuItem在三种不同情况下的呈现的图片。完成的按钮如下:配置完5个按钮,调整位置和缩放等,如下:4)编辑ccb文件--动画这里将运用cocosBuilder来制作背景中的一个闪烁的星星,具体使用的是Rotate和Scale动画。将一颗星星拖入到模拟器中,并移动到右上角,如下图:选中这个物体,先缩放其为0.1f; 然后在事件轴中的0s和2s处,分别按快捷键v, r和s,创建Visible,Rotate和Scale的关键帧(对应菜单Animations/Insert Keyframe中的相关选项),在1s处,创建scale关键帧;如下图:点击Scale在1s处的关键帧,做适当的放大和旋转操作。点击播放按钮,或者手工拖动,可以参看效果。目前动画只会播放一次,在cocosBuilder中设置循环播放,很简单,在时间轴的下方选择chain TimeLine为自身就可以了,如下图:这个原理就是,当播放完当前的TimeLime之后,接着再播放此timeline,这样就循环起来的了。关于timeLine,还可以设置其播放时间(默认为s),点击时间轴上方的时间:在弹出的对话框中设置就可以了:还可以创建多个时间轴,按照上面的循环动画的方式,也可以串起来做复杂的动画。这些动画也可以在cocos2dx代码中被调用。十分的灵活方便。代码的集成当cocosBuilder完成对ccb的编辑之后,点击菜单File/Publish, 导出ccb成为ccbi文件到cocos2dx的Resources文件目录下了(请参考上面的“配置cocosBuilder属性”)。然后在xcode中把ccbResources目录和相应的ccbi文件加入到工程中,这样就可以进行代码编辑了。代码的集成,其实就是解析ccbi文件的过程,cocos2dx中针对cocosBuilder有相应的解析器CCBReader(位于extensions/CCBreader目录下,CCBReader和CocosBuilder的版本有关系,请参考文末的“版本说明”);由于C&#;&#;没有像Object-C的动态特性,所以集成CCBReader的代码并没有像cocos2d中那么简单。不过理解其原理,理清思路后,其实也不是件困难的事情。所以,先讲CCBReader的原理。ccbi文件其实对应了4类cocos2dx对象,一个ccbi文件中,包含了此对象的一些属性信息。CCBReader读取了这个ccbi文件,就清楚了这个对象的一切。这个时候,要把这些信息和我们的代码联系起来,就需要用CCNodeLoaderLibrary来联系自定义的类,接着把这个信息抛给CCBReader,由其进行联系。具体代码如下:要理解上面的代码,还需补充一点上面没有提示的信息。默认情况下,ccbi对应了cocos2dx的4个类型之一,如果要对应我们自定义的类型(从4个类型中派生出来的),我们要在cocosBuilder中的根对象命名,如下图:选择CCLayer,在右侧的Custom class中填写Intro。(如果是Custom class显示为 JS Controller,点击菜单Document/JavaScipt Controlled, 去掉其选项)。这个就可以理解上面的代码了:[置顶]
        CocosBuilder的使用([置顶]bilinovel)

IntroLoader对象负责加载相关的类Intro。完整代码如下:

CCReader进行ccbi和自定义类的联系的过程如下,CCBReader一边解析ccbi文件,一边调用自定义类的onResolveCCBCCMenuItemSelector等方法;在这些回调方法中,可以进行相关的绑定工作,如对象绑定,CCMenuItem selector的绑定等。更多的绑定细则,请参考cocosBuilder中的帮助。

如果用Object-C就方便多了,由于其动态性,可以根据名称自动反射,而C&#;&#;则需要手工绑定,繁琐些,不过为了cocosBuilder带来的方便,这个也&#;得。下一篇文章介绍怎么使用CocosBuilder加快Box2d的开发版本说明

在这个demo中,cocosBuilder的版本为Version 3 alpha3,配套的cocos2dx版本为cocos2d-2.1rc0-x-2.1.2;

cocos2dx quick lua 学习笔记1 framework下ui.lua文件1.定义ui表结构localui={}1)定义一些·全局变量ui.DEFAULT_TTF_FONT=Arailui.DEFAULT_TTF_FONT_SIZE=)一些可用控件(1)ui.newEditBox(params)参数:image(

CocoStudio textfiled 文本点击区域按背景拉伸 我用的是cocos2dx2.2版本,textfield的settouchsize只是一个样式,点击输入框的时候只有点击到文字才能进行输入,当文本长度很短视,体验感差的不行直接说

cocos2dx android横屏竖屏设置 AndroidManifest.xml文件中,screenOrientation=landscape为横屏,screenOrientation=portrait为竖屏

标签: [置顶]bilinovel

本文链接地址:https://www.jiuchutong.com/biancheng/372638.html 转载请保留说明!

上一篇:Bullet(Cocos2dx)之内存泄露检测

下一篇:cocos2dx quick lua 学习笔记1

  • 实收资本多长时间缴纳完?
  • 网银发工资怎么增员的
  • 没有工会的企业怎么发福利
  • 预计所有者权益怎么计算
  • 投资收益和公允价值变动的区别
  • 固定资产处置后账务处理
  • 土地增值税什么时候开始征收的
  • 贷款应计利息会计分录
  • 营业外支出企业所得税怎么填
  • 增值税销项税额在借方还是贷方
  • 企业取得财产转让收入确认时间
  • 工程前期土地平整的会计分录怎么写?
  • 预收房款缴所得税会计分录怎么写?
  • 银行异地汇款抽奖需要扣缴个人所得税吗?
  • 网上订酒店怎么预定
  • 一般纳税人能用小企业会计准则吗
  • 计提缴纳增值税怎么做账
  • windows defender隔离区
  • 笔记本闪屏正常吗
  • 增值税即征即退2023政策
  • 无法打开exe程序
  • 企业转让要收多少费用
  • 溢价对外投资账务处理
  • 如何防止电子发票重复报销
  • vue3使用vueup/vue-quill富文本、并限制输入字数
  • 矿产资源补偿费与采矿权价款区别
  • ConvNeXt V2学习笔记
  • 政府会计制度收入支出表
  • arptables命令详解
  • 库存亏损要缴纳增值税吗
  • 基本生产成本和辅助生产成本区别
  • 出租厂房会计分录怎么写
  • python pdb模块
  • mongodb操作数据库
  • db2 select as
  • mysql数据库中进入mysql库的命令
  • 善意取得虚开增值税专用发票处理
  • 事故赔偿金分配
  • 高新技术企业收入总额
  • 汽车维修费可以入账吗
  • 出口退的税交附加税吗
  • 电费发票未到怎么入账
  • 回购注销库存股的会计处理
  • 初始数据都录入什么意思
  • 慰问金计入什么部门经济分类
  • 公司账户转账转错了能退回来吗
  • 公司车辆违章
  • 固定资产售后回购
  • 研发费用计入营业成本还能加计扣除吗
  • 进口关税增值税可以抵扣吗
  • 主营业务成本账户年终结转后
  • 企业组织结构的本质是
  • 事业单位支付的劳务派遣人员工资计入什么科目
  • 应收账款管理办法
  • mysql更新表中的数据
  • 新买的苹果电脑没有电
  • ubuntu20.04怎么用
  • 系统更新win10
  • linux vim使用
  • linux监控软件zabbix
  • [置顶]电影名字《收件人不详》
  • Unity3D 事件
  • java入门怎么学
  • jquery表单验证代码
  • jquery与js
  • Android使用领域是什么
  • unity cpu优化
  • 比较常见的电子商务模式
  • js string string
  • python怎么写多行
  • javascript怎么学
  • javascript位置属性
  • 国家电子税务局云南省电子税务局
  • 安徽中考2021年
  • 事业单位大额资金拨付需要什么报账材料
  • 企业所得税一年算几次
  • 处理报废固定资产
  • 服务承诺口号八个字
  • 增值税发票如何红冲
  • 新车购置税是在4s店交吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设