将 .exr 高度图解析为 mongoDB 数据库

Parsing .exr heightmap into a mongoDB database

本文关键字:mongoDB 数据库 exr 高度      更新时间:2023-09-26

对于我目前正在创建的基于自上而下的图块的 2d 游戏,我需要将包含高度图数据的 .exr 文件解析到我的 mongodb 中(或将其转换为其他格式,然后读取到数据库中)。

这基本上是我的游戏世界的表示,我通过使用Terragen制作了它。

我想我需要读出每个像素的高度图数据,然后将其转换为数据库中的 x,y 图块。

如果我能做到这一点,我应该留下一个 2d 图块数组,上面附有各种 x,y 坐标和高程。从那里,我应该能够确定游戏世界中那个地方的瓷砖类型,并继续前进。

但是,我不知道如何从这个.exr文件中提取数据,然后将其读取到mongoDB数据库上的2d地理空间索引数组中。

希望有人能帮忙! :)

好的,我将用部分答案来回应。如果有人有完整的答案,请添加它,我会更新。

为了解决这个问题,我将.exr文件带入Photoshop,然后保存为32位.tif文件。从这里,我下载了GDAL(http://www.gdal.org/)并安装了gdal_translate实用程序。

然后,该实用程序能够获取.tif数据并将其分成多个.png文件。

最后,我将每个.png文件分别解析到我的数据库中,将后续数据添加到我在解析所有 png 文件时运行的每个"像素"。

最终得到一个二维地理空间数组,其中包含非常精确的高程数据。