第十六章:AssetManager接口介绍

下面的文章,是我早期阅读jME3源代码时整理的笔记,主要介绍了 AssetManager 中的主要接口。结合上一篇文章,可以深入了解AssetManager的具体用法。 核心组件介绍 AssetManager 这是JME3资源管理器的核心接口,它提供了统一的方式来管理各种资源。 (1) 注册资源加载器 public void registerLoader(Class loaderClass, String ... extensions) 根据后缀名来注册资源加载器。没有注册过的资源类型是无法被AssetManager识别的。 例: assetManager.registerLoader(AWTLoader. ...

第十五章:AssetManager工作流程

基本过程 jME3 使用Java I/O来读取资产数据,把整个过程分为三个步骤: 一、打开输入流 这一步通常会根据资源路径(URL)获得一个 InputStream 对象,程序可以通过这个对象来读取数据。输入流的来源可能多种多样,例如: 文件路径 new FileInputStream("D:\MyGame\Save\savedata.dat") 网络地址 socket. ...

第十四章:Java I/O流

有一个笑话是这样的: 问:要把大象装冰箱,一共分几步? 答:分三步,一把冰箱门打开,二把大象放进去,三把冰箱门关上。 这个笑话的无厘头之处在于,正常人都明白把大象放进冰箱是最难的,而打开、关上冰箱门根本不算事。回答的人却一本正经地把它们放在一起说,仿佛把大象放进冰箱是像打开冰箱门一样简单的问题。 Java 的 I/O 流也分三步,一打开I/O流,二读/写数据,三关闭I/O流。 ...

第十三章:常见异常

AssetLoadException 加载资产时,程序一运行就产生了 com.jme3.asset.AssetLoadException: No loader registered for type "xxx" 异常 严重: Uncaught exception thrown in Thread[jME3 Main,5,main] com.jme3. ...

第十二章:自定义资产路径

默认情况下,JME3 程序总是从 MyGame/assets 目录中加载资产。但这并不是唯一的选择,还可以在 AssetManager 中配置其他资产路径。 本文将介绍如何使用 jME3 提供的 AssetLocator 来配置自定义资产路径。后续章节中我会继续介绍 AssetLocator 的原理,并通过案例来演示如何实现从加密资源包中解析数据。在了解原理后,你可以根据具体的算法来实现自己的 AssetLocator。 AssetLocator 在介绍具体的做法之前,先考虑一下可能存在的情况: 游戏允许用户上传自定义模型和皮肤, ...