2013-03-08 2 views
2
unsigned char * image_data; 
int bytes; // size 

format: 
RGBA , UNSIGNED_BYTE. 
(opengl-glGetTexImage()): 

어떻게이 데이터에서 fipImage *를 만들 수 있습니까?서명되지 않은 char * (freeimage)에서 fipImage *를 만드시겠습니까?

C++.


unsigned char * image_data; 
int w = 1000; 
int h = 1000; 

이 기능을 쓰기는 당신이 당신의 원시 픽셀 다음과 같은 방법에서 FreeImage 객체를 생성 할 수 있습니다

fipImage image; 
something like this 
image.load(image_data ,w , h); 
+0

당신이 여기서 무엇을 요구하고 있는지 명확하지 않습니다. –

답변

2

image_data에서 fipImage를 만들

glGetTexImage(GL_TEXTURE_2D, 0 , GL_RGBA , GL_UNSIGNED_BYTE , image_data); 

을 image_data합니다 :

FIBITMAP* Bitmap = FreeImage_Allocate(Width, Height, BitsPP, 0, 0, 0); 

memcpy(FreeImage_GetBits(Bitmap), image_data, Width * Height * (BitsPP/8));