图集预加载问题

####使用cc.loader.loadRes加载了一张图集spriteAtlas,然后使用cc.loader.getRes返回的却是texture2d,大神知道怎么回事吗? 目的就是想在a处加载一张图集,然后在b处使用,以前的spriteFrameCache没有了,现在该怎么实现啊?官方例子也没见有使用cc.loader.loadRes的,资源预加载然后进入游戏这情况很常见的吧?

之后我们会允许 getRes 传入一个 cc.SpriteAtlas 参数来保证返回的不是贴图。目前建议 loadRes 后自己将资源保存在变量中,而不是使用 getRes 获得资源。

好吧。。这个在1.3版本会加上吗?

抱歉还不会 asfd

还有一个问题麻烦下,在a处loadRes完成后,在b处再次loadRes,两次加载的是同一个图集,发现在b处不是立刻加载完成,会延迟一帧才往下执行,不知道是不是缺陷,按说不会反复加载,a处加载好之后,b处再加载应该立刻完成而不是延迟一帧。

虽然不会重复加载,但为了保证对同一个 API 的调用,不会出现偶尔同步偶尔异步的情况,所以都会延迟到下一帧才回调。否则很容易在程序逻辑上出现错误,详细说明你可以搜索下 “releasing zalgo”

像加载资源这种能不能给一个同步的接口呢? 可以忍受io的阻塞. 异步的话会将代码变得更复杂

没办法,同步接口会阻塞主循环,引起游戏卡顿。