首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

cocos2d-js Shader系列4:Shader、GLProgram在jsb(native、手机)和html5之间兼容问题。cocos2d-js框架各种坑。

为了让jsb也能顺利跑起滤镜效果,在手机侧折腾了2天,因为每次在真机上运行总要耗那么半分钟,而且偶尔还遇到apk文件无法删除导致运行失败情况。 这个调试起来,实在让人烦躁加沮丧。...还好,测试上百轮,翻jsb代码+各种猜测实验之后,终于顺利把前3个系列例子都通通在Android上跑起来了,也算是把兼容问题调通了。...跑得很顺利接口(包括出现在官方例子中)在JSB中并没有实现或绑定错误。...2、JSBgl.uniform1f,并没有正确传递float值,接口错误把float强制以int32接收了,结果导致float小数位都被截断。...3.0html5版本,不会自动在fragment shader中加入uniform CC_Texture0到4,但从3.0jsb和3.1 jsb和html5都会自动增加这几个uniform。

1.5K40

cocos2d-js 3.0 RC0 手动绑定 C++调用js,js调用C++ jsbinding

代码:https://github.com/kenkozheng/cocos2d-js/tree/master/jsbinding(cpp_js%20js_cpp) 1 JS调用C++ 3.0中写这个绑定比较简单...cocos2d-js原来就定义好了代码风格: sc->addRegisterCallback(MinXmlHttpRequest::_js_register); sc->addRegisterCallback...上述c++代码会在spidermonkey运行环境中生成相应js接口,所以,我们不需要自己额外写对应js接口。 然后就可以写js代码试试了。...executeFunctionWithOwner可以实现类似cc.sprite之类c++对象和js对象调用,没有深究。这里演示是如何做全局调用。...,可以帮助我们节省很多细节上研究 //js_proxy_t * p = jsb_get_native_proxy(); //return ScriptingCore::getInstance

2K30
您找到你想要的搜索结果了吗?
是的
没有找到

cocos2d-js 在线更新代码脚本 动态更新脚本程序 热更新 绕过平台审核 不需重新上架

2014年8月15日补充 cocos2d-js 3.0 rc0 AssetsManager有缺陷,有一些注意点:(可以阅读源代码发现) 1、旧manifest中有,但新manifest中没有的文件(Assets...2014年8月19日补充 cocos2d-js 3.0 rc2 AssetsManager依然有没有确保全部同步更新bug。...使用这个更新包: https://github.com/kenkozheng/cocos2d-js/tree/master/modified-AssetsManager 覆盖本地2个目录相应文件: 【...---- 一、cocos2d-js 动态更新基本思路 动态更新好处不言而喻,不需要重新上架审核,能节省很多时间,也能让用户尽快使用上最新版本,减少下载成本。...二、程序发布步骤 本文参考:https://github.com/faint2death/cocos2d-js/blob/master/assetsmanager.md,但配置方式不一样,本文更偏于使用官方配置

1.6K40

「新手引导框架」升级,支持自动挂机等更多玩法!

从最开始 Shawn 也一直在思考如何实现在原生环境上屏幕点击模拟,之前思路是分别在 iOS\Android 上分别实现一套原生 JSB 接口,调用系统能力来模拟真实屏幕触摸,不过要让大家使用起来需要折腾...JSB\c++,相当于SDK接入,太过于复杂。...在与脱贫实验中伙伴们几次交流讨论,大家给出了不同方案,其中有「黝黑蜗牛」方案给了我很大启发,下面是解决原生上实现自动节点点击讨论过程。 ?...Shawn早在Cocos2d-js时使用过Cocos官方开发Cocos2d-js devtool工具,看下图: ?...它是直接将一段 JS 代码嵌入已经运行 Cocos2d-js 游戏中,如果将新手引导自动执行能力动态嵌入一个 CocosCreator H5 游戏那将会是什么呢?—— 外挂!

1.9K20

cocos2d-js 3.0 rc2 自定义UI控件组件 例子:能播放动画MenuItem。MenuItemSpritebug

其实总体自定义UI组件都比较简单,尤其是cocos2d-js是开源,如果有什么不明白直接看js代码或者C++代码即可。当然js代码基本就够了。...另外,jsctor函数虽然说是构造函数,但毕竟不是flash或者c++构造函数,这只是一个普通函数,也就是说可以不在第一行默认调用,这就给扩展带来了不少方便。...但想做得再炫一点,有声音时候,按钮样子能有几个音波变化。那么就需要用MenuItemSprite,尝试自己做一个自定义Sprite。...(补充:以下代码只适用于html5版本,后来发现jsb版本对MenuItemSprite初始化更严格一些,不能为null) ? ? ?..._soundOnOff, this); //这样可以设置callbacktarget }, _soundOnOff:function() { Sound.toggleOnOff

