cocos creator 加载二进制

var url = cc.url.raw("resources/bin/data.bin");
cc.loader.load({ url: url, type: "binary", }, function (err, data) {
    console.log("err ===", err);
    console.log("data ===", data.length);
});

luajit 编译 windows, mac 下的64位程序

win

  1. 启动vs的64位编译

    xxx\vs2015\VC\vcvarsall.bat amd64
  2. 切换到luajit src目录,运行

    msvcbuild.bat gc64

mac

make clean
make CC="gcc -m64 -arch x86_64 -DLUAJIT_ENABLE_GC64"

加LUAJIT_ENABLE_GC64 决定了是否64位的bytecode

m4 在 mac 下 Abort trap: 6的解决

参考homebrew下的m4安装描述,https://github.com/Homebrew/homebrew-core/blob/master/Formula/m4.rb

 # Fix crash from usage of %n in dynamic format strings on High Sierra
  # Patch credit to Jeremy Huddleston Sequoia <jeremyhu@apple.com>
  if MacOS.version >= :high_sierra
    patch :p0 do
      url "https://raw.githubusercontent.com/macports/macports-ports/edf0ee1e2cf/devel/m4/files/secure_snprintf.patch"
      sha256 "57f972940a10d448efbd3d5ba46e65979ae4eea93681a85e1d998060b356e0d2"
    end
end

手动打上面的补丁,编译安装。

Quick-Cocos2dx-Community 3.7.4 Beta

2019第一个测试版本发布,祝大家新年快乐。

同以往一样,测试稳定后将正式发布到 http://www.cocos2d-lua.org

社区版的发展,离不开大家的关爱与支持,捐献传送门。http://www.cocos2d-lua.org/donate/index.md

3.7.4 Beta 主要改进了win32的editbox体验,扫清开发pc游戏最后一个尴尬点;
升级了OpenAL库,对Android驱动有一定改善。

改进

  1. 新接口,cc.EventTouch:setTouches{cc.p(x,y), cc.p(x,y), …}。可以用来模拟触摸事件。
  2. config.lua 中去掉无用的变量。
  3. luasocket 的 socket open 添加异步线程,让第一次open不至于在某些特定情况下卡死UI。
  4. 更新 OpenAL 到 1.19.1。
  5. Scale9Sprite 添加 setGLProgramState 支持自定义shader。
  6. pb int64 最大值改进(max 2^ 53)。
  7. player的log路径修改为可写路径。
  8. iOS 模版工程改进,添加新的icon尺寸格式。
  9. Android studio模版配置改进,支持3.2的 AS。
  10. 同步-x win32输入法改进,并修正缩放bug。
  11. 改进Label,正确显示阴影。
  12. ClippingRectangleNode嵌套再改进,算法同 ccui.Layout。
  13. VideoPlayer 改进。

阅读全文»

Cocos2d 在 mac 10.13 和 xcode 10.1 组合下,移动才显示的bugfix

Mac和Xcode的组合bug,在最新的Mac更新中应该已解决。如果依然存在问题,可以用下面的方式修正。

在 CCApplication-mac.mm 中做如下修正。

// 添加的头文件
#ifdef __APPLE__
#include "platform/desktop/CCGLViewImpl-desktop.h"
#endif

    while (!glview->windowShouldClose())
    {
        lastTime = getCurrentMillSecond();
        
        director->mainLoop();
        glview->pollEvents();

        curTime = getCurrentMillSecond();
        if (curTime - lastTime < _animationInterval)
        {
            usleep(static_cast<useconds_t>((_animationInterval - curTime + lastTime)*1000));
        }
        
#ifdef __APPLE__  // 添加的内容
        static bool macMoved = false;
        if(!macMoved) {
            int x, y;
            GLViewImpl *view = (GLViewImpl *)glview;
            glfwGetWindowPos(view->getWindow(), &x, &y);
            glfwSetWindowPos(view->getWindow(), ++x, y);
            macMoved = true;
        }
#endif
    }

Quick-Cocos2dx-Community 3.7.3 Beta

3.7.3 Beta 主要改进: Spine runtime更新到3.6,CocosStudio 编辑器支持更新到3.10。

改进

  1. 创建新工程python脚本中添加 --deep-copy 选项,可导出cocos2d源码至新工程中。(感谢 guolihui112@gmail.com)。
  2. iOS 模拟器中默认开启 -pagezero_size 10000 -image_base 100000000 链接选项。(感谢 guolihui112@gmail.com)
  3. Spine runtime 更新到 3.6。
  4. CocosStudio 支持到3.10 (感谢1066535716@qq.com)。

阅读全文»