位置: 编程技术 - 正文

【深入了解cocos2d-x 3.x】一步一步通过ClippingNode实现一个功能完善的跑马灯公告(2)(cocos2dx入门)

编辑:rootadmin

推荐整理分享【深入了解cocos2d-x 3.x】一步一步通过ClippingNode实现一个功能完善的跑马灯公告(2)(cocos2dx入门),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:cocos 2,cocos 2,cocos2dx4.0入门,cocosbcx,cocos2dx入门,cocos2dx入门,cocos2d,cocos 2,内容如对您有帮助,希望把文章链接给更多的朋友!

本文的主要内容是根据跑马灯解析ClippingNode实现原理。本文涉及到cocos2dx 3.x的渲染机制以及部分opengl的知识。

首先看看上一篇文章中说到的跑马灯的简单实现:

1.跑马灯代码分析

从创建裁剪节点这里开始分析

这一句话实现了怎么样的功能呢?走进去看看(create函数中,实际上调用的是init函数,所以这里就直接展示init函数了)首先设置_stencil ,这里实际上与setStencil方法一样的(在上文有说过这个方法的作用)然后设置_alphaThreshold ,实际上与setAlphaThreshold是一样的(在上文有说过这个方法的作用)其次设置_inverted ,实际上与setInverted方法是一样的(在上文有说过这个方法的作用)然后调用一个opengl的API,

从逻辑上可以看到这个API在类第一次被创建的时候才会调用。那么这个方法的作用是什么呢,他的作用是将模板缓存中的每一个像素的位数赋&#;给g_sStencilBits,如果这个&#;小于0,说明不支持模板缓存。模板缓存的作用就是将绘图的范围限定在屏幕的固定区域,这个区域可以是一个复杂的图形,这个区域称之为绘图模板。

【深入了解cocos2d-x 3.x】一步一步通过ClippingNode实现一个功能完善的跑马灯公告(2)(cocos2dx入门)

此时,已经将跑马灯的实现代码分析得差不多了,接下来看看具体的渲染部分。

2.渲染代码分析

根据cocos2dx的渲染机制,渲染部分从visit函数开始分析。以下是visit的实现代码

代码中已经写了比较多的解释了,在这里就只看代码中出现了三个比较特殊的函数,分别是首先开看看onBeforeVisit的实现

然后是onAfterDrawStencil的实现:

最后是onAfterVisit的实现

本文涉及到许多关于opengl的相关知识,例如深度测试,模板测试,alpha测试等,以及着色器的使用、渲染机制等。

本文部分注释来自:Cocos2d-x2.1.1-ClippingNodeTest 深入分析

GLEW库安装和初始化 转载请注明出处!GLEW库安装和初始化GLEW库是OpenGL的扩展库,用于支持OpenGL1.1以上的版本[0]。比如着色器特性。一般非集成显卡都能支持到OpenGL2.0或者更

第一个OpenGL程序 刚开始学习OpenGL,感觉这个挺有趣的(在绘制三维模型时,空间想象能力要求比较高,不然很头疼的)。新东西,新心情。。。来一发红色三角形。我

nehe的opengl教程 opengl窗口章 移植到vs win7环境下 1.配置opengl环境,下载glut(openglutilitytoolkit)

标签: cocos2dx入门

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

上一篇:SCARA——OpenGL学习(opengl sharder)

下一篇:GLEW库安装和初始化(glib库)

  • 房产税的计税基础包括契税吗
  • 房产契税是怎样计算的
  • 非营利组织免税资格认定申请表
  • 我国增值税征收范围
  • 工程款增值税专用发票如何开具
  • 废机油处理多少钱一吨
  • 出口退税贷方余额是什么意思
  • 企业资产核算不包括哪些
  • 销售自产设备税率
  • 还有预算外资金的说法吗
  • 小规模纳税人如何转一般纳税人
  • 房地产公司扣减土地出让金怎么入账?
  • 折扣折让 红字发票账务处理
  • 土地罚款可以计入成本吗?
  • 加了一年的油
  • 外出什么意思?
  • 税控盘抵减税款怎么转出会计分录
  • 出售固定资产属于收入
  • 公司邀请外国人来华邀请函模板
  • 出租房电费怎么结算
  • 华为p60pro上市时间是几月
  • windows11我的电脑怎么放到桌面
  • perl.exe是什么程序?
  • php -m
  • 电力安装工程辅料有哪些
  • 从劳务市场雇人受伤了怎么办?
  • 不吃晚饭多久能瘦下来
  • 企业票据贴现费怎么算
  • 股东变更需要哪些手续的法律规定
  • 大金中央空调面板图解
  • php怎么爬数据
  • 制造业预提短期利润
  • 无形资产有进项税吗
  • html渐变色背景
  • nodejs官方文档
  • php remote_addr
  • 企业给企业借款收入会计处理
  • 话费补贴算工资还是福利
  • 海关缴款书上完税价格含增值税吗
  • 小微企业应具备的条件
  • 企业电子承兑
  • 维修费用的处理规定
  • 企业公司怎么申请
  • sqlserver存储过程教程
  • 专项附加可以随便填吗
  • 培训费 会议费
  • 应收账款科目的期末余额
  • 纳税申报怎么做
  • 薪酬范围怎么写
  • 增值税预缴的计税依据
  • 去年未计提费用,今年付怎么做账
  • 税务局退回来的附加税金怎么做账
  • 固定资产多少钱算固定资产
  • 公司对员工的罚款有什么标准
  • 折扣的种类有哪几种
  • 什么是中型企业
  • 暂估出口收入如何计算
  • 公司向职工借钱怎么做账
  • sql数据库口令
  • mysql 含有关键字
  • 数据库更新数据
  • mysql jdbc
  • window正在检查内存
  • windows xp运行
  • solaris ip配置
  • windows 10预览版
  • 请问在javascript程序中
  • Time、Set、Smartdrv命令的使用方法
  • python中yield用法
  • 火狐浏览器自定义滚动条
  • js原生dialog
  • TFC360冯燃:手游市场细分领域新秀崛起
  • python中的堆和栈
  • js调用声音
  • 设置默认python版本
  • 北京电子税务
  • 软件即征即退软件是什么
  • 安徽农金如何查询开户行
  • 劳务派遣服务计税
  • 潍坊市市区
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设