OpenGL v Delphi3



Koule potažená texturou

Příklad a zdroják ke stažení (131k)




glNewList(Model,GL_COMPILE);
Tato funkce spolu s funkcí (glEndList) vytváří nebo nahrazují seznam příkazů. Tyto seznamy jsou skupiny GL příkazů, které jsou připravené pro následné spuštění. Všechny následující příkazy jsou uloženy do seznamu.
Model - specifikuje jméno daného seznamu. Musí to být kladné celé číslo. Slouží jako jednoznačná identifikace daného seznamu.
GL_COMPILE - specifikuje mód kompilace. V tomto případě jsou příkazy jen zkompilovány. Další hodnota je (GL_COMPILE_AND_EXECUTE) což znamená že příkazy jsou spouštěny, když jsou kompilovány do seznamu.

glEndList;
Konec seznamu.

LoadBitmap(Cesta + 'Image1.bmp');
Natažení bitmapy do seznamu.

glTexImage2d(GL_Texture_2D,0,3,Velikost,Velikost,0,GL_RGB,GL_Unsigned_byte,@buffer);
Funkce specifikuje vlastnosti dvourozměrné textury.
GL_Texture_2D - specifikuje cílovou texturu. Musí být vždy (GL_Texture_2D).
0 - specifikuje spupeň detailnosti zobrazení. 0 je základní hodnota. Čím větší hodnota, tím horší zobrazení.
3 - specifikuje číslo barevných součástí textury. Hodnoty musí být 1 (černobílá textura), 2 (černobílá textura zobrazená jen do půlky čtverce), 3 (barevná textura) nebo 4 (barevná textura).
Velikost - specifikuje šířku a výšku textury. Musí být 1,2,4,8,16,32,64,128,256 atd.
0 - specifikuje šířku ohraničení textury. Musí být 0 nebo 1.
GL_RGB - specifikuje pixelový formát. Další hodnoty jsou (GL_COLOR_INDEX, GL_RED, GL_GREEN, GL_BLUE, GL_ALPHA,, GL_RGBA, GL_LUMINANCE, GL_LUMINANCE_ALPHA).
GL_Unsigned_byte - specifikuje datový typ pixelu. Další hodnoty jsou (GL_BYTE, GL_BITMAP, GL_UNSIGNED_SHORT, GL_SHORT, GL_UNSIGNED_INT, GL_INT, GL_FLOAT)
@buffer - specifikuje ukazatel na texturová data v paměti.

qobj := gluNewQuadric();
Funkce vytvoří nový čtyřúhelník.

gluQuadricTexture(qobj, true);
Funkce otexturuje kouli.

gluSphere(qobj, 0.75, 20, 20);
Funkce zobrazí kouli s poloměrem 0.75 a sítí 20 na 20 čtyřúhelníků



Další funkce jsou stejné jako v kapitole Zobrazení čtverce s texturou.

Příklad:


Koule bez textury Kužel bez textury


Home