位置: 编程技术 - 正文

cocos2d::DrawPrimitives和DrawNode分别实现画板功能

编辑:rootadmin

推荐整理分享cocos2d::DrawPrimitives和DrawNode分别实现画板功能,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

才开始了解cocos2dx几天,只是觉得学习还是得边用边学,所以才想实现点什么,下面提到的有什么问题请指出,谢谢

我想实现简单的画板功能,就看了官方cpp_test的Node:Draw测试代码,遗憾的是我先看到的是DrawPrimitives,所以就研究了一下,简单的实现了我的功能,当我写的差不多的时候才发现DrawPrimitives应该尽量不再使用,而使用DrawNode来实现。

代码都写的差不多了,而且测试效果感觉还特别好,还是在这里留存一下吧:

之后代码统一换成DrawNode实现,代码竟然精简了如此之多,基本没有什么逻辑:

这里作一下对比,这里需要提到两个指标,GL Verts 和 GL Calls,概念的含义也是我朋友给我说的,前者是绘图的顶点数量,后者是opengl的调用次数,朋友还特意给我说了这两个&#;都是越小越好。

cocos2d::DrawPrimitives和DrawNode分别实现画板功能

当我使用DrawPrimitives实现画板的时候,我每画一个点,GL Verts &#;加1,GL Calls &#;加1,我每画一条线,GL Verts &#;加2(两个顶点),GL Calls &#;加1。

当我使用DrawNode实现的时候,我每画一个点,GL Verts &#;加1,我每画一条线,GL Verts 这个&#;是一直累加的(每次累加),GL Calls &#;始终为1。

可能这里也就从一定层面上说明DrawNode早晚会取代DrawPrimitives的原因,DrawPrimitives迟早会被淘汰。

但是这里也有一个疑问是,当使用DrawNode的为什么GL Verts累加的时候每次累加呢,按我上面给出的参数我怎么想都想不到啊?

这里也再多说明一个问题,当使用DrawPrimitives的时候,我是在draw实现绘画功能的,但是draw函数我后来发现是被循环调用的,应该是和刷新频率有关,就像MFC程序一样界面每隔一段时间刷新一次,当然这个时间很短,也也就导致了我看到的GL Verts 和 GL Calls 的&#;永远在我的计算当中,因为每次刷新这两个&#;都应该会重新计算的吧。若是按照刷新次数去计算这两个&#;,只会更大吧。

cocos2dx3.4 Label 创建一个空的Label,具体属性以后再设置staticLabel*create();使用系统API创建一个Label,参数包括一个初始字符串,字体(字体名称或字体文件),字体大小,在分维

[置顶] cocos2d-x 3.5版 关于Console模块 cocos2d-x引擎发展的日益完善,更新了很多小工具。这个Console模块是一个控制台调试工具,可以实现远程调试,用用还是蛮有意思的。看AppDelegate.cpp里面

CCEditBox实现原理 今天使用了EditBox,记录下几点重要的,可以说是CCEditBox实现原理1.CCEditBox继承CCControlButton,CCIMEDelegate2.CCEditBox实现了touchDownAction方法,并在CCEditBox::initWi

标签: cocos2d::DrawPrimitives和DrawNode分别实现画板功能

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

上一篇:cocos2dx切换场景如何释放内存(cocos2dx怎么用)

下一篇:cocos2dx3.4 Label

  • 软件企业减免企业所得税
  • 企业成立多久能注销
  • 增值税科目及会计处理
  • 增值税价外税是什么税种
  • 银行现金增加会计分录
  • 个人独资企业500万以下
  • 物流商品采购价差如何做账
  • 企业租赁集体土地种植经济林如何补偿
  • 基本户收到零余额转款怎么做分录
  • 销售亏损原因分析范文
  • 企业无力支付票据
  • 增值税税控设备服务费
  • 购买沙子违法吗
  • 提前退休取得的一次性补贴收入
  • 计提本月应缴纳增值税
  • 没有业务来往可以报税吗
  • 税务局即征即退自查报告
  • 社保可以在税前扣除吗
  • 营改增后房地产企业增值税如何核算
  • 代建项目增值税税率
  • 公司设备没开票维修时配件能开票吗?
  • 公司购买茶叶应计入哪里
  • 汇兑差额会计处理
  • 代账代税与自行核算申报应从哪几个角度考虑
  • 普通支票如何转账
  • 买手机5000预算
  • 发票抵扣联章子盖的不清怎么办
  • 腾讯手游助手闪屏怎么办
  • linux怎么查找
  • php基础
  • php中面向对象
  • 应交增值税的处理
  • PHP:apache_request_headers()的用法_Apache函数
  • mac osx10.11
  • mysql如果不存在就创建表
  • OfcPfwSvc.exe - OfcPfwSvc是什么进程 有什么用
  • laravel 分层
  • 汇兑结算计入什么会计科目
  • 利息收入发票能抵扣吗
  • chrome插件开发语言
  • vuex状态丢失
  • vue 状态管理
  • 帝国cms上传视频半天没反应
  • 专票认证期限多长时间
  • python字符串字面量有哪4种
  • 微擎框架可以干什么
  • 资产减值损失如何确定
  • 购入固定资产怎么做账务处理
  • 删除sql server2019
  • 织梦cms要钱吗
  • python命令行如何退出
  • 购买的烟酒怎么入账
  • 差旅费单子格式表
  • 用友t3核算管理如何取消记账
  • 分页存储的优缺点
  • 进项留抵月末要结转吗
  • 长期借款和长期贷款一样吗
  • 减值准备包括哪几个方面
  • 没有销货清单的发票可以报销吗
  • mac mysql初始密码
  • window10右击
  • unix系统复制命令
  • windows8文件夹怎么加密
  • win8系统 Cisco VPN 442错误怎么办?解决方法介绍
  • xp能不能升级win10
  • 电脑死机是啥原因
  • linux运维常用命令汇总
  • win10系统中怎么安装安卓应用
  • linux哪里好
  • el-select tree
  • vue.js购物车
  • Compact 显示和更改 NTFS 分区上的文件或目录压缩
  • python 控制台交互
  • jquery做下拉
  • python日志类
  • js简单网速测试方法
  • 安卓监听功能
  • 税务局电话咨询电话
  • 北京通个人认证
  • 周报要素
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设