#python #image
#python #изображение
Вопрос:
У меня есть код Python, вывод которого представляет собой файл .png. Что я должен сделать, чтобы получить вывод в окне OpenGL? Я поискал в нескольких местах, и самым близким, что у меня получилось для преобразования изображения, был StringIO (), но это не показалось мне очень полезным.
Комментарии:
1. как насчет использования glReadPixel()?
2. glReadPixel () изначально не работает с PNG. Вам все равно нужно будет преобразовать его в совместимый формат.
Ответ №1:
Прежде всего, вам нужны привязки OpenGL для создания окна OpenGL. Попробуйте PyOpenGL
Следующий шаг — посмотреть на код. Я предполагаю, что создается какой-то объект изображения, затем на нем что-то рисуется и, наконец, изображение сохраняется в формате PNG.
На этом этапе вам нужно преобразовать данные изображения (подробности см. в документах) во что-то, что PyOpenGL может отображать. Пример в конце этой страницы должен помочь вам начать.
Ответ №2:
Если вы хотите что-то для обработки более сложных деталей, вы могли бы настроить свой OpenGL с помощью pygame, затем используйте
surface = pygame.image.load(fileobj)
Где fileobj — это любой объект с «файлоподобным» интерфейсом. Вам нужно будет модифицировать генератор PNG для записи в этот объект, а не в реальный файл.