Вниз
Скачать: CL | DM;

КАК ЗАГРУЗИТЬ картинку, размеры которой не кратны степени 2?   Найти похожие ветки 

 
WondeRu ©   (2003-11-11 08:35) [0]

Здравствуйте!
В OpenGL загружаю текстуры с.о.:

with BMinfo.bmiHeader do begin
FillChar (BMInfo, SizeOf(BMInfo), 0);
BMinfo.bmiHeader.biSize := sizeof (TBitmapInfoHeader);
BMinfo.bmiHeader.biBitCount := 24;
BMinfo.bmiHeader.biWidth := Bitmap.Width;
BMinfo.bmiHeader.biHeight := Bitmap.Height;

fxmin:=0;
fxmax:=Bitmap.Width;
fymin:=0;
fymax:=Bitmap.Height;

ImageSize := biWidth * biHeight;

BMinfo.bmiHeader.biPlanes := 1;
BMinfo.bmiHeader.biCompression := BI_RGB;
MemDC := CreateCompatibleDC (0);
try
GetMem (Data, ImageSize * 3);
except
GrEvents.OnError("Ошибка выделения памяти для текстуры");
end;

GetDIBits (MemDC, Bitmap.Handle, 0, biHeight, Data,
BMInfo, DIB_RGB_COLORS);
For i := 0 to ImageSize - 1 do begin
Temp := Data [I * 3];
Data [I * 3] := Data [I * 3 + 2];
Data [I * 3 + 2] := Temp;
end;

if PlanLst.Count<>0 then

glTexImage2d(GL_TEXTURE_2D, 0, 3, biWidth,
biHeight, 0, GL_RGB, GL_UNSIGNED_BYTE, Data);

Вопрос: КАК ЗАГРУЗИТЬ картинку, размеры которой не кратны степени 2?

Спасибо!


 
Сергей А   (2003-11-12 06:13) [1]

Вроде-бы можно с помощью gluBuild2DMipMaps, но сам не пробовал...



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.018 c
1-43608
Kyrt
2004-03-03 02:29
2004.03.14
TreeView


3-43384
}|{yk
2004-02-18 13:59
2004.03.14
Процедуры, возвращающие набор значений в Оракле


3-43359
segor
2004-02-15 11:14
2004.03.14
Описание полей и FK таблицы IB


6-43715
KIE
2004-01-05 12:42
2004.03.14
и снова сеть ....


1-43595
Mishenka
2004-02-23 15:17
2004.03.14
CheckBox в StringGrid???




   Наверх