Нужна поддержка в LWJGL - настройка типа текстуры - PullRequest
0 голосов
/ 18 августа 2011

Может кто-нибудь помочь мне установить различные типы текстур? (GL_LINEAR, GL_NEAREST и т. Д.) Я использую библиотеку slick-util с сетевыми компонентами. Проблема в том, что я не могу установить разные типы. Я задокументировал и обнаружил, что если я хочу использовать MIP_MAP, то мне нужно их создать. Проблема в том, что я не могу их создать. Так что вопрос в том! Как я могу создать с или без текстуры Slick-Util и как я могу установить их для различных типов текстур. Я знаю, как это сделано в C ++, но не реализовано в Java?

Спасибо за ваше время, Zsurzsa

1 Ответ

1 голос
/ 18 августа 2011

Mipmapping означает, что для каждой текстуры необходимо указать так называемую пирамиду изображения . С точки зрения непрофессионалов, вы начинаете со слоя 0, и для каждого следующего слоя вы уменьшаете разрешение до половины, пока не достигнете размера изображения 1 × 1.

OpenGL (и любой другой рендерер mipmapping) будет применять текстуру с mipmapped, только если она complete . Вы можете указать минимальный и максимальный уровни для использования, но все промежуточные уровни должны быть предоставлены.

Я не знаю 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
...