包含标签 cpp 的文章

to_string is not a member of std

现象

cocos2d-x 2.2.6 项目的源码中使用了 std::to_string() 方法,使用 NDK r9d 编译的时候,报如下错误:

error: 'to_string' is not a member of 'std'

Application.mk 文件的部分内容如下:

APP_STL := gnustl_static
NDK_TOOLCHAIN_VERSION := 4.8
APP_CPPFLAGS := -frtti -std=c++11 -fexceptions -Wno-error=format-security -Wno-literal-suffix -Wno-deprecated-declarations -fsigned-char -Os $(CPPFLAGS)

换用 NDK 10e ,错误依然。

……

阅读全文

cocos2d-x 滤镜对 dragonbones 的支持

目前项目需要对 dragonbones 骨骼动画增加滤镜支持。这样就可以方便地利用同一套骨骼动画资源制作例如变色、中毒或者真假英雄等效果,节省美术同学的工作量以及运行时的内存占用。

cocos2d-x-filters 项目提供的滤镜功能,是针对纹理进行操作的。用于显示的两个类 FilteredSpriteWithOneFilteredSpriteWithMulti 也是继承自 Sprite 。

但 dragonbones 是一个层级结构,dragonbones 中的那个 _display ,其实仅仅是起到了容器的作用,并没有什么特殊的渲染工作。因此要对 dragonbones 进行滤镜处理,最简单的办法就是对 dragonbones 中的每一个骨骼做滤镜处理。

具体的方法如下:

……

阅读全文

关于 cocos2d-x 滤镜

cocos2d-x 并没有提供滤镜支持。由于美术同学的强烈需求,我不得不在刚刚学习 C++ 的时候写了一个 cocos2d-x-filters 项目,为游戏中的纹理提供一些基本的变色、模糊等效果。 这个项……

阅读全文

cocos2d-x 3.4 lua 触摸 BUG

2015-04-20 更新:该 bug 已经解决,见本文结尾。

查看所有 quick 移植到 cocos2d-x lua 的文章

移植 quick2.2.3 的项目到 cocos2d-x 3.4 lua 中提到,我已经开始使用 cocos2d-x 3.4 lua 来开发目前公司的两个项目。

在这两个项目中,我将 cocos 的 lua 框架、quick 的 lua 框架和我自己开发的 lua 代码,全部整合到了我的 lua 项目 中。

下面提到的 quick 框架,都是指的我整合的这个 lua 项目。

……

阅读全文

dragonbonesCPP 在 Android 5.x 上问题的解决

在 cocos2d-x 3.4 上遇到了一个诡异的问题,记录如下。

平台和版本

  • 框架: cocos2d-x 3.4 final
  • 设备: Nexus 4/5/7 with Android 5.0.1/5.0.2
  • NDK version: r9d

问题描述

一个 dragonbonesCPP 骨骼动画,在 iOS、Windows、Mac OS X、Android with 4.x 上表现完全正常,但在 Android 5.x 下表现不正常。

具体表现为解析骨骼动画数据的时候,既不 crash,也没有任何报错信息,整个程序就停住了。

……

阅读全文

cocos2d-x v2 和 v3 对照手册

2015-05-04 更新: 加入 OpenGL 和 MenuItem 的相关变化。

本文的内容来自于对其它几篇文章的翻译、修改和合成,同时,我也会不断增加自己的内容。

下面这部分内容来自对这篇文章的翻译:cocos2d-x v2 to v3 mapping guide

但这篇文章有一些老了,还有一些内容已经在 cocos2d-x 3.3 中过时。因此,我并没有进行完全对照翻译。对原文中的错误,我也进行了一些修改。

我的新项目开始使用 cocos2d-x v3 。cocos2d-x v3 和 v2 相比有非常大的改变。我把踩过的坑列在下面,以方便后来之人。

……

阅读全文

从 quick 转向 cocos2d-x 3.3 lua

  • 2014-11-30 更新:
    今天在 quick 的博客上看到了 duceface 的新文章:cocos2d-lua 与 quick 的未来,不由得热(kua)泪(zhang)盈(shou)眶(fa),看来 dualface 一直在努力,终于有成果了。
  • 2015-01-15 更新:
    加入 LiteFeel 的 如何在lua项目中使用dragonbones 文章链接。
  • 2015-01-16 更新:
    今天下载了 cocos2d-x 3.4 RC1 ,发现其中已经集成了一个 simulator,包含了原来 quick-player 的部分功能。根据阳光七月的说法,quick 到了3.4之后将不再单独发展。这真是个好消息。

在我的第一个 cocos2d-x 项目立项时,我曾经纠结过是使用 Lua 绑定还是使用 JS 绑定。最后选择了使用 Lua : Cocos2d-x script language binding:Lua or Javascript? 。cocos2d-x 的 Lua 绑定做得很糟糕,所以,我基于 quick-cocos2d-x 2.2.3 这个更好的 Lua 绑定版本进行了许多修改,那时 quick 还是在独立发展。

后来,Quick 被触控收购,Quick 进行了不兼容的升级。由于我对 Quick 的修改过多,当时的项目也在非常重要的时期,我没有持续跟进 Quick 的升级步伐,一直在使用自己 forked 的版本。

在这段艰苦时间中,我在 Quick 社区和 Quick 团队身上也学到了不少东西。感谢 dualface、Jimmy、阳光七月、ChildhoodAndy、微微蓝 等朋友提供的无私帮助。

在这些朋友的帮助下,我对 openGL ES 做了初步的了解,写出了 cocos2d-x 的 filter 组件;熟悉了 cocos2d-x 引擎的源码架构;把 DragonBonesCPP 整合进入了 quick 框架中;了解了 lua 与 C++ 交互的方式……

下面有一个不全的列表:

……

阅读全文

删除 lua.ByteArray 中与 Long 相关的方法

删除 lua.ByteArray 中与 Long 相关的方法

Delete some methods about Long in lua.ByteArray.

用lua实现ByteArray和ByteArrayVarint 一文中,我介绍了用 lua+lpack+BitOp 实现的 ByteArray 模块,这个模块模仿 AS3 的ByteArray,给从Flash转到quick-cocos2d-x的程序员以亲切感。

这个模块被网友们找出了一些BUG,例如 这个这个这个 ,和 这个

今天,我将这些网友提出的问题一一做了确认和测试,发现有些并非BUG,而是理解有偏差。

但有个不是BUG的问题却可能造成重大的错误,那就是:

……

阅读全文

在 quick-cocos2d-x 中使用 DragonBonesCPP

在 quick-cocos2d-x 中使用 DragonBonesCPP

Using DragonBonesCPP in quick-cocos2d-x.

2014-07-31更新:三件事已经全部搞定,DragonBonesCPP已经推送到了quick-cocos2d-x 官方库。

1 前言

DragonBones 官方C++版本 for cocos2d-x 这篇文章中,我已经简单地介绍过了 DragonBonesCPP 这套用于取代 CCArmature 的库。

在我自己修改的 quick-cocos2d-x 版本中,我已经把 CCArmature 库删除,完全使用 DragonBonesCPP 。

我们的产品也完全使用 Flash 和 DragonBonesCPP 来制作骨骼动画。所有AS3版本的DragonBones提供的功能,在CPP版本中都能完整地实现。

几个月之前,我就已经将 DragonBonesCPP 整合到了 quick-cocos2d-x 中,只是一直没有向官方库推送PR。这也是因为有几个内存泄露的BUG还没有解决。

现在,我终于有时间可以来做这件事。我的计划如下:

  1. 写一篇关于 DragonBonesCPP 的教程(quick专用哦);
  2. 解决 DragonBonesCPP 的遗留问题,并进一步封装lua api方便使用;
  3. 将 DragonBonesCPP 推送到quick的官方仓库。

那么,这篇文章就是第一件事了。

……

阅读全文

最近文章

分类

标签

3d aac actionscript adobe adobebug adsl air amd android ane ant antivirus apache api arch as2 as3 asdoc asp aspnet authorware bash bbpress benq bitandbyte bitmapdata bluetooth book box2d browser byewindows c camera capture centos character-set chinajoy choice chongrenxindu chrome class cms cocos2d-x codec collection color component conference cookbook coolplayer cpp css cygwin datagrid debug degrafa design-pattern develop devops director display-objects docker dragonbones ds eclipse editgrid egret embed emotion encrypt engine english eval excel exif fcs ffmpeg film filter firebase firefox flash flash-remoting flashbuilder flashdevelop flashplayer flask flex flexbuilder flv fms font framework freeware fromto fte ftp fxg game gamenote gcc general generator gin git gmail godaddy golang google gprs graphic graphviz gtd gui h264 hardware hexo host house howto hp html html5 http hugo i18n ie image ime ios iot jacky-cheung java javascript job joomla journey jquery json layout lecture library life lighttpd linux lisp list live loader lua mac macos mambo management markup master math mencoder mingw mjp mobile mobile-game-framework module monitor mvc mxmlc mysql ndk netconnection netstream network nginx node nodejs note objective-c office okr opengl openresty opensource ops osmf osx pay pda performance photoshop php physics player plist plugin portable posix ppc protocol proxy python qiqi qt quick2cocoslua reading readingnote reflection regexp ria robotlegs router rtmp ruby sagibookclub sagiteam sandbox sdk server sharedobject shell signals simulator skeletalanimation skin sleepmode smartphone socket software spark spreadsheet spritesheet sql sqlalchemy ssh staticize study svn swfobject terminal testing thread tipsandtricks tlf trace training translate translation tween typescript ubuntu ugly ui unity usingrobotlegs2 utf-8 uwsgi validator vcard vector video vim virtualization vr web weboffice websocket weekread wifi windows wine word wordpress wuhan xbeta xiaomi xinnet xml youshootfirst zhihu

其它