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

选中了 Play On Load 的,是用精灵的,能显示出来,调试时看到已经调用 runAnimationClip 方法。
问题是出在 没有关键帧的数据,做的动画也就播不出来了,怀疑动画数据没导出来。

##两个问题
###1,scale 的动画数据未导出,所以无运行效果。
解决:在安装插件里找到 Node.js,添加以下解析代码:

                //scale
                if (props.scale) {
                    result['scaleX'] = [];
                    result['scaleY'] = [];

                     props.scale.forEach(function(scl) {
                        let valueX = {
                            frame: scl.frame,
                            value: scl.value['x']
                        };
                        parseCurveProperty(scl, valueX);
                        result['scaleX'].push(valueX)


                        let valueY = {
                            frame: scl.frame,
                            value: scl.value['y']
                        };
                        parseCurveProperty(scl, valueY);
                        result['scaleY'].push(valueY)
                    });
                }

2,Canvas 里的位移 position 的动画效果 与 Lua 里运行的不一致

暂时解决办法,不放在 Canvas 里。

1赞

支持的怎么样了?
例如是否支持获取特定节点?
设置特定节点的某个属性?
有没有更详细一些的文档说明?
例如获取一个Slider,实时设置进度之类的

解析完 creator 的数据,插件创建对应的 cocos2d-x 节点,组成节点树。所以,获取特定节点,设置节点的属性,这些逻辑全部和 -x 的操作一致,自然是支持的

现有的资料就是仓库 readme,以及官方测试工程

我想问下 能不能集成到cocos引擎里,毕竟是官方自己的东西,还要再集成一遍么
ccs都在引擎里了········

感谢反馈

  1. 这个模块一部分用户在用,如果集成进去,对于没使用的用户会造成额外的负担
  2. 插件目前还不够成熟,现在只到 0.4 版本,特性还没有完全支持
  3. creator 的插件系统已经比较完善,现在对于在 -x 中集成插件,就是将 reader 加入到项目中,难度不大

有上面的原因,近期没有计划把插件中的 reader 集成到引擎中,需要手动加 reader

就不能加个宏开关么。。。

以后插件更完善,用的人多,集成 reader 的呼声比较高,会考虑集成。现阶段,集成过程出现什么问题,我们在论坛提供支持

怎么使用呢???这些场景里的节点怎么在cocos2dx里使用呢??? 怎么去操作节点???

关于您说的第一条:
里边好多功能好多用户其实都是不再是使用了,可依然在引擎里·········这负担,我们不是一直背着呢·······
希望尽快完善下~
那个能不能透露下,3d的大招啥时候放出来?
玩了六年cocos2d··········
我都在想要不要转u3d了

1赞

你说的对,现在引擎就有点臃肿,应该移除一些不会再用到的,比如蹩脚的旧 3D,甚至 js

3d 的大招请参考王哲之前的消息,或者回复王哲的帖子询问,那方面我太清楚,也不能瞎说。现在我知道的是这个插件,和 2d-x 引擎维护相关的事。

所有的节点,都可以通过 get child by name 获取到那个节点,比如 creator 的 Sprite 导出之后,在 cocos2d-x 中依旧是 Sprite,拿到这个节点之后,控制方式一样。

这个插件做的,就是导出 creator 中的节点的数据,解析到有用的数据,用 cocos2d-x 的对应方法重新创建,设置对应的属性。你可以大概阅读一下 CreatorReader.cpp 源码, 了解节点是如何被创建并组织的。

怎么在2dx中调用 cc生成的Prefab呢?没有找到这个方面的资料。求解

这个文档有吗。。或者在引擎里加一些例子也行啊。。啥都没啊。。

2赞

说明文档 https://github.com/cocos2d/creator_to_cocos2dx/blob/master/README.md

Creator 导出测试工程 creator_to_cocos2dx/creator_project

Cocos2d-x 导入测试工程 minggo/cocos2d-x/creator-cpp-support-test-v315

fetch this branch and run cpp-empty-test or lua-empty-test. The branch based on v3.15, don't forget to update external libraries. README 中有提及测试工程

Cocos2d-x 引擎本身的测试例目前不包含插件相关的测试,需要手动集成

现在 prefab 会作为一个节点,在场景中导出,暂时不支持单独导出 prefab 并在 cocos2d-x 中实例化

嗨,下一个版本会支持 Widget 的布局吗?
大概什么时候出下一个版本?

下个版本会支持,版本计划没定。最近的事情完成,我会尽早把支持 widget 的 PR 合并进去,到时候你可以直接用 GitHub 的代码,等版本发布相对漫长。最快的方式,你可以自己用 GitHub 把 PR 在的分支合并到自己的分支,尝试使用,然后反馈,一起完善。

好的,我试试

1赞

花了一些时间把 Widget 的布局合进去,并做了一些修改。
1,支持所有 Node 的布局;
2,需要在名为 root 的节点下,root 的锚点为 (0.5,0.5);
3,支持 AlignOnce 和 多次更新;
已测了多个分辨率,9 种情况,都正常。
有空的时候帮忙看看代码有没什么问题,一起完善一下。
https://github.com/Kuovane/creator_to_cocos2dx

1赞