【问题标题】:Need support in LWJGL - Setting the type of texture需要 LWJGL 支持 - 设置纹理类型
【发布时间】:2011-08-18 17:19:15
【问题描述】:
有人可以帮我设置不同的纹理类型吗? (GL_LINEAR、GL_NEAREST 等)我正在使用带有 netbeans 的 slick-util 库。问题是我无法设置为不同的类型。
我记录并发现如果我想使用 MIP_MAP,那么我需要创建它们。问题是我无法创建它们。所以问题是!
如何使用或不使用 slick-util 纹理进行创建,以及如何将它们设置为不同的纹理类型。我知道它是如何用 c++ 制作的,但还没有在 java 中实现?
谢谢你的时间,
苏尔扎,
【问题讨论】:
标签:
opengl
textures
lwjgl
【解决方案1】:
Mipmapping 意味着您需要为每个纹理指定一个所谓的image pyramid。用外行的话来说,你从第 0 层开始,对于接下来的每一层,你将分辨率向下取整,直到达到 1×1 的图像大小。
OpenGL(和任何其他 mipmapping 渲染器)只有在 complete 时才会应用 mipmapped 纹理。您可以指定要使用的最低和最高级别,但必须提供其间的所有级别。
我不知道 slick utils,但如果它可以让你缩放图像,你可以使用这样的东西(伪代码)
level = 0
while ceil(image.width) > 1 or ceil(image.height) > 1:
glTexImage(GL_TEXTURE_2D, level, image.width, image.height, ...)
image.scale(0.5, 0.5)
level = level + 1