cocoscreator-doc-TS-脚本开发-获取和设置资源

资源属性的声明

cc.Asset 的子类下面这些

        cc.Texture2Dcc.SpriteFramecc.AnimationClipcc.Prefab 等

加载场景,会自动加载场景关联的资源 ,再加载关联的资源所关联的资源,直到全加载

在属性检查器中设置资源

@property(cc.Label)

    label: cc.Label = null;

@property({

        type:cc.Enum(WallType),

        displayName:"text2",

    })

text3=WallType.Left;  

界面上显示 text2,代码里实际使用的是 text3

动态加载 resources

//prefab
cc.resources.load(url,cc.Prefab,(err,prefab)=>{
            
            let node = cc.instantiate(prefab);
            
             node.parent = fatherNode;
        })

cc.resources.load(url,cc.SpriteFrame, loadCallBack ); 


//SpriteAtlas
cc.resources.load(url,cc.SpriteAtlas,(err,atlas)=>{
            let node = new cc.Node;
            let sprite = node.addComponent(cc.Sprite);
            sprite.spriteFrame = atlas.getSpriteFrame('sheep_run_0');
 
        })

cc.resources.load(url, sp.SkeletonData, loadCallBack);
cc.resources.load(url, cc.Font, loadCallBack);
cc.resources.load(url, cc.ParticleAsset, loadCallBack);

//Audio
cc.resources.load(url, loadCallBack);

//Scene
cc.resources.loadScene(url, loadCallBack);

资源释放

某资源

cc.resources.release("test assets/image", cc.SpriteFrame);

cc.resources.release("test assets/anim");

某实例

cc.assetManager.releaseAsset(spriteFrame);

资源批量加载

// 加载 test assets 目录下所有资源

