3
我目前正在设计和开发定制的图像查看器,用于格外大的图像文件(有时在gigapixels中)。幸运的是,这些在分阶段的分辨率层中以256x256的方式提供,然后在需要时传递给OpenGL。用OpenGL QuadTree渲染大型矩形平铺图像
这些瓷砖本身是通过QuadTree进行管理的,这看起来像是一个强大的解决方案,用于“几乎幂”的图像。但是,如果图像具有极宽的纵横比(例如,1千像素x 50,000),则模型会以大量的空图块开始动摇。 一次只能显示有限数量的图块。
我正在使用Java 7与LWJGL提供OpenGL上下文。
QuadTree解决方案是否适合这个问题,还是有更好的替代方案来管理数据?
编辑:编辑标题使其更有意义。
您可以在顶部添加一个额外的级别,将图像分成四个部分,例如: 20幅50k x 50k的图像,然后使用四叉树作为正方形。 –
如何以及为什么要使用opengl? – dinony
该系统的当前实现是使用Java Graphics2D&JAI来提供图像。这证明不会从头开始。出于这个原因,它正在变成一种OpenGL方法。 OpenGL被用于渲染性能。 我已经实现了一个更LoD瓷砖的原型,它似乎到目前为止工作。你对这个@AndreasHaferburg有什么想法?我知道一个Java系统很可能会降低本地C++的性能,但Java是一个硬编写的系统需求。) –