【Mark】Creator之坑

前言

我的工作室一直在寻找一款游戏引擎,它必须满足以下几个要求:
(1)强类型语言的脚本(Creator支持Typescript)
(2)支持Spine(正版花老钱了)
(3)支持NodeJS(方便连接服务器)
(4)跨平台发布

放眼全球,只有Cocos Creator满足我们的所有要求,所以它成为了我们日常开发的必备工具。

但是,它有着文档混乱落后,JSB双引擎增加的复杂度与坑,ide功能上的残缺等等问题。

所以我们对Cocos Creator有着又爱又恨的感情,但是归根到底还是希望它越来越好。

此贴就是我们记录日常学习工作中使用Creator发现的问题,会一直更新下去,方便查阅,直到它淡出历史舞台。

9赞

Cocos Creator 1.8.2正式版

creator.d.ts:
2459行:AnimationAnimator类没有加入。
5116行:_ccsg对象未建立(遗留问题?)
5252行:TMXTilesetInfo类没有加入。
7553行:Sprite.SpriteType枚举没有加入。
11289行:参数应加入模块名cc.Texture2D.。同一行DOMImageElement是个什么?
11327行:TypedArray类没有加入。
14970行,14979行,14988行,14997行,15006行,15020行:…args参数只能是数组,如果要其他类型可复写这些方法。
17154行:Pool类已被弃用。

另附修改好的sp.spine说明文件:
sp.spine.d.zip (10.1 KB)

另附网友提供的jsb说明文件修改版(只做了语法修改,未作测试)
jsb.d.zip (2.8 KB)

2018/3/10

8赞

赞 

不错,会持续关注楼主,我是1.6的时候初尝creator,1.8正式入坑,希望看到creator越来越好。

Cocos Creator 1.8.2 正式版

模拟器启动后会出现一个奇怪的warning

另外控制台输出的颜色太浅了,而且warning也不是醒目颜色。

2018/3/14

Cocos Creator 1.9.0 最新版

在有canvas的scene里添加canvas会报错(这个正确),然后原本canvas里 的ui会错乱(这就不对了),然后新的canvas还是会被加到scene里(这也不对吧)。
反馈一个cocos bug关于cc.Vec2 继续讨论:
cc.pCross() 与 Vec2.cross() 算法不同。

2018/3/17

Cocos Creator不管是bug还是性能都有待提高,刚换了新工作,同事问我cocos creator好用吗,值不值得学习,我不知道怎么回答!

那要看你同事用的啥

都是做前端的,用VUE,现在要学H5游戏引擎

还有1%左右闪退解决不掉 - -

Cocos Creator 1.9.0 最新版

模拟器关闭websocket时报错:
Simulator: E/jswrapper (447): [ERROR] (…\manual\jsb_websocket.cpp, 447): wrong number of arguments: 2, was expecting 0
Simulator: E/jswrapper (450): [ERROR] Failed to invoke WebSocket_close, location: …\manual\jsb_websocket.cpp:450

浏览器正常。

websocket.close()到底有几个参数??
标准的WS的close是有参数的,不理解这里绑定的函数为什么必须无参数。

没人理……

刚看了C++代码close是没参数的,可是绑定的时候可以丢弃参数啊,干嘛要报错啊??

Cocos Creator 1.9.0 最新版

Windows10环境,打开Cocos Creator,休眠,唤醒后控制台报错如下:

Error: read ECONNRESET
at exports._errnoException (util.js:1050:11)
at TCP.onread (net.js:581:26)
at process.on.t (D:\CocosCreator\resources\app.asar\editor\core\editor-init.js:1:1068)
at emitOne (events.js:101:20)
at process.emit (events.js:191:7)
at process._fatalException (bootstrap_node.js:308:26)
Error: socket hang up
at createHangUpError (_http_client.js:302:15)
at Socket.socketCloseListener (_http_client.js:334:23)
at emitOne (events.js:101:20)
at Socket.emit (events.js:191:7)
at TCP._handle.close [as _onclose] (net.js:510:12)
at process.on.t (D:\CocosCreator\resources\app.asar\editor\core\editor-init.js:1:1068)
at emitOne (events.js:101:20)
at process.emit (events.js:191:7)
at process._fatalException (bootstrap_node.js:308:26)
WebGL error 37442

没人理……

关注加1

谢谢反馈,我们先记下

现在定义get/set函数也和之前的版本不一样里吧?这个怎么没有说明过呢?

主要是这个websocket.close()参数丢弃问题,因为联网游戏要频繁使用。谢谢!

主要是这个websocket.close()参数丢弃问题,因为联网游戏要频繁使用。谢谢!

1,8.1 入坑,希望越来越好

你说的都对。

https://github.com/cocos-creator/cocos2d-x-lite/issues/1157

1赞