54030

奎特尔星球入侵指南

Shawn在奎特尔星球上呆了有大半年了,再加上之前在奎特尔兄弟星球cocos2d-js上开垦了三年,略有心得,愿与你分享。...一、javascript语言 javascript语言基础 了解javascript常见坑,容易犯错地方 深入了解javascript中函数,还有this、call、apply、bind 学习javascript...流行三方库,推介lodash\async 二、UI 熟练使用Creator图形编辑器,掌握常见ui布局思路和策略 组件编程,熟练使用creator提供系统组件,实现常见UI功能 在系统组件上进行扩展或组合...,编写出可扩展、通信性强组件 音乐、音效、多语言 三、动画 了解creator提供动画编辑器,掌握动画组件cc.Animation使用 熟悉粒子组件,会编辑修改,能通过代码粒子属性和播放 熟练cocos...+,ios\android开发懂一点最好 熟悉Creator提供jsb相关api,反射机制,jsb绑定 六、调试 chrome调试creator web应用 微信devtool调试creator web

67230

当creator遇上protobufjs|相遇

所以下面所有内容都是关于protobufjs在cocos creator中使用,包括原生平台(cocos2d-js也是大同小异)。...拯救cocos-jsbprotobufjs 为什么在原生上运行就挂掉了呢?要理解这个问题需要对nodejs\ 浏览器\cocos-jsb这三个javascript运行宿主环境有一定了解。...cocos-jsb jsb.fileUtils.getStringFromFile cocos-js提供读取文件内容接口,在不台平台(ios\android\windows)由不同底层api实现...根本就没考虑过cocos-jsb存在(吐槽:建议cocos官方提供接口能模仿nodejs这样能少很多事),所以要在cocos-jsb中使用protobufjs其中一个办法就是修改protobufjs...了解creator动态加载资源方法 请大家思考一个问题,creator项目中一张图片,在web与cocos-jsb上他们文件路径会一样吗?

2K20

cocos2d-js 各浏览器上表现

结论是: 1、有webgl支持时候,就可以尽情耍吧; 2、没有webgl,能native就native。如果不行,就只能在canvas上做小块区域,减少每帧变化。...1、PCChrome(webgl) 首先看看官方performance test。 粒子系统达到最大值3000也毫无压力。 ?...普通小人转啊转,1000个以内不成问题,超过1000性能开始下滑。 ? 再自己写一个单图多sprite不断旋转测试。左侧是没有开批处理情况,1600个小人就开始撑不住了。...2、小米1微信内嵌浏览器(跟google浏览器效率类似,应该是内嵌了google浏览器) 本来想在手机上跑官方测试,但发现死活打不开。算了。。。...后边再测试,发现canvas大小还是很有影响力(因为canvas机制影响下,只能每帧清空全屏然后重绘)。 如果尺寸改为300*400,那么50个小人情况下,还是可以妥妥30+帧,这还是能接受

2K30

Cocos2d-js 3.0 颜色变换(调整sprite图片色调)

Flash在滤镜方面做得比较成熟,starling也有很多现成办法。 但Cocos2D这里就显得比较单薄,百度/谷歌很少相关资料。 后续如果有时间,再慢慢整理各种滤镜效果。...这里先介绍一下颜色变换功能,这个是cocos2d内置,用起来比较方便,只需要知道具体做了什么即可。 例如要把一个按钮变暗,也许一般做法是换一个图片,但其实也可以直接修改颜色值。...var action = cc.tintTo(1, 150,150,150); this.runAction(action); 另外还有tintByaction...cocos2d最大好处就是开源,那我们通过看html5版本代码,就可以略知一二了。...,大概可以看出,新颜色值和原颜色做了一个multiply操作,也就是乘法。

2.9K20

修复cocos2d-jsv3.1文本换行bug

