位置: 编程技术 - 正文

【深入了解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库)

  • 没有固定金额的合同叫什么合同
  • 购买需要安装的设备会计分录
  • 物流公司车子保险费怎么做账
  • 以前年度损益调整结转到哪里
  • 盈余公积补亏为什么未分配利润增加
  • 联营企业股利收入
  • 专票未认证是什么意思
  • 公司注销时应付职工薪酬怎么处理
  • 子公司注销投资收益是否纳税合并层面
  • 小规模纳税人可以抵扣增值税专用发票吗
  • 收到收入怎么做分录
  • 金税盘初始密码忘记了怎么办
  • 所得税收入包含哪些
  • 预收款交税未开发票申报表怎么
  • php该怎么学
  • win10怎么启用
  • mgaqdesk.exe进程有什么作用 mgaqdesk进程查询
  • php如何实现多线程
  • 发票盖章有讲究吗
  • 公司为员工投保意外险,意外险赔付给谁
  • php抓取
  • php毫秒转换时分秒
  • 企业工资薪金和职工福利费等支出税前扣除问题的公告
  • laravel引入css
  • python抓取淘宝店铺商品
  • 注意力机制有什么作用
  • node.js的安装步骤
  • pytorch .pt
  • linux命令bzip2
  • 财务章有几种样式
  • 收不回的应收账款分录
  • 公司变卖汽车按什么税率
  • 政府补贴什么时候开始的
  • 小规模附加税优惠政策2021
  • mongodb使用场景 简书
  • 常用的收集数据方法有
  • 短期投资计提跌价准备
  • 现金流量表编制格式
  • 银行承兑汇票是商业汇票吗
  • 车间机器设备修理费用计入什么科目
  • 土地使用权转让合法吗
  • 小规模纳税人专票开1%还是3%
  • 背书是什么含义
  • 增值税怎么开
  • 纳税期限与缴库期限不符
  • 年终奖都有啥
  • 大修和维修怎样定义
  • 增值税发票丢失可以补开吗
  • 刚开业的健身房
  • 应收利息审计底稿怎么做
  • 资产处置收益和资产减值损失区别
  • 个人到税务局开普票要交多少税
  • 商业零售企业商品进销差价
  • Windows Server 2008禁止模块安装提升网络性能
  • 通透Windows 2008系统状态变化
  • linux系统详解
  • 电脑系统xp怎么样
  • 电脑桌面图标有虚影怎么回事
  • 安装xps虚拟打印机
  • 一招让你的wifi网速翻倍
  • win8虚拟内存怎么设置最好
  • windows 10各版本
  • libts.so.0
  • Win10预览版更新弹窗如何关闭
  • cocos2dx4.0教程
  • cocos2dx官方教程
  • Unity3d_用PlayerPrefs保存和读取数组
  • opengl实现光照效果
  • glrotatef函数
  • 日亚海淘官网
  • unity移动方法
  • React Native react-navigation 导航使用详解
  • Python中模块和包的区别
  • api/home/getmyregion
  • jquery.serialize() 函数语法及简单实例
  • eclipse自动生成
  • 营改增后如何计算税金
  • 天津2020年契税征收标准
  • 票种删除需要怎么弄
  • 如何做好税务党建工作
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设