Cocos Creator的C++和Lua支持:0.4版发布

我觉得应该在现在creator基础上拉一个分支改成c++,lua支持的版本,c++,lua不支持的功能都屏蔽掉,这样就好多了,感觉也花不了多少精力,抽一个人全力做这件事,几个月后应该就完善了。

/Users/janroid/workspace/cocos/project/TexasDemo/frameworks/runtime-src/proj.android/app/jni/…/…/…/Classes/AppDelegate.cpp:97: error: undefined reference to ‘register_creator_reader_module(lua_State*)’

我配置好头文件后,运行android项目报出了这个错误,请问是什么问题?
mac电脑
cocos2d-x 3.17 + creator 1.10.1

AppDelegate.cpp已经添加如下代码
include “reader/lua-bindings/creator_reader_bindings.hpp”
register_creator_reader_module(L);

对应的 cpp 没编译,检查有没有 include 子模块,链接对应的静态库

希望以后的cocos2dx 都支持 cocostudio,cocostudio 比这个插件好用

其实应该是 c++ & cocos creator的引擎内核 & WASM/asm.js/jsb & 界面编辑器 就够了,不需要搞那什么一体化的编辑器。

include子模块是指哪里配置?
链接静态库的话,我的android.mk是这样配置的:
LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := cocos2dlua_shared

LOCAL_MODULE_FILENAME := libcocos2dlua

LOCAL_SRC_FILES :=
…/…/…/Classes/AppDelegate.cpp
hellolua/main.cpp

LOCAL_C_INCLUDES := $(LOCAL_PATH)/…/…/…/Classes
#_COCOS_HEADER_ANDROID_BEGIN

_COCOS_HEADER_ANDROID_END

LOCAL_STATIC_LIBRARIES := cocos2d_lua_static

_COCOS_LIB_ANDROID_BEGIN

_COCOS_LIB_ANDROID_END

include $(BUILD_SHARED_LIBRARY)

(call import-add-path, (LOCAL_PATH)/…/…/…/…/cocos2d-x)
(call import-module, cocos/scripting/lua-bindings/proj.android) (call import-module, …/runtime-src/Classes/reader)

_COCOS_LIB_IMPORT_ANDROID_BEGIN

_COCOS_LIB_IMPORT_ANDROID_END

插件的 readme,和文档,都有写

LOCAL_STATIC_LIBRARIES 要加上插件的,具体参见:

http://cocos2d-x.org/docs/cocos2d-x/zh/editors_and_tools/creator_to_cocos2dx.html

creator_to_cocos2dx/README.md

确实,最终这样子就可以了,感谢

LOCAL_PATH := $(call my-dir)

include $(CLEAR_VARS)

LOCAL_MODULE := cocos2dlua_shared

LOCAL_MODULE_FILENAME := libcocos2dlua

LOCAL_SRC_FILES :=
…/…/…/Classes/AppDelegate.cpp
hellolua/main.cpp

LOCAL_C_INCLUDES := $(LOCAL_PATH)/…/…/…/Classes
#_COCOS_HEADER_ANDROID_BEGIN

COCOSHEADER_ANDROID_END

LOCAL_STATIC_LIBRARIES := cocos2d_lua_static
LOCAL_STATIC_LIBRARIES += creator_reader_lua
LOCAL_STATIC_LIBRARIES += creator_reader

COCOSLIB_ANDROID_BEGIN

COCOSLIB_ANDROID_END

include $(BUILD_SHARED_LIBRARY)

(call import-add-path, (LOCAL_PATH)/…/…/…/…/cocos2d-x)
(call import-module, cocos/scripting/lua-bindings/proj.android) (call import-module, …/runtime-src/Classes/reader)

COCOSLIB_IMPORT_ANDROID_BEGIN

COCOSLIB_IMPORT_ANDROID_END

1赞

添加了LOCAL_STATIC_LIBRARIES += creator_reader_lua # for lua project
这段后,提示‘Cause: executing external native build for ndkBuild ’
请问是什么原因?我确定我的ndk设置没有错误,build其他程序是没问题的

creator to cocos2d-x目前还在维护迭代版本么?下一个版本计划会什么时候发布?

编译错误, 求助大神!
苹果电脑mac
xcode10.1
cocos2dx 3.17.1
creator 2.0.9
c++插件 0.4
xcode 提示link错误:
/clang:-1: linker command failed with exit code 1 (use -v to see invocation)
export IPHONEOS_DEPLOYMENT_TARGET=6.0
Undefined symbols for architecture x86_64:

昨天搞到半夜三点多, 求大神帮助! 是不是我的环境太新啊?

搞通了, 这里记录一下给各位:
环境:
mac
xcode10.1
cocos2dx3.17.1
creator1.9.3(上面好像说不支持2.0以上)

xcode10.1会提示 reader/dragonbones/下面的android.mk和CMakeLists.txt重复, 将其改名通过(我未测试安卓和使用这个目录的功能)

xcode头文件搜索增加:$(SRCROOT)/…/Classes/reader

framework增加:MediaPlayer.framework (否则link错误)

cpp增加场景写法(hellowword.cpp):
#include “reader/CreatorReader.h”

Scene* HelloWorld::createScene()
{
creator::CreatorReader* reader = creator::CreatorReader::createWithFilename(“creator/Scene/helloworld.ccreator”);

// will create the needed spritesheets + design resolution
reader->setup();

// get the scene graph
Scene* scene = reader->getSceneGraph();

return scene;
//return HelloWorld::create();

}

大概就这样了 跑起来了, 还没试验控制组件, 稍后继续报道

仓库里同时支持 Cocos Creator 1.93 和 2.09,只支持win32的
https://github.com/Kuovane/creator_to_cocos2dx
支持大多数控件
修改,更新,使用情况详情,请看
https://github.com/Kuovane/creator_to_cocos2dx/blob/master/Update.md

欢迎各位同学使用此仓库的插件,此插件已用于项目中。

是自己维护增加功能了么 大佬

导出的功能跟 creator 上看到的效果一致,并没有增加功能,只是以前的插件有些功能没支持到位。

我试验了一下好像还是不支持2.0.9,我是苹果mac电脑,存盘输出工程提示错误. 请正式发布一个0.5版吧,拜托了.

这个插件停更了吗?

请问prefab预制体怎么读取啊?

1赞

这是个人项目还是官方?

个人的