位置: 编程技术 - 正文

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

  • 本期应补退税额和期末未缴税额
  • 申请延期缴纳税款的批准机关
  • 小规模企业所得税2023年税收政策
  • 综合所得减除费用标准是什么意思
  • 业务提成模版
  • 外销收入确认原则有哪些
  • 个人独资企业500万以下
  • 企业所得税汇算清缴申报表
  • 我公司给对方公司付款
  • 企业年金需要缴纳个人所得税吗
  • 国有企业业务招待费管理办法
  • 现金折扣税前扣除
  • 减免税款如何申报
  • 上年的增值税专票,下年还能抵扣认证吗
  • 年底开发票需要交企业所得税吗?
  • 申报增值税附表二代不出数据
  • 财务费用是否存入银行卡
  • 金税盘减免政策依据
  • 宣传活动物资
  • 违约支付罚款计入哪里
  • 处置股权后相应债权坏账损失怎么处理?
  • 企业为员工购买社保缴费标准
  • 如何激活windows11专业版?
  • windows hosts文件在哪
  • 企业对外捐赠的税法处理
  • 一帆风顺的养殖土壤用什么土
  • 金融行业如何征收营业税
  • 工业企业成本核算方法
  • 企业与员工之间的法律
  • 一般纳税人向小规模纳税人开专票
  • 现代服务业进项税加计扣除申报怎么填
  • 科罗拉多河上的月光简谱
  • php有哪些
  • 用php开发app
  • 固定资产清理属于非流动资产吗
  • 应纳税所得额100-300万税率
  • java的基本
  • 发票没有填写开户行,可以报销吗
  • 筹建期间发生的开办费用
  • mysql union or
  • 物流企业财务流程
  • php跳转到指定网页代码
  • 如何分析现金利润情况
  • 应收账款可以挂存货吗
  • 开发支出与研发支出的区别
  • 信用减值损失在贷方表示什么
  • 将自产产品用于公益事业
  • 实际成本法下采购材料的会计分录
  • 转让负债 增值税
  • 应付账款扣除赔偿后开发票吗
  • 已抵扣进项怎么转出
  • 计提税费和实际缴纳的有差额怎么办
  • 预计负债转回对所得税费用的影响
  • 资产负债率计算方法公式
  • 融资租赁收到的租金计入什么科目
  • 单位存款的种类有哪些
  • mysql日志记录
  • mysql根据时间查询最新一条数据
  • ubuntu20.10
  • windows映像文件位置
  • 怎么关闭windows登录密码
  • win8系统出现自动修复
  • 高效快捷键
  • linux磁盘配额实验报告
  • xp系统如何更改开机启动项
  • win8打游戏卡吗
  • win8开机启动项
  • win1021年更新
  • win10桌面test mode
  • python 简单例子
  • websocket解决跨域
  • javascript中checkbox使用方法实例演示
  • 正则化实现
  • qt Android开发
  • 电子税务局怎么添加银行账户信息
  • 香港居民个人转让境内股权所得个人所得税税率
  • 北京地税残疾人补贴政策
  • 小规模税控盘服务费怎么填增值税申报表
  • 免税收入要不要交水利基金?
  • 无锡市国家税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设