GameFramework篇:StarForce资源加载细节讲解(二:ResourceComponent详解)
上篇博客已经将编辑器和非编辑器资源加载区分开了,那我们这篇就来具体看看非编辑器模式下资源加载
进入InitResources函数,此时的ResourceManager已经是我们非编辑器模式下的资源器了,所以这篇博客中的m_ResourceManager不再过多赘述
这 里的m_ReadOnlyPath就是也就是我们AB包所在位置,他读取的是StreamAssets文件夹下的version.dat
至于这里面到底加载的啥,我也弄不清楚,应该是资源映射表吧,我们先跟进去看看,我们发现他考虑很多种状况,并加载到了数据流,并通过回调函数,将加载的数据传递出来了
我们再看看这个回调函数,可以看到他做了非常多非常多事情
为加载到的资源打好标签
处理依赖关系
把资源全部加入资源组中
处理各个资源组
此时,已经将所有资源信息都加载到资源组里了, 需要使用的时候直接加载即可。
总结一下过程:
从version.dat读取二进制文件流,利用回调函数解析资源信息并添加到资源组,供项目使用,建议大家多看看这部分代码,稳赚不亏!
这时候已经把资源映射路径做好了,也就是说某种意义上完成了加载路径从Assets/StreamingAssets/到Assets/GameMain/的转变
GameFramework篇:StarForce资源加载细节讲解(二:ResourceComponent详解)相关推荐
- GameFramework篇:StarForce资源加载细节讲解(一:资源加载辅助器)
前前后后看了一星期,才有了这篇博文,再次感叹,心急吃不了热豆腐. 在看这篇博文之前,建议先去了解一下Assetbundle和StreamingAsset和WWW和WebRequest这几个东西以及他们 ...
- python从date目录导入数据集_PyTorch加载自己的数据集实例详解
数据预处理在解决深度学习问题的过程中,往往需要花费大量的时间和精力. 数据处理的质量对训练神经网络来说十分重要,良好的数据处理不仅会加速模型训练, 更会提高模型性能.为解决这一问题,PyTorch提供 ...
- linux如何确定共享库路径,摘录Linux下动态共享库加载时的搜索路径详解
对动态库的实际应用还不太熟悉的读者可能曾经遇到过类似"error while loading shared libraries"这样的错误,这是典型的因为需要的动态库不在动态链接器 ...
- 6.starForce资源加载总结
资源加载最后都是要经过这个函数 无论是打开ui,生成游戏物体,加载配置表,跟踪到最后都会经过这个函数的. 这几个参数就是之前资源加载成功后把资源进行分类的资源组 所以资源加载的流程实际上是 下载成功资 ...
- Android插件化开发之动态加载三个关键问题详解
本文摘选自任玉刚著<Android开发艺术探索>,介绍了Android插件化技术的原理和三个关键问题,并给出了作者自己发起的开源插件化框架. 动态加载技术(也叫插件化技术)在技术驱动型的公 ...
- Java--web.xml加载过程;文件标签详解
一.web.xml加载过程 我们在启动Javaweb项目时,首先需要启动一个容器(如Tomcat,JBoss) WEB加载web.xml过程如下: 1.在启动Web项目时,容器(如Tomcat,JBo ...
- java loadjs_Javarscript中模块(module)、加载(load)与捆绑(bundle)详解
JS模块简介 js模块化,简单说就是将系统或者功能分隔成单独的.互不影响的代码片段,经过严格定义接口,使各模块间互不影响,且可以为其他所用. 常见的模块化有,C中的include (.h)文件.jav ...
- html5 js阻塞加载,js无阻塞加载和defer、async详解_白峰_前端开发者
无阻塞加载 把 下载是异步的没问题,但是每个javascript执行的时候还是同步的,就是先出现的script标签一定是先执行,即使是并行下载它是最后一个下载完成的,除非标有defer的script标 ...
- php8预加载,如何利用预加载优化Laravel Model查询详解
前言 本文主要给大家介绍了关于利用预加载优化Laravel Model查询的相关内容,分享出来供大家参考学习,话不多说了,来一起看看详细的介绍: 介绍 对象关系映射(ORM)使数据库的工作变得非常简单 ...
最新文章
- snp可视化之瀑布图
- SQL SERVER2008 镜像
- Unity 2D游戏开发教程之为游戏场景添加多个地面
- android 单例模式详解,android开发设计模式之——单例模式详解
- Ethernet/IP 学习笔记三
- acquireSharedInterruptibly
- 【IT笔试面试题整理】二叉树中和为某一值的路径--所有可能路径
- 实现了某一个接口的匿名类的例子_java中的内部类内部接口详解,一文搞定
- MaxCompute 实现增量数据推送(全量比对增量逻辑)
- python实现抢劵_用Python实现微信自动化抢红包,再也不用担心抢不到红包了
- hihoCoder挑战赛25
- Qt: QMutex
- js获取url后面的参数值
- JDBC插入百万数据,不到5秒!
- 类似于input输入框placeholder的效果,兼容ie8
- U盘/移动硬盘的文件夹自动分类怎么消除
- 《NVMe-over-Fabrics-1_0a-2018.07.23-Ratified》阅读笔记(3)-- 命令
- STM32/APM32 用DMA采集ADC1多通道--标准库
- ZYNQ - 无DDR固化程序(代码运行在OCM上)
- 表观修饰的“当红炸子鸡” - 组蛋白乳酸化