本文作者:IMWeb vienwu 原文出处:IMWeb社区 未经同意,禁止转载 使用cocos2d-js版开发跨平台手游非常简单,并且在手机端也拥有不错性能。...大段中文文字无法自动换行并且在不同终端行为不一致bug修复 这个bug具体表现为,js版cc.LabelBMFont类实现存在缺陷。..._lineBreakWithoutSpaces) {应该判断是否为中文,或者在后续寻找空格逻辑中,增加寻找中文判断。...其次,cocos2d-js在手机端执行时,会将js代码编译为jsb字节码,调用cc.LabelBMFont类是c++实现,并且该类实现算法和web端实现不同,导致字体大小、换行行为不一致,尤其在单独控制某个文本字符颜色时...,定位某个文本索引都会不同。

66120

Cocos2d-js简易MVC框架(一)框架简介

一、框架简介 今天我将把我写一套适用于Cocos2d-JS一套MVC框架分享给大家。首先我先简单介绍一下MVC,然后再逐步介绍我写mvc框架和在游戏中具体应用。...界面显示分离方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互同时,不需要重新编写业务逻辑。...MVC被独特发展起来用于映射传统输入、处理和输出功能在一个逻辑图形化用户界面的结构中。 这里实现MVC比较简单明了,关系图如下: ?...DirectorMediator负责维护场景间关系和切换;SceneMediator负责当前场景UI关系和切换;LayerMediator负责当前UI管理。...框架简单介绍就到这里,接下来我会详细介绍Cocos2d-JS中简易MVC各个模块实现和应用。

1.3K30

修复cocos2d-jsv3.1文本换行bug

本文作者:IMWeb vienwu 原文出处:IMWeb社区 未经同意,禁止转载 使用cocos2d-js版开发跨平台手游非常简单,并且在手机端也拥有不错性能。...大段中文文字无法自动换行并且在不同终端行为不一致bug修复 这个bug具体表现为,js版cc.LabelBMFont类实现存在缺陷。..._lineBreakWithoutSpaces) {应该判断是否为中文,或者在后续寻找空格逻辑中,增加寻找中文判断。...其次,cocos2d-js在手机端执行时,会将js代码编译为jsb字节码,调用cc.LabelBMFont类是c++实现,并且该类实现算法和web端实现不同,导致字体大小、换行行为不一致,尤其在单独控制某个文本字符颜色时...,定位某个文本索引都会不同。

1.2K60

cocos2d-js 入门 (主要是HTML5)

cocos2d-js是cocos2d-xJavaScript版本,真正跨全平台游戏引擎,采用原生JavaScript语言,可发布到包括Web平台,iOS,Android,Windows Phone8...开始cocos2d-js开发前,需要洗洗脑,知道cocos2d-js平面坐标情况。这跟HTML和canvas布局都不一样。 ?...在cocos2d-js游戏中,画面的左下角是(0,0),x从左往右递增,而y是从下往上递增,跟数学二维坐标系一致。...Cocos2d-js框架把游戏拆分为很多个场景,当玩家在不同界面切换时候,框架实际上就是让游戏画面在不同场景中切换。跟Flash一样,cocos2d-js也有最基本元素——节点Node。...后续就可以继续学习官方SDK中附带samples了,里边js-tests项目中包含了几乎全部cocos2d-js功能实例程序,例如:定时器、精灵动作、帧动画、骨骼动画、粒子系统、界面编辑器等等。

10.4K70

跨平台开源游戏

腾讯全球首款JS代码坦克 软件介绍: CodeTank是一个非常有趣竞赛性编程游戏平台,通过几行简单Javascript代码和CodeTank API,每个人都可以方便构建属于自己富有智能和个性坦克...在合适场景加入合适动画,增加可玩性。 根据不同屏幕尺寸展现不同尺寸的卡片容器,以便玩家看到都是满行满列(一家人最重要就是整整齐齐)。 精心挑选配色方案,让游戏看起来风格如一。...和90经典版坦克大战有些不同, 这里是纯坦克之间战争, 英雄坦克并不用保护它家。 软件功能: 游戏共设6个关卡....有爆炸声音。 关于模式: 本游戏分为两种模式: 简易模式(可以无限制发射子弹), 标准模式(在你发射子弹消失前, 不能发射子弹)。 游戏操作: 运行下载下来jar文件....Cocos2d-JS 统一了使用 JS 进行开发开发体验,将 HTML5 引擎与 JSB API 高度统一起来。

2.7K40
领券