Cocos2d-x 3.17 正式版本发布

3.17绑定c++到lua
自动生成出来的代码
为什么会有这个宏???
win32不能用???

自己回复一下
重命名了 cocos2dx_ui.ini 这个文件
就没有那个宏了
出现宏的原因是
重命名了 cocos2dx_controller.ini 这个文件

请问,如何自己编译luajit库,我的游戏在我手机上每次启动都是随机闪退,debug显示在执行main.lua时,执行到CCLuastack.cpp的方法executeFunction中调用lua_pcall会随机触发中断,中断信息是访问了受保护的地址。所以我想自己编译luajit库试试,但是根据luajit官网的指导始终不能编译成功,貌似官网的指导依然用的是gcc编译,而ndk现在已经默认是clang了吧?
@2627993092还请大佬指点下 ,或者我怎么直接用luajit的源码而不用预编译库

是的,已经改成 clang 了,cocos2d-x 的第三方库的构建方法在这里 https://github.com/cocos2d/cocos2d-x-3rd-party-libs-src ,可以研究研究,自己通过这种方式定制

http://forum.cocos.com/t/cocos2d-x-3-17/60897 这个帖子是说怎么把代码替换成静态库的,你这个就是反着操作一下。顺利的话,最简单的方法,

external\lua\luajit\prebuilt\android\Android.mk 中的 LOCAL_SRC_FILES 替换

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE    := luajit_static
LOCAL_MODULE_FILENAME := libluajit
LOCAL_SRC_FILES := $(TARGET_ARCH_ABI)/libluajit.a   // 替换成源码文件列表
LOCAL_EXPORT_C_INCLUDES := $(LOCAL_PATH)/../../include
include $(PREBUILT_STATIC_LIBRARY)

当然需要把源码复制到 external\lua\luajit 合适的目录,然后调整路径

1赞

感谢指导,闪退问题解决了,但是太戏剧性了,我只是将cmake方式换回ndk-build之后就不存在闪退了,我也很无奈,我也想知道cmake方式问题出在哪里,但是我技术有限对此不是很熟悉,也想知道该如何解决cmake方式打包会出现闪退的问题所在,希望大佬在解决之后不忘指点一二,毕竟全平台只维护一份CMakeList.txt文件是一件很方便的事情。
@2627993092

http://forum.cocos.com/t/cocos2d-x-bug/61262
帮忙看下这个···············谢谢

是的。我这周检查一下,可能是 cmake 中引用 lua 相关库的时候有和 ndk-build 不一致的地方(较大可能),小可能是编译参数的问题。

新建lua工程
VS2017编译通过
启动报这些错。。。
这些错不难处理。。。
但是你们真的有测试过吗???
没别的意思。。。
只是吐槽一下。。。

1赞

测试过,启动也没问题。

你确定了问题,并且通过修改代码解决了??那为什么分享到这来呢,只是吐槽一下

@2627993092

3.17 直接使用 JSTest 在 Android 上一开启就直接闪退了 use NDK r16b
后来把 AppDelegate.cpp 的

sc->addRegisterCallback(register_jsb_websocket); sc->addRegisterCallback(register_jsb_socketio);

Message:
D/cocos2d: android SDK version:17 A/libc: Fatal signal 11 (SIGSEGV) at 0x00000060 (code=1), thread 10063 (Thread-558)

这两个东西先拿掉就可以正常进入, 可否帮忙修一下

因为我们的JSB需要使用到websocket

感谢引擎组

6/14更新
Sony Z3 6.0.1 正常
Asus X00QD 8.0.0 正常
Asus PadFone T004 4.2.2 閃退
Asus T00F 4.4.2 閃退 拿掉 上面的兩行就可以進入
HTC Desire820 6.0.1 正常

看起來似乎不是那麼簡單上面那兩行的問題

查了一下。。。
发现并没有想象的那么简单。。。
:12:

在 CCImage.cpp 文件的 1143行

这里执行完之后
直接跳转到了 当前的文件的1050行


1050行是一个检查指针的函数
然后直接返回false了
所以导致了后续的创建图片失败

我运行了test工程。。。
也是这样的。。。

然后我换了台机器。。。
居然可以了。。。

我在我的机器上运行了3.16
也是可以跑起来。。。
:8:

不知道该咋办了。。。
另外
非常抱歉,错怪引擎组的大佬们了
对不起。。。
:12:

很高兴看到cocos又升级了。非常感谢cocos团队的努力。
我觉得可以把2d和3d完全分开,再针对2d多制作一些控件。这样可以让游戏开发起来更简单高效。
我在三家公司做过cocos2dx的游戏,每家都自己定制了不少控件,然而很多控件的功能是相同的。
这就让我感到害怕,每次开发都要组装控件,想想都头疼。
如果cocos能把2d做的更好,我相信更多的开发者会愿意使用。

lua-tests 在你的机器上可以跑起来吗?这个方法是调用第三方库执行的,可能是宏定义不合适,或者是第三方库引用有问题

感谢支持,开发者的支持和关注也给我们提供了动力。定制的共同控件有一些什么,能否大概介绍一下?

我的机器跑不起来。。。
:12:

我看glfw在windows平台开始支持RawInput 设备支持了,未来cocos2dx也会同步吗。

我之前用的 3.11.1版本
然后今天下载了新的版本 3.17
VS2015…
新建了一个项目之后 什么都没有改动 就会提示 不明确之类的…
虽然能编译通过…可是总是会提示这种错误…求怎么解决

你可以試試把external資料夾裡的openssl 改使用 3.16 的版本

目前JSB的專案是這樣替換掉後就可以正常使用

我只有只用armeabi-v7a 而x86的機子是可以正常使用的

我也不知道為什麼

IOS更新了3.17引擎,在腾讯BUGLY后台,一直收到这个崩溃日志:
0 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 3760500
1 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 3760256
2 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 3750968
3 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 3759204
4 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 3759456
5 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 2996044
6 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 4317552
7 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 3583784
8 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 4317552
9 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 4300856
10 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 4272496
11 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 4317820
12 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 4318656
13 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 3433284
14 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 2779896
15 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 2785392
16 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 2785108
17 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 8242368
18 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 8241788
19 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 8222752
20 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 8223232
21 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 8224596
22 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 8223788
23 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 8886704
24 CrazyCooking-mobile JSCCBAnimationWrapper::animationCompleteCallback() + 8425092
25 UIKit -[UIWindow _sendTouchesForEvent:] + 2040
26 UIKit -[UIWindow sendEvent:] + 3160
27 UIKit -[UIApplication sendEvent:] + 340
28 UIKit ___dispatchPreprocessedEventFromEventQueue + 2340
29 UIKit ___handleEventQueueInternal + 4744
30 UIKit ___handleHIDEventFetcherDrain + 152
31 CoreFoundation _CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION + 24
32 CoreFoundation ___CFRunLoopDoSources0 + 276
33 CoreFoundation ___CFRunLoopRun + 1204
34 CoreFoundation CFRunLoopRunSpecific + 552
35 GraphicsServices GSEventRunModal + 100
36 UIKit UIApplicationMain + 236
37 CrazyCooking-mobile 0x00000001008cc000 + 65116
38 libdyld.dylib _start + 4

@panda 帮忙看看!

1赞

正常测试验证时 debug,release 包崩溃会发生吗,这是偶然情况?