Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.03.14;
Скачать: 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 вся ветка

Текущий архив: 2004.03.14;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.021 c
1-43450
Ske4er
2004-03-01 02:02
2004.03.14
Помогите с алгоритмом комбинаторики


1-43562
MasterKolyan
2004-02-27 14:19
2004.03.14
Как создать событие на изменение своей переменной


14-43759
Ega23
2004-02-19 14:55
2004.03.14
У кого книжка есть


3-43388
Vetal
2004-02-13 16:47
2004.03.14
Почему очищается поле Connection при запуске Delphi в TADOxxx


4-43938
Zin
2004-01-07 10:15
2004.03.14
Как с помощью ReadFile прочитать Определенный сектор