Название: glReadPixels Отправлено: Sahsa от Май 05, 2016, 07:41 Всем Доброе время суток)
Столкнулся с такой проблемой. Если сохранять в буфер и выводить из буфера изображения в формате GL_RGB, то все работает, а когда GL_LUMINANCE, то нет. Рабочий код: buffer = new unsigned char[m_iHeight * m_iWidth * 3] glPixelStorei( GL_PACK_ALIGNMENT, 1 ); glReadPixels( 0, 0, m_iWidth, m_iHeight, GL_RGB, GL_UNSIGNED_BYTE, buffer ); --//-- glPixelStorei(GL_UNPACK_ALIGNMENT, 1); glDrawPixels(m_iWidth, m_iHeight, GL_RGB, GL_UNSIGNED_BYTE, buffer); Не рабочий код: buffer = new unsigned char[m_iHeight * m_iWidth] glPixelStorei( GL_PACK_ALIGNMENT, 1 ); glReadPixels( 0, 0, m_iWidth, m_iHeight, GL_LUMINANCE, GL_UNSIGNED_BYTE, buffer ); --//-- glPixelStorei(GL_UNPACK_ALIGNMENT, 1); glDrawPixels(m_iWidth, m_iHeight, GL_LUMINANCE, GL_UNSIGNED_BYTE, buffer); Но если самому заполнять массив, то glDrawPixels отрабатывает. То как правильно сохранить в формате GL_LUMINANCE? Всем Спасибо) Название: Re: glReadPixels Отправлено: Igors от Май 05, 2016, 09:18 glReadPixels( 0, 0, m_iWidth, m_iHeight, GL_LUMINANCE, GL_UNSIGNED_BYTE, buffer ); Здесь (https://www.khronos.org/opengles/sdk/docs/man/xhtml/glReadPixels.xml) я не вижу что GL_LUMINANCE допустимое значение для glReadPixels. В чем можно убедиться вызвав glErrorДумается Вы напрасно полагаете что GL_LUMINANCE значит "однобайтовый буфер", он все равно RGB(A) Название: Re: glReadPixels Отправлено: Sahsa от Май 05, 2016, 20:29 Спасибо)
|