一种cocos2dx嵌入cef实现透明网页的方法技术

技术编号:24043831 阅读:51 留言:0更新日期:2020-05-07 04:18
本发明专利技术提供了一种cocos2dx嵌入cef实现透明网页的方法,在cocos2dx中创建显示网页层,开启刷新定时器,创建浏览器对象;创建cef事件处理对象并注册;cef将RGBA位图数据回调给网页层,网页层将数据缓存到队列尾部;在刷新定时器回调中检测缓存队列中是否有网页数据,若无数据,则重复检测;若有数据,则判断背景精灵是否已创建,使用数据初始化或更新纹理;网页层检测是否有键盘、鼠标事件触发,若有,则重组消息发送给cef;若无,则执行上一步。本发明专利技术提供的方法,cef离屏渲染回调位图数据,cocos2dx显示位图实现透明网页,填补了cocos2dx在Windows平台下内嵌web的空缺。

A method of transparent web pages embedded in CEF by cocos2dx

【技术实现步骤摘要】
【国外来华专利技术】一种cocos2dx嵌入cef实现透明网页的方法
本专利技术涉及网页处理
,特别是涉及一种cocos2dx嵌入cef实现透明网页的方法。
技术介绍
Cocos2dx是MIT许可证下发布的开源游戏引擎,游戏开发快速、简易、功能强大。Cocos2dx的核心优势在于允许开发人员利用C++、Lua及Javascript来进行跨平台部署,覆盖平台包括iOS、Android、WindowsPhone、Windows,MacOSX3及Tizen等,省事省力省成本。在现有cocos2dx框架下,只有在Android端和ios端实现了webview支持网页内嵌打开,并可实现透明网页;然而在Windows平台下,cocos2dx框架没有提供相应的webview功能。因此在Windows下目前只能另辟蹊径,来实现网页内嵌的功能。因此,在Windows平台下,cocos2dx框架下实现透明网页的加载,填补cocos2dx在Windows平台下内嵌加载网页的空缺,是本领域技术人员需要解决的技术问题。
技术实现思路
<br>本专利技术提供本文档来自技高网...

【技术保护点】
1.一种cocos2dx嵌入cef实现透明网页的方法,其特征在于,包括以下步骤:/nS1:在cocos2dx中创建并显示网页层,开启所述网页层的刷新定时器,创建浏览器对象;/nS2:创建cef事件处理对象,注册所述事件处理对象到所述浏览器对象;/nS3:启动cef消息循环,分发处理消息,将渲染后得到的RGBA的位图数据回调给所述网页层,所述网页层将所述数据缓存到队列尾部;/nS4:所述网页层在刷新定时器回调中检测缓存队列中是否有网页数据,若无数据,则重复检测;若有数据,则判断背景精灵是否已创建,若未创建,则使用所述数据创建背景精灵和初始化纹理,若已创建,则使用所述数据更新纹理;/nS5:所述网...

【技术特征摘要】
【国外来华专利技术】1.一种cocos2dx嵌入cef实现透明网页的方法,其特征在于,包括以下步骤:
S1:在cocos2dx中创建并显示网页层,开启所述网页层的刷新定时器,创建浏览器对象;
S2:创建cef事件处理对象,注册所述事件处理对象到所述浏览器对象;
S3:启动cef消息循环,分发处理消息,将渲染后得到的RGBA的位图数据回调给所述网页层,所述网页层将所述数据缓存到队列尾部;
S4:所述网页层在刷新定时器回调中检测缓存队列中是否有网页数据,若无数据,则重复检测;若有数据,则判断背景精灵是否已创建,若未创建,则使用所述数据创建背景精灵和初始化纹理,若已创建,则使用所述数据更新纹理;
S5:所述网页层检测是否有键盘、鼠标事件触发,若有,则重组消息发送给cef;若无,则执行S4。


2.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,在S1之前还包括:初始化cef环境,创建全局CefApp对象,开启离屏渲染,调用CefInitialize完成初始化。


3.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,S1中开启所述网页层的刷新定时器具体包括:调用ScheduleUpdate开启update定时器。


4.根据权利要求1所述的cocos2dx嵌入cef实现透明网页的方法,其特征在于,S1中创建浏览器对象具体包括:调用CefBrowserHost::CreateBrowser创建浏览器对象。


5.根据权利要求1所述的cocos2dx嵌入c...

【专利技术属性】
技术研发人员:陈其标罗婷
申请(专利权)人:威创集团股份有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1