如何为three.js编写加载程序?

如何为three.js编写加载程序?,three.js,Three.js,我想为three.js编写一个Ldraw加载程序;是一种基于文本的乐高模型开放格式 我熟悉这种格式(我用另一种语言实现了一个解析器),但我在理解three.js加载程序体系结构时遇到了困难 加载器是如何构造的?我已经尝试过阅读现有网格的源代码,但我需要一些入门指南。Ldraw描述了标准网格集(带有颜色和pip配置的块)、相对于0,0,0的旋转和位置。Ldraw线条也可以描述网格级别和线条信息。该格式支持多种方法。支持线型1将与2-5大不相同。您是否检查过是否有人将转换器转换为三种支持的装载机类型

我想为three.js编写一个Ldraw加载程序;是一种基于文本的乐高模型开放格式

我熟悉这种格式(我用另一种语言实现了一个解析器),但我在理解three.js加载程序体系结构时遇到了困难


加载器是如何构造的?我已经尝试过阅读现有网格的源代码,但我需要一些入门指南。

Ldraw描述了标准网格集(带有颜色和pip配置的块)、相对于0,0,0的旋转和位置。Ldraw线条也可以描述网格级别和线条信息。该格式支持多种方法。支持线型1将与2-5大不相同。您是否检查过是否有人将转换器转换为三种支持的装载机类型之一:?我使用过该格式(不是three.js),但只使用了行类型0和1,但能够支持许多模型。感谢@Radio-我熟悉Ldraw,我不完全理解three.js加载程序逻辑。您需要阅读并理解加载程序类:在查看这些类之后,从examples文件夹中删除/重命名SVGLoader类,并确认可以加载文件。然后转到loadingManager。loadingManager最常用于加载纹理,就像在JSONLoader中一样。线型1外部文件将需要它。一旦确认正在加载所有支持文件,就可以开始解析所有文件中的行类型2-5。以OBJLoader解析器等示例为例,介绍如何创建本机三几何体对象。Ldraw描述了标准网格集(具有颜色和pip配置的块)、相对于0,0,0的旋转和位置。Ldraw线条也可以描述网格级别和线条信息。该格式支持多种方法。支持线型1将与2-5大不相同。您是否检查过是否有人将转换器转换为三种支持的装载机类型之一:?我使用过该格式(不是three.js),但只使用了行类型0和1,但能够支持许多模型。感谢@Radio-我熟悉Ldraw,我不完全理解three.js加载程序逻辑。您需要阅读并理解加载程序类:在查看这些类之后,从examples文件夹中删除/重命名SVGLoader类,并确认可以加载文件。然后转到loadingManager。loadingManager最常用于加载纹理,就像在JSONLoader中一样。线型1外部文件将需要它。一旦确认正在加载所有支持文件,就可以开始解析所有文件中的行类型2-5。请看一个例子,例如OBJLoader解析器,作为如何创建本机三几何体对象的例子。