添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

先给上官方文档上的用法

// load the prefab (project/assets/resources/misc/character/cocos) from resources folder
cc.loader.loadRes('misc/character/cocos', function (err, prefab) {
    if (err) {
        cc.error(err.message || err);
        return;
    cc.log('Result should be a prefab: ' + (prefab instanceof cc.Prefab));
});
// load the sprite frame of (project/assets/resources/imgs/cocos.png) from resources folder
cc.loader.loadRes('imgs/cocos', cc.SpriteFrame, function (err, spriteFrame) {
    if (err) {
        cc.error(err.message || err);
        return;
    cc.log('Result should be a sprite frame: ' + (spriteFrame instanceof cc.SpriteFrame));
});

要注意其中的function(err, xxxx) 是一个加载资源完成时的回调函数。对于该函数官方的说明如下:
completeCallback Function Callback invoked when the resource loaded.
error Error The error info or null if loaded successfully.
resource Object The loaded resource if it can be found otherwise returns null.

1.资源要作为预制体放到assets/resources文件夹下(自行创建);预制资源的创建,在场景中编辑好节点后,直接将节点从 层级管理器 拖到 资源管理器(resources文件夹)中:

2.要在completeCallback函数内部使用外层的this,直接在内部使用this是不行的。可以如下操作:

onLoad(){
	var self = this;
	 cc.loader.loadRes("player", function (err, prefab){
          var newNode = cc.instantiate(prefab);
          //保存到self中以便外部需要。
          self.node.addChild(newNode);
     });

3.要在资源加载完成,即调用完completeCallback函数后,才能在其他地方使用刚加载的资源。

先给上官方文档上的用法// load the prefab (project/assets/resources/misc/character/cocos) from resources foldercc.loader.loadRes('misc/character/cocos', function (err, prefab) { if (err) { cc.error(...
cc.loader.loadRes('prefab/stageitem', (err, data)=>{ // 注意,这里的prefab/stageitem的根目录是assets/resource if (err) { console.error('cc.loader.loadRes prefab/stageitem ' + err.m...
2.注意事项以及主要函数: ①注意事项:使用loadRes函数,资源必须放置在assets下的resources文件夹下(默认没有resources文件夹,需要自己创建;不只是图片,所有的资源都应该放置在resources文件夹或者子文件夹下)。 ②加载资源函数:cc.loader.loadRes(无后缀文件路径,... this._spriteFrame.getTexture is not a function cc.loader.loadRes('btns/'+bg_name,cc.SpriteFrame,function(err,spriteFrame){ console.log(bg_sprite.spriteFrame = spriteFrame); 使用动态加载图片时,需要将资源放到assets下的resources文件下,名字错了就读不出来。
cc.loader 加载资源 动态加载资源要注意两点,一是所有需要通过脚本动态加载的资源,都必须放置在 resources 文件夹或它的子文件夹下。resources 需要在 assets 文件夹中手工创建,并且必须位于 assets 的根目录; Creator 提供了 cc.loader.loadRes 这个 API 来专门加载那些位于 resources 目录下的 Asset。和 cc.loa...
动态加载Asset cc.loader.loadRes:用来加载resource目录下的Asset(资源) 和cc.loader.load不同的是,loadRes每次只能加载一个Asset。调用时只需传入相对resource的路径即可,并且路径结尾处不能包含文件扩展名
cc.loader.loadRes("sounds/music/home_scene_bg", cc.AudioClip, function(err, clip) { sound_manager.play_music(clip, true); 资源的url不需要写根目录resources,也不需要加文件类型后缀 转载于:h...
Cocos Creator 加载文本文件 之前用cocos creator加载一些cc.SrpiteFrame的时候,利用cc.loader.loadRes()方法甚是便捷。cc.loader.loadTxt被移除之后,怎么加载文本文件呢? cc.loader.loadRes 我们知道cc在动态加载文件的时候需要将文件放在resources文件下。其次我们要搞清楚的一点事,如下代码中的r...
//加载房间预制 let path = 'Fish/wbTexture/singleRoomPre' cc.loader.loadResDir(path, cc.Prefab, (err, ass2) => { //, if (err) console.log('rommSA ERR ' + e...
1. 在需要画虚线的精灵节点上添加精灵渲染组件。 2. 在精灵渲染组件的 "srcBlend" 属性中选择 "SrcAlpha",在 "dstBlend" 属性中选择 "OneMinusSrcAlpha"。 3. 设置精灵的 "SpriteFrame" 属性为一张图片,图片中包含虚线。 4. 在脚本中通过调整精灵的 "opacity" 属性来控制虚线的明暗程度。 参考代码: const sprite = this.node.getComponent(cc.Sprite); sprite.srcBlend = cc.BlendFunc.SRC_ALPHA; sprite.dstBlend = cc.BlendFunc.ONE_MINUS_SRC_ALPHA; 请注意,这种方法不能在 WebGL 渲染模式下使用。如果需要在 WebGL 渲染模式下使用,则可以使用自定义材质或使用线渲染组件。