7-18关于预制件和添加图片
来源:互联网 发布:外国人怎么淘宝买东西 编辑:程序博客网 时间:2024/05/21 06:28
resources
文件夹里面的资源,可以关联依赖到文件夹外部的其它资源,同样也可以被外部场景或资源引用到。项目构建时,除了已在 构建发布 面板勾选的场景外,resources
文件夹里面的所有资源,连同它们关联依赖的resources
文件夹外部的资源,都会被导出。所以如果一份资源不需要由脚本直接动态加载,那么不用放在resources
文件夹里。
动态加载 Asset
Creator 提供了 cc.loader.loadRes
这个 API 来专门加载那些位于 resources 目录下的 Asset。和 cc.loader.load
不同的是,loadRes 一次只能加载单个 Asset。调用时,你只要传入相对 resources 的路径即可,并且路径的结尾处不能包含文件扩展名。
// 加载 Prefabcc.loader.loadRes("test assets/prefab", function (err, prefab) { var newNode = cc.instantiate(prefab); cc.director.getScene().addChild(newNode);});// 加载 AnimationClipcc.loader.loadRes("test assets/anim", function (err, clip) { myNode.getComponent(cc.Animation).addClip(clip, "anim");});// 加载 SpriteAtlas(图集),并且获取其中的一个 SpriteFrame// 注意 atlas 资源文件(plist)通常会和一个同名的图片文件(png)放在一个目录下, 所以需要在第二个参数指定资源类型cc.loader.loadRes("test assets/sheep", cc.SpriteAtlas, function (err, atlas) { var frame = atlas.getSpriteFrame('sheep_down_0'); sprite.spriteFrame = frame;});
例子:
var personOb = { name:"神秘人", icon:"pic/map_person/NPC1", position:cc.p(100,-100) } this._buildPersonWithOb(personOb)
_addSpriteFrameToContainer:function(container, name){ //动态添加图片 container.spriteFrame = this.loadWaitImage cc.loader.loadRes(name, cc.SpriteFrame, function (err, atlas) { container.spriteFrame = atlas }); //延迟动态添加图片 // container.spriteFrame = this.loadWaitImage // cc.loader.loadRes(name, cc.SpriteFrame, function (err, atlas) { // setTimeout(function() { // container.spriteFrame = atlas // }, 1000); //}); }, _buildPersonWithOb:function(personOb){ var that = this cc.loader.loadRes("prefab/person",function (err, prefab) { //实例化预制件 var newNode = cc.instantiate(prefab); //延迟添加图片属性 that._addSpriteFrameToContainer(newNode.getChildByName('pic').getComponent(cc.Sprite), personOb.icon) //给预制件添加图片属性 // var container = newNode.getChildByName('pic').getComponent(cc.Sprite) // var atlas = personOb.icon // container.spriteFrame = atlas // newNode.getChildByName("pic").getComponent(cc.Sprite),personOb.icon //给预制件添加文本框属性 newNode.getChildByName('name').getComponent(cc.Label).string = personOb.name //给预制件添加坐标 newNode.setPosition(personOb.position) //给预制件添加到背景中 that.NPC.addChild(newNode) }) },
这是在resources里面的预存的图片和预制件的添加。
0 0
- 7-18关于预制件和添加图片
- cocos creator 运用预制件和配置文件添加对象
- Unity3D_组合体和预制件
- 运用预制件添加人物(让程序顺序执行 , 待修改)
- Android学习笔记(7)---关于GridView的使用,添加图片和标题
- Unity3D中的预制件(Prefab)的创建和使用说明!!!
- Unity3d十 Unity3D中的预制件(Prefab)的创建和使用说明
- 添加图片测试--关于我
- 添加工具栏和工具栏按钮添加图片
- Button添加图片和文字
- listbox和comebox添加图片
- 数据库中添加图片和获得图片
- EditText添加图片和显示图片
- 在图片上添加文字和图片
- 关于treelist的添加节点,图片
- 关于java实现给图片添加水印
- 关于VS2012的javascript添加图片问题
- django 页面添加图片 关于静态文件
- 开发知识点总结(期待你的评论)
- JavaScript 中的DOM1
- Android四大组件之Service(浅谈)
- Linux下redis的安装
- 用两个栈实现队列
- 7-18关于预制件和添加图片
- inner join, left outer join, right outer join
- app 欢迎界面
- Snackbar提示框
- Google FlatBuffers使用教程
- Spring Session入门(包含示例项目)
- Linux网络配置
- Spring Boot实战之Redis缓存登录验证码
- 面经总结