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


Primitivlar murakkabligini kamaytiring



Download 15,78 Mb.
bet101/128
Sana14.07.2022
Hajmi15,78 Mb.
#795608
1   ...   97   98   99   100   101   102   103   104   ...   128
Bog'liq
1 O\'quv qo\'llanma Kompyuter grafikasi (1) (2)

Primitivlar murakkabligini kamaytiring.
Ko‘pgina hollarda katta tekisliklarni keragidan ortiqcha qismlarga bo‘lib tashlamaslik uchun ogoh bo‘ling. Masalan sifat va unumdorlikning eng yaxshi o‘zaro nisbatini belgilash uchun GLU primitivlari bilan tajriba o‘tkazing. Teksturalangan obyektlar, masalan, geometriyaning o‘rtacha murakkabligi bilan sifatli tasvirlanishi mumkin.
Displey ro‘yxatidan foydalaning.
Tez-tez chaqirilgan obyektlar uchun displey ro‘yxatidan foydalaning. Displey ro‘yxati grafik nimtizimida saqlanishi mumkin va demak, asosiy xotiradan ma’lumotlarni tez-tez olib o‘tilishini olib tashlash mumkin. [A]
Uchlarning kerak bo‘lmagan atributlarini ko‘rsatmang.
Agar yorug‘lik o‘chirilgan bo‘lsa, glNormal buyrug‘ini chaqirmang. Agar tekstura ishlatilmayotgan bo‘lsa, glTexCoord buyrug‘ini chaqirmang, va b. [barchasi]
glBegin/glEnd orasidagi ortiqcha kodlar sonini kamaytiring.
high-end tizimlarida maksimal unumdorlik, uchlar haqidagi axborot grafik nimtizimga maksimal darajada tez uzatilishi uchun muhim. glBegin/glEnd o‘rtasida ortiqcha kodlardan yiroqlashing.
Muvaffaqiyatsiz echimga misol:
glBegin(GL_TRIANGLE_STRIP);
for (i=0; i < n; i++)
{
if (lighting)
{
glNormal3fv(norm[i]);
}
glVertex3fv(vert[i]);
}
glEnd();
Bu konstruksiya shunisi bilan yomonki, biz lighting o‘zgaruvchisini har bir uch oldidan tekshiramiz. Bunday holatdan qochish mumkin, kodning qismlangan nusxasi hisobiga:
if (lighting)
{
glBegin(GL_TRIANGLE_STRIP);
for (i=0; i < n ;i++)
{
glNormal3fv(norm[i]);
glVertex3fv(vert[i]);
}
glEnd();
}
else
{
glBegin(GL_TRIANGLE_STRIP);
for (i=0; i < n ;i++)
{
glVertex3fv(vert[i]);
}
glEnd();
}

O‘zgartirish


O‘zgartirish o‘zida, oyna koordinatalari, kesish, yorug‘lik va boshqalarni berishda ishlatiladigan glVertex*() bilan ko‘rsatiluvchi koordinatalar orqali uchlarning o‘zgarishini namoyon etadi.
Yorug‘lik

  • Yorug‘likning lokal manbalaridan foydalanishdan qochish, ya’ni manba koordinatalari (x,y,z,0) shaklida bo‘lishi kerak. [D]

  • Yorug‘likning nuqtasimon manbasidan foydalanishdan qochish. [barchasi]

  • Ikki tomonlama yoritishdan (two-sided lighting) foydalanishdan qochish. [barchasi]

  • Yorug‘lik va material parametrlaridagi manfiy koeffisientlardan foydalanishdan qochish. [D]

  • Yorug‘likning lokal modelidan foydalanishdan qochish. [barchasi]

  • GL_ShININESS materiali parametrining tez-tez almashishidan qochish. [D]

  • OpenGL ning ba’zi amalga oshirishlari yorug‘likning bitta manbasi holi uchun optimallashtirilgan. [A, D]

  • Yorug‘likni oldindan hisoblab chiqish imkonini ko‘rib chiqish. Normal o‘rniga uchga rang berish orqali yorug‘lik effektiga ega bo‘lish mumkin. [barchasi]


Download 15,78 Mb.

Do'stlaringiz bilan baham:
1   ...   97   98   99   100   101   102   103   104   ...   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