cc.resources.loadDir("test assets", function (err, assets) { // ... });

// 加载 test assets 目录下所有 SpriteFrame,并且获取它们的路径

cc.resources.loadDir("test assets", cc.SpriteFrame, function (err, assets) { // ... });

预加载资源

preload 和 preloadDir 预加载加载完,再加载一遍

cc.resources.preload('test assets/image', cc.SpriteFrame);

加载远程资源和设备资源

暂时不用,不看了

辨析

        cc.resources.load 等 API 只适用于应用包内的资源和热更新的本地资源

         cc.assetManager.loadRemote 可以加载远程贴图 如用户头像

资源的依赖和释放

在加载完资源之后,所有的资源都会临时被缓存到 cc.assetManager 中

cc.resources.load('image', cc.SpriteFrame, (err, spriteFrame) => {
    this.spriteFrame = spriteFrame;
    spriteFrame.addRef();//加引用计数
});


this.spriteFrame.decRef();  //减引用计数
this.spriteFrame = null;

详细的资源释放机制请参考 资源释放。

配置和加载 Asset Bundle

Asset Bundle 可以打包 代码资源 和 场景 作为分包加载

让项目启动更容易,在游戏过程中再按需加载所需的资源所属的bundle文件

配置方法

保留名(系统用,你别用):resourcesinternalmainstart-scene

暂时不用,不学

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/916853.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

在Keil删除原有的组出现系统软件无响应的原因

取消掉core的勾选。 keil 添加文件夹,软件崩溃解决办法_keil5创建文件夹卡死-CSDN博客

超越传统:探索ONLYOFFICE的革命性办公新纪元

目录 🍁引言 🍁一、ONLYOFFICE产品简介 (一)、介绍 (二)、基本功能简介 🍁二、核心功能具体介绍 1、编辑操作 2、文本与段落: 3、样式与图形: 4、表格与图表&…

一文说清libc、glibc、glib的发展和关系

一 引言 在大家的技术生涯中,一定会遇到glib、glibc、libc这些个名词。 尤其像我这种对英文名脸盲的人,看着它们就头大,因为单从名字上看,也太像了,所以经常容易混淆。 即使翻翻网上的资料,看完还是有点懵…

OceanBase 升级过程研究(4.2.1.6-4.2.1.8)

模拟业务 使用benchmark加载10仓数据模拟业务场景 升级方法 使用滚动升级方式来进行OB升级。该方法前提是OB集群必须满足官方规定的高可用架构(如果 Zone 个数小于 3,滚动升级时则无法构成多数派), 滚动升级的原理就是轮流完成每个ZONE的升级工作,由于…

使用 Ant Design Vue 自定渲染函数customRender实现单元格合并功能rowSpan

使用 Ant Design Vue 自定渲染函数customRender实现单元格合并功能rowSpan 背景 在使用Ant Design Vue 开发数据表格时,我们常常会遇到需要合并单元格的需求。 比如,某些字段的值可能会在多行中重复出现,而我们希望将这些重复的单元格合并为…

Godot的开发框架应当是什么样子的?

目录 前言 全局协程还是实例协程? 存档! 全局管理类? UI框架? Godot中的异步(多线程)加载 Godot中的ScriptableObject 游戏流程思考 结语 前言 这是一篇杂谈,主要内容是对我…

ssm118亿互游在线平台设计与开发+vue(论文+源码)_kaic

毕业设计(论文) 亿互游在线平台的设计与开发 学生姓名 XXX 学 号 XXXXXXXX 分院名称 XXXXXXXX 专业班级 XXXXX 指导教师 XXXX 填写日期 XXXX年…

MySQL技巧之跨服务器数据查询:基础篇-A数据库与B数据库查询合并

MySQL技巧之跨服务器数据查询:基础篇-A数据库与B数据库查询合并 上一篇已经描述:借用微软的SQL Server ODBC 即可实现MySQL跨服务器间的数据查询。 而且还介绍了如何获得一个在MS SQL Server 可以连接指定实例的MySQL数据库的链接名: MY_ODBC_MYSQL 以…

LLaMA-Factory全流程训练模型

🤗本文主要讲述在docker下使用LLaMA-Factory训练推理模型。 🫡拉取镜像 首先需要启动docker,然后在终端中输入: docker run -tid --gpus all -p 8000:8000 --name LLM -e NVIDIA_DRIVER_CAPABILITIEScompute,utility -e NVIDIA…

英语每日一句

目录 每日一句今日单词知识加餐 每日一句 We will fail when we fail to try. 当我们不努力的时候,我们就会失败。 —— 罗莎帕克斯 今日单词 fail /feɪl/ v. 不及格;失败;未能(做到);失灵&#xff1b…

若点集A=B则A必能恒等变换地变为B=A这一几何常识推翻直线(平面)公理

黄小宁 关键词:“更无理”复数 复平面z各点z的对应点z1的全体是z1面。z面平移变为z1面就使x轴⊂z面沿本身平移变为ux1轴。R可几何化为R轴,R轴可沿本身平移变为R′轴,R′轴可沿本身平移变为R″轴,...。直线公理和平面公理使几百年…

SpringMVC学习笔记(二)

五、Rest风格编程 (一)Rest风格URL规范介绍 1、什么是restful RESTful架构,就是目前最流行的一种互联网软件架构风格。它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用。REST这个词,是Roy T…

PyTorch深度学习与企业级项目实战-预训练语言模型GPT

【图书推荐】《PyTorch深度学习与企业级项目实战》-CSDN博客 13个PyTorch深度学习案例简介-CSDN博客 《PyTorch深度学习与企业级项目实战(人工智能技术丛书)》(宋立桓,宋立林)【摘要 书评 试读】- 京东图书 (jd.com) PyTorch深度学习算法与…

自存 关于RestController请求传参数 前端和后端相关

1.Get请求 Get请求传递参数一般是 1.通过PathVariable来映射 URL 绑定的占位符 后端 GetMapping("test/{id}")public R test(PathVariable Integer id){System.out.println(id);return R.success(id);}前端 export function test(id:any){return request({url:&q…

前端web

题目&#xff1a;制作带有下拉悬停菜单的导航栏 效果图 一、先制作菜单栏 <body> <div id"menu"> <div id"container"> <div class"item">游戏1 <div cla…

RabbitMQ教程:工作队列(Work Queues)(二)

RabbitMQ教程&#xff1a;工作队列&#xff08;Work Queues&#xff09;&#xff08;二&#xff09; 一、引言 在快节奏的软件开发世界中&#xff0c;我们经常面临需要异步处理任务的场景&#xff0c;比如在Web应用中处理耗时的图片处理或数据分析任务。这些任务如果直接在用…

Node.js下载安装及环境配置教程

一、进入官网地址下载安装包 Node.js 中文网 选择对应你系统的Node.js版本&#xff0c;这里我选择的是Windows系统、64位 二、安装程序 &#xff08;1&#xff09;下载完成后&#xff0c;双击安装包&#xff0c;开始安装Node.js (2)直接点【Next】按钮&#xff0c;此处可根据…

免费,WPS Office教育考试专用版

WPS Office教育考试专用版&#xff0c;不仅满足了考试需求&#xff0c;更为教育信息化注入新动力。 https://pan.quark.cn/s/609ef85ae6d4

将 HTML 转换为 JSX:JSX 和 JSX 规则

JSX 是 JavaScript 的语法扩展。您可以在 JavaScript 文件中编写 HTML 格式。 它基于 Web、Html、Css 和 JavaScript。Web 开发人员将页面内容分别编写为 Html 文件&#xff0c;将设计编写为 Css 文件&#xff0c;将逻辑编写为 JavaScript 文件。 须知 &#xff1a; JSX 是一个…

数据结构-二叉树及其遍历

🚀欢迎来到我的【数据结构】专栏🚀 🙋我是小蜗,一名在职牛马。🐒我的博客主页​​​​​​ ➡️ ➡️ 小蜗向前冲的主页🙏🙏欢迎大家的关注,你们的关注是我创作的最大动力🙏🙏🌍前言 本篇文章咱们聊聊数据结构中的树,准确的说因该是只说一说二叉树以及相…