cocos creator 视频交互游戏

栏目: 后端 · 发布时间: 7年前

内容简介:前段时间刚参加完cocos开发者沙龙-杭州站,听完cocos技术总监panda对creator 2.0框架升级·性能优化·2.1版本3d渲染的介绍后,感觉creator的未来还是非常不错的。今天就给大家分享下最近做的一个视频与游戏相结合的教育类游戏。 如果对cocos creator不是很了解的可以访问引擎的官方网站,creator的控件都是渲染在canvas上的,如果直接在视频显示的位置放置creator的ui控件,控件是会被视频给盖住的。当然如果自己写button样式放到cc.game.contain

前段时间刚参加完cocos开发者沙龙-杭州站,听完cocos技术总监panda对creator 2.0框架升级·性能优化·2.1版本3d渲染的介绍后,感觉creator的未来还是非常不错的。今天就给大家分享下最近做的一个视频与游戏相结合的教育类游戏。 如果对cocos creator不是很了解的可以访问引擎的官方网站, api , 论坛

先上个效果图

cocos creator 视频交互游戏

如果在视频上面实现游戏呢?

creator的控件都是渲染在canvas上的,如果直接在视频显示的位置放置creator的ui控件,控件是会被视频给盖住的。当然如果自己写button样式放到cc.game.container下虽然是能显示出来,不过这样会存在很多未知的问题。所以这个方式被kill了,现在的做法是:

首先.需要修改引擎的代码CCMacro.js下面的参数ENABLE_TRANSPARENT_CANVAS设置为true。下面是该参数的说明:

cocos creator 视频交互游戏

顺便说一下:creator2.0的引擎每次开启编辑器会重新编译引擎,所以修改代码后只需要重启就能实现效果哦!

其实.修改完引擎后我们还需要把canvas的透明度设置成透明,代码:

cc.Camera.main.backgroundColor = cc.color(0, 0, 0, 0);
复制代码

最后.再设置video与canvas的显示层级就可以了

let video0 = document.getElementsByClassName('cocosVideo')[0];
        video0.style.zIndex = 5;

        let gCanvas = document.getElementsByClassName('gameCanvas')[0];
        gCanvas.style.position = 'relative';
        gCanvas.style.zIndex = 10;
复制代码

现在你就可以在视频上面放置任何你想放置的ui并且可以对他们进行操作了。效果图:

cocos creator 视频交互游戏

遇到的问题

目前这种方式仅支持 Web,不同的浏览器内核播放视频会有不同的效果,比如x5在播放视频前会黑屏一会,所以如果在播放视频的过程中需要切换视频的话,效果会比较差,目前的做法是把视频拼接成一个视频,通过设置播放进度的方式让视频播放流畅。目前没有找到好的处理方式。

最后

最后感谢cocos官方人员panda.pp_pro的帮助,希望creator越来越强大,越来越好用


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Maven实战

Maven实战

许晓斌 / 机械工业出版社 / 2010年12月 / 65.00元

你是否早已厌倦了日复一日的手工构建工作?你是否对各个项目风格迥异的构建系统感到恐惧?Maven——这一Java社区事实标准的项目管理工具,能帮你从琐碎的手工劳动中解脱出来,帮你规范整个组织的构建系统。不仅如此,它还有依赖管理、自动生成项目站点等超酷的特性,已经有无数的开源项目使用它来构建项目并促进团队交流,每天都有数以万计的开发者在访问中央仓库以获取他们需要的依赖。 本书内容全面而系统,Ma......一起来看看 《Maven实战》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试