Javascript 在frame.io中创建大量多维数据集的干净方法

Javascript 在frame.io中创建大量多维数据集的干净方法,javascript,graphics,3d,voxel,aframe,Javascript,Graphics,3d,Voxel,Aframe,我有一个系统,它读取SVG图像,然后根据这些数据生成体素世界。基本上,SVG图像告诉程序将哪个块放在哪里 到目前为止,它适用于Minecraft,但我想更改它,以便它以浏览器友好的方式创建体素世界(即,人们可以在不安装Minecraft和所需基础设施的情况下查看模型) 那里会有很多立方体。一个明显的方法是生成包含大量语句的HTML页面,但我认为它并不优雅,并且可能会导致大型模型出现问题 在外部(非JavaScript)应用程序中创建基于frame.io的体素世界时,我有哪些选择?我正在寻找一种解

我有一个系统,它读取SVG图像,然后根据这些数据生成体素世界。基本上,SVG图像告诉程序将哪个块放在哪里

到目前为止,它适用于Minecraft,但我想更改它,以便它以浏览器友好的方式创建体素世界(即,人们可以在不安装Minecraft和所需基础设施的情况下查看模型)

那里会有很多立方体。一个明显的方法是生成包含大量
语句的HTML页面,但我认为它并不优雅,并且可能会导致大型模型出现问题


在外部(非JavaScript)应用程序中创建基于frame.io的体素世界时,我有哪些选择?我正在寻找一种解决方案,它将在无头模式下工作(即,我将SVG文件发送到服务器,并在那里将其转换为AFrame.io体素世界)。

请看一些示例,例如使用它可能足以满足您的需要


据我所知,要么你合并到一个对象并获得性能,但没有灵活性,要么你不合并,但期望性能有所提高。如果不测量并粗略估计场景和目标平台的大小,我会说。。。请先尝试不合并或导出。

查看一些示例,例如使用它可能足以满足您的需要


据我所知,要么你合并到一个对象并获得性能,但没有灵活性,要么你不合并,但期望性能有所提高。如果不测量并粗略估计场景和目标平台的大小,我会说。。。请先尝试不合并或导出。

您可以使用模板组件:。这样您就可以在HTML中使用for循环


或实体生成器组件:。传递一个mixin,它将使用该mixin创建X个实体。然后您可以与其他组件(如布局或随机化器)组合以自定义

您可以使用模板组件:。这样您就可以在HTML中使用for循环


或实体生成器组件:。传递一个mixin,它将使用该mixin创建X个实体。然后您可以与其他组件(如layout或randomizer)组合以自定义

谢谢,但我不想使用MagicaVoxel。我很想知道,像MagicaVoxel这样的软件是如何以一种帧兼容的方式导出模型的。MagicaVoxel导出到标准obj+mtl格式。所谓“标准obj”格式,你是指这个吗?是的,没错,基本上是一个列出顶点坐标的文本文件,当用框架或其他3D引擎放回去时,会显示一个几何体。谢谢,但我不想使用MagicaVoxel。我很想知道,像MagicaVoxel这样的软件是如何以一种帧兼容的方式导出模型的。MagicaVoxel导出到标准obj+mtl格式。所谓“标准obj”格式,你是指这个吗?是的,没错,基本上是一个列出顶点坐标的文本文件,当由帧或其他3D引擎放回时,会显示几何图形。与显示OBJ文件相比,模板组件和实体生成器的优缺点是什么(如前面的答案所述)?请注意,我希望该解决方案能够处理具有数百个体素的体素模型。我认为如果您能够事先将SVG转换为OBJ,效果会更好。也许通过解析它。事实上,我只是重读了你的问题,我的回答没有意义,对不起。您可以尝试为每个体素创建一个框,并合并几何体(检查几何体组件API),以便所有内容都是一个绘制调用。与显示OBJ文件(如前一个答案中所述)相比,模板组件和实体生成器的优缺点是什么?请注意,我希望该解决方案能够处理具有数百个体素的体素模型。我认为如果您能够事先将SVG转换为OBJ,效果会更好。也许通过解析它。事实上,我只是重读了你的问题,我的回答没有意义,对不起。您可以尝试为每个体素创建一个框,并合并几何体(检查几何体组件API),以便所有内容都是一个绘制调用。