接下来的计划主要就是完成 issue 里列出的功能,修复开发者报告的 bug。这几天没更新是因为同时也在忙 cocos2d-x 的事情。
大部分的功能都有了,最近没收到相关的 bug 反馈,所以就没急着更新了。
接下来的计划主要就是完成 issue 里列出的功能,修复开发者报告的 bug。这几天没更新是因为同时也在忙 cocos2d-x 的事情。
大部分的功能都有了,最近没收到相关的 bug 反馈,所以就没急着更新了。
非常感谢开发团队的努力 希望能早日把prefab导出成node的计划列入日程
@minggo
导出的文件不存在bindings文件夹,例子工程我check几次都失败了是我哪里的操作方式不对?
ps:官方插件,还有 https://github.com/cocos2d/creator_to_cocos2dx 的 0.3版本 ap0版本 ap1 版本,我导出之后都没有bangding文件夹
操作平台:windows7 + cocoscreater1.7
http://cocos2d-x.org/docs/cocos2d-x/zh/editors_and_tools/creator_to_cocos2dx.html
请先参考一下这个文档,对于 C++ 的插件导出和使用有二次验证
我去,我一直以为是导出到一个路径下,然后再自己操作,谢谢!!!!!
register_creator_reader_module
register_creator_reader_manual(L);
函数名称错误 麻烦修改下
@minggo android.mk 怎么配置
我用的是 cocos2dx3.16 new的lua工程,win上编译通过,creater导出的secene 也能够显示,但是android.mk配置始终有问题,你能不能发一个模版出来呀
按照上面文档的操作不可以么?文档有提到android项目的lua头文件包含,具体问题发出来看看
大家好, 我目前使用在我的 c++ 项目。 发现了 glCall 跟原本使用studio时比较起来 高达快接近双倍。
从大约90+ glcalls(studio::CSLoader) 变 160+glcalls(creatorReader) ;
为何会变成如此的大?
请求协助。
creator导出到lua,CreatorReader导出的scene的分辨率貌似有点问题,在华为7X的机子,creator导出的scene两边留黑,但是直接代码添加一个精灵并设置x到diplay.width是可以完全显示到黑边上面的
是呀,我也有这个问题,渲染的数量太大了
这个插件可以把cocos creator 的场景导出来给cocos 2d-x 的js项目用吗?
暂时不支持,creator自带cocos2d-js的升级版,js开发者直接转creator是不是更方便?
现在可以单独导出prefa吗,就是获得一个node或者layer
GitHub仓库没看到这样的支持,了解最新的开发内容可以 fork 仓库cocos2d/creator_to_cocos2dx, 关注 [minggo/creator_to_cocos2dx_cpp]((https://github.com/minggo/creator_to_cocos2dx_cpp/tree/master)
CreatorReader中createSprite出来的sprite,sprite->getBlendFunc() 得到的src=3435973836, dst=3435973836,如果赋值creator中的默认值770和771,发光的半透明区域会变黑,不赋值就是正常的。不懂原因呀。
代码中直接创建sprite,getBlendFunc的src=1, dst=771
最好写 16 进制或者是宏的名字,直接写 10 进制 看不出来是什么意思。另外,麻烦贴一些对应的代码片段。
cocos2d::Sprite* CreatorReader::createSprite(const buffers::Sprite* spriteBuffer) const
{
cocos2d::Sprite* sprite = cocos2d::Sprite::create();
if (sprite)
parseSprite(sprite, spriteBuffer);
return sprite;
}
void CreatorReader::parseSprite(cocos2d::Sprite* sprite, const buffers::Sprite* spriteBuffer) const
{
// order is important:
// 1st: set sprite frame
const auto& frameName = spriteBuffer->spriteFrameName();
if (frameName)
sprite->setSpriteFrame(frameName->str());
// 2nd: node properties
const auto& nodeBuffer = spriteBuffer->node();
parseNode(sprite, nodeBuffer);
// 3rd: sprite type
const auto& spriteType = spriteBuffer->spriteType();
switch (spriteType) {
case buffers::SpriteType_Simple:
sprite->setCenterRectNormalized(cocos2d::Rect(0,0,1,1));
break;
case buffers::SpriteType_Tiled:
tileSprite(sprite);
break;
case buffers::SpriteType_Filled:
case buffers::SpriteType_Sliced:
break;
}
cocos2d::BlendFunc spBlendFunc = sprite->getBlendFunc();**//这里是src=3435973836, dst=3435973836**
const auto& srcBlend = spriteBuffer->srcBlend(); **//这里是gl.SRC_ALPHA**
const auto& dstBlend = spriteBuffer->dstBlend();**//这里是gl.ONE_MINUS_SRC_ALPHA**
cocos2d::BlendFunc blendFunc;
blendFunc.src = srcBlend;
blendFunc.dst = dstBlend;
sprite->setBlendFunc(blendFunc);
#if 0
// FIXME: do something with these values
const auto& isTrimmed = spriteBuffer->trimEnabled();
const auto& sizeMode = spriteBuffer->sizeMode();
#endif
}
上面是CreatorReader.cpp中的
下面是lua中手动创建
local test = display.newSprite("#EF_dice_yxs_1.png"):addTo(self.m_scene):move(display.cx, display.cy)
dump(test:getBlendFunc(), “iffffffffffffff”)
结果是:
[LUA-print] - "iffffffffffffff" = {
[LUA-print] - "dst" = 771
[LUA-print] - "src" = 1
[LUA-print] - }
你是在哪里赋值的?为什么要这样赋值?