Главная страница
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.019 c
1-43541
Valter
2004-02-26 22:10
2004.03.14
Ошибка в RichEdit


3-43275
dolmat
2004-01-23 13:45
2004.03.14
Нужен компонент для работы с базами .cds


1-43641
Мыш
2004-03-02 11:43
2004.03.14
TChart, как задать нач. и конечное значение горизонтальной оси?


1-43592
MasterKolyan
2004-02-27 12:11
2004.03.14
Пересылка значений между нетипизированными указателями


3-43260
MadGhost
2004-02-13 08:29
2004.03.14
DBGrid как узнать выделена ли строка?