Компьютер графикаси



Download 15,78 Mb.
bet69/128
Sana14.07.2022
Hajmi15,78 Mb.
#795608
1   ...   65   66   67   68   69   70   71   72   ...   128
Bog'liq
1 O\'quv qo\'llanma Kompyuter grafikasi (1) (2)

Displeyli ro‘yxatlar


Agar biz bitta buyruqlar guruhiga bir necha marotaba murojaat qilsak, unda ularni displey ro‘yxati (display list) ga birlashtirish va zarur bo‘lganda uni chaqirish mumkin. Yangi displey ro‘yxatini hosil qilish uchun unga kirishi kerak bo‘lgan barcha buyruqlarni quyidagi operator qavslari orasiga joylashtirish kerak:
void glNewList (GLuint list, GLenum mode)
void glEndList ( )

Ro‘yxatlarni ajratish uchun butun musbat sonlardan foydalaniladi, berilgan ro‘yxat list parametri bilan beriladi, mode parametri esa ro‘yxatga kirgan buyruqni qayta ishlash rejimini tavsiflaydi:


GL_COMPILE buyruq bajarilmasdan oldin ro‘yxatga
yoziladi
GL_COMPILE_AND_EXECUTE buyruqlar oldin bajarilib, keyin ro‘yxatga yoziladi

Ro‘yxat tuzilgandan keyin, list parametrda kerakli ro‘yxatning identifikatorini ko‘rsatib, uni quyidagi buyruq bilan chaqirib olish mumkin:


void glCallList (GLuint list)
Birdaniga bir necha ro‘yxatni chaqirib olish uchun, quydagi buyruqdan foydalanish mumkin:
void glCallLists (GLsizei n, GLenum type, const GLvoid *lists)

Bu buyruq identifikatorlari lists massivida bo’lgan n ro‘yxatlarni chaqirib oladi. lists massivi elementlarining turi type parametrda ko‘rsatiladi. Bular quyidagi turlar bo‘lishi mumkin: GL_BYTE, GL_UNSIGNED_BYTE, GL_ShORT, GL_INT, GL_UNSIGNED_INT.


Ro‘yxatlarni o‘chirish uchun
void glDeleteLists (GLint list, GLsizei range)
buyrug‘i ishlatiladi. Bu buyruq ID identifikatorlarga ega bo‘lgan list ≤ ID ≤ list+range-1 diapazonida ro‘yxatlarni o‘chiradi.

Masalan:
glNewList(1, GL_COMPILE);


glBegin(GL_TRIANGLES);
glVertex3f(1.0f, 1.0f, 1.0f);
glVertex3f(10.0f, 1.0f, 1.0f);
glVertex3f(10.0f, 10.0f, 1.0f);
glEnd();
glEndList()

glCallList(1);

Displey ro‘yxatlari optimal, kompilyasiya qilingan holatda server xotirasida saqlanadi. Bu shakl primitivlarni maksimal tezlikda chizishga imkon beradi. Shu bilan birga, katta hajimli ma’lumotlar xotirani ko‘p qismini egallaydilar, bu o‘z navbatida, unumdorlikning pasayishiga olib keladi. Bunday katta hajmlarni (bir necha o‘n ming primitivlar) uchlar massivlari bilan chizish qulay.





Download 15,78 Mb.

Do'stlaringiz bilan baham:
1   ...   65   66   67   68   69   70   71   72   ...   128




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish