O’lchovli grafika yaratilishi



Yüklə 29,23 Kb.
tarix20.12.2023
ölçüsü29,23 Kb.
#187380
O’lchovli grafika yaratilishi o’lchovli grafika turlari-fayllar.org


O’lchovli grafika yaratilishi o’lchovli grafika turlari

Mavzu:Uch o’lchovli grafika imkonyatlarini loyihalashda qo’llash texnologiyalari
REJA:
3 o’lchovli grafika
3 o’lchovli grafika yaratilishi
3 o’lchovli grafika turlari
3d modellashtirish
Uch o'lchovli grafika fan va sanoatda, masalan, dizaynni avtomatlashtirish tizimlarida (SAPR; qattiq elementlarni yaratish uchun: binolar, mashina qismlari, mexanizmlar), arxitekturada ekran yoki bosma mahsulot varag'i tekisligida tasvirlarni yaratish uchun faol foydalaniladi. zamonaviy tibbiy tasvirlash tizimlarida vizualizatsiya (bu "Virtual arxeologiya" deb ataladigan narsani ham o'z ichiga oladi.

Eng keng qo'llanilishi ko'plab zamonaviy kompyuter o'yinlarida, shuningdek, kino, televizor va bosma materiallarning elementidir.


3D grafika odatda displey yoki qog'oz varag'ining tekis, ikki o'lchovli yuzasida ko'rsatiladigan virtual, xayoliy uch o'lchovli makon bilan shug'ullanadi. Hozirgi vaqtda uch o'lchovli ma'lumotlarni hajmli shaklda ko'rsatishning bir necha usullari mavjud, garchi ularning aksariyati hajmli xususiyatlarni juda shartli ravishda ifodalaydi, chunki ular stereo tasvir bilan ishlaydi. Bu sohadan stereo ko'zoynaklar, virtual dubulg'alar, uch o'lchamli tasvirni ko'rsatishga qodir 3D displeylarni qayd etish mumkin. Bir nechta ishlab chiqaruvchilar ishlab chiqarishga tayyor 3D displeylarni namoyish qilishdi. Biroq, 3D-displeylar hali ham uch o'lchovli grafik usullari bilan yaratilgan matematik modelning to'liq jismoniy, moddiy nusxasini yaratishga imkon bermaydi. 1990-yillardan beri ishlab chiqilgan tezkor prototiplash texnologiyalari bu bo'shliqni to'ldirmoqda. Shuni ta'kidlash kerakki, tezkor prototiplash texnologiyalari ob'ektning matematik modelini qattiq jism (voksel modeli) shaklida tasvirlashdan foydalanadi.
Yaratilish
Samolyotda uch o'lchamli tasvirni olish uchun quyidagi amallarni bajarish kerak:
modellashtirish- sahna va undagi ob'ektlarning uch o'lchovli matematik modelini yaratish;
teksturalash- modellar sirtlariga rastr yoki protsessual teksturalarni belgilash (shuningdek, u materiallarning xususiyatlarini belgilashni nazarda tutadi - shaffoflik, aks ettirish, pürüzlülük va boshqalar);
yoritish- o'rnatish va sozlash;
animatsiya(ba'zi hollarda) - ob'ektlarga harakat qilish;
dinamik simulyatsiya(ba'zi hollarda) - zarralar, qattiq / yumshoq jismlar va boshqalarning tortishish, shamol, surish va boshqalarning simulyatsiya qilingan kuchlari bilan, shuningdek, bir-biri bilan o'zaro ta'sirini avtomatik hisoblash;
ko'rsatish(vizualizatsiya) - tanlangan jismoniy modelga muvofiq proyeksiyani qurish;
kompozitsiyalash(tartib) - tasvirni yaxshilash;
olingan tasvirni chiqarish qurilmasiga - displeyga yoki maxsus printerga chiqarish.
Modellashtirish
Sof modellashtirish uchun eng mashhur paketlar:
Robert MakNil va Dots. Karkidon 3D;
Shaxs yoki jonzotning uch o'lchovli modelini yaratish uchun haykaldan prototip sifatida foydalanish mumkin (ko'p hollarda).
Teksturalash
SketchUp
O'yinlar va ilovalarda 3D renderlash
Amaliy dasturlarda 3D grafiklarni ko'rsatish uchun bir qator dasturiy kutubxonalar mavjud - DirectX, OpenGL va boshqalar.
O'yinlarda 3D grafikani ko'rsatishning bir qancha yondashuvlari mavjud - to'liq 3D, pseudo-3D.
Bunday paketlar har doim ham foydalanuvchiga 3D modelni to'g'ridan-to'g'ri boshqarishga imkon bermaydi, masalan, OpenSCAD paketi mavjud bo'lib, unda model maxsus tilda yozilgan foydalanuvchi tomonidan yaratilgan skriptni bajarish orqali shakllanadi.
3D displeylar
3D yoki stereoskopik displeylar, (3D displeylar, 3D ekranlar) - stereoskopik yoki boshqa har qanday effekt yordamida ko'rsatilgan tasvirlarda haqiqiy hajm illyuziyasini yaratuvchi displeylar.
Hozirgi vaqtda uch o'lchovli tasvirlarning aksariyati stereoskopik effekt yordamida namoyish etiladi, chunki uni amalga oshirish eng oson, ammo stereoskopiyadan foydalanishni hajmli idrok etish uchun etarli deb bo'lmaydi. Inson ko'zi juft bo'lib ham, yolg'iz ham hajmli ob'ektlarni tekis tasvirlardan bir xil darajada yaxshi ajratib turadi. ] .
Butun kompyuter sanoatining dvigateli nima degan savol uzoq vaqtdan beri ko'plab foydalanuvchilarni tashvishga solmoqda. Yoki bu tinimsiz ravishda yangi protsessorlarni chiqaradigan va chiqaradigan Inteldir. Ammo kim ularni sotib olishga majbur qiladi? Balki hamma narsada Microsoft aybdordir va bu uning derazalarini doimiy ravishda kattaroq va chiroyli qiladi? Yo'q, siz dasturlarning eski versiyalari bilan kifoyalanishingiz mumkin - bundan tashqari, ularning imkoniyatlari oralig'i deyarli o'zgarmaydi. Xulosa shuni ko'rsatadiki, o'yinlar hamma narsaga aybdor. Ha, bu haqiqiy dunyoga ko'proq o'xshash bo'lishga intilayotgan o'yinlar, uning virtual nusxasini yaratadi, ular tobora ko'proq kuchli manbalarni xohlashadi.
Kompyuterdagi kompyuter grafikasining butun tarixi buning tasdig'idir. Esingizda bo'lsa, boshida tetris, qazuvchi, arkanoid bor edi. Barcha grafikalar ekranning kichik joylarini, spritlarni qayta chizishdan iborat edi va hatto XT da yaxshi ishladi. Ammo o'sha kunlar o'tib ketdi. Simulyator yulduzi ko'tarildi.
F19, Formula 1 va boshqalar kabi o'yinlarning chiqarilishi bilan biz butun ekranni qayta chizishimiz kerak edi, avval uni xotirada tayyorlaganmiz, barchamiz kamida 286 protsessorga ega bo'lishimiz kerak edi. Biroq taraqqiyot shu bilan to‘xtab qolmadi. O'yindagi virtual dunyoni real dunyoga o'xshatish istagi kuchaydi va Wolf 3D paydo bo'ldi.
Aytish mumkinki, bu qandaydir, ammo baribir real dunyo modellashtirilgan birinchi 3D o'yin. Uni amalga oshirish uchun yuqori (640 Kb dan ortiq) xotiradan foydalanish va dasturni himoyalangan rejimga o'tkazish kerak edi. To'liq huquqli o'yin uchun men 80386 protsessorini o'rnatishim kerak edi.Lekin Wolf 3D dunyosi ham kamchiliklardan aziyat chekdi. Garchi devorlar shunchaki bir rangli to'rtburchaklar bo'lmasa-da, ularni bo'yash uchun past aniqlikdagi teksturalar ishlatilgan, shuning uchun sirtlar faqat uzoqdan yaxshi ko'rinardi. Albatta, biz tekstura o'lchamlarini oshirish yo'lidan borishimiz mumkin edi, eslaylik, masalan, DOOM. Keyin yana yangi protsessorga o'tishimiz va xotira hajmini oshirishimiz kerak edi. To'g'ri, baribir, tasvir yaxshilangan bo'lsa-da, lekin u hali ham bir xil kamchiliklarga ega edi. Ha, va tekis narsalar va yirtqich hayvonlar - kimga g'amxo'rlik qiladi. Aynan o'sha paytda Quake yulduzi ko'tarildi. Ushbu o'yinda inqilobiy yondashuv qo'llanildi - z-bufer, bu barcha ob'ektlarga hajm berish imkonini berdi. Biroq, butun o'yin hali ham past piksellar sonida ishladi va juda real emas edi.
Yangi apparat yechimi tayyorlanayotgan edi. Va bu qaror, umuman olganda, yuzaki bo'lib chiqdi. Foydalanuvchilar uch o'lchovli virtual dunyoda o'ynashni xohlashlari sababli, uni yaratish jarayoni (keyingi rasm paydo bo'lguncha 3D Studio-da kutish daqiqalarini esda tuting) keskin tezlashishi kerak. Va markaziy protsessor bu vazifani juda yomon bajarganligi sababli, inqilobiy qaror qabul qilindi - ixtisoslashgan.
Aynan o'sha paytda 3Dfx o'yin mashinalari ishlab chiqaruvchisi paydo bo'ldi va bu ertakni o'zining Voodoo grafik protsessorining yordami bilan amalga oshirdi. Insoniyat virtual olamga yana bir qadam tashladi.
Va shundan beri operatsion tizim Teksturali oynalari tumanga qaytayotgan shaxsiy kompyuterda uch o'lchamli grafikaning butun apparati faqat butun tsivilizatsiyalashgan insoniyat tomonidan muvaffaqiyatli amalga oshirilgan o'yinlarga qo'llanilishi mumkin emas va kutilmaydi.
Model
Uch o'lchamli ob'ektlarni monitor ekranida ko'rsatish uchun bir qator jarayonlar (odatda konveyer deb ataladi), so'ngra natijani ikki o'lchovli shaklga tarjima qilish kerak. Dastlab, ob'ekt uch o'lchovli fazoda nuqtalar yoki koordinatalar to'plami sifatida ifodalanadi. Uch o'lchovli koordinatalar tizimi uchta o'q bilan belgilanadi: gorizontal, vertikal va chuqurlik, odatda mos ravishda x, y va z o'qlari deb ataladi. Ob'ekt uy, odam, avtomobil, samolyot yoki butun 3D dunyo bo'lishi mumkin va koordinatalar ob'ektni kosmosda tashkil etuvchi cho'qqilarning (tugun nuqtalari) holatini aniqlaydi. Ob'ektning cho'qqilarini chiziqlar bilan bog'lab, biz simli ramka modelini olamiz, chunki faqat uch o'lchamli tananing sirtlarining chekkalari ko'rinadi. Tel ramka ob'ektning rang, to'qimalar va yorug'lik nurlari bilan to'ldirilishi mumkin bo'lgan sirtlarini tashkil etuvchi maydonlarni belgilaydi.
Guruch. 1: simli ramka kubi
3D grafik quvurining ushbu soddalashtirilgan tushuntirishi bilan ham, 2D ekranda 3D ob'ektni chizish uchun qancha hisoblash kerakligi aniq bo'ladi. Agar ob'ekt harakatlansa, koordinatalar tizimi bo'yicha talab qilinadigan hisoblash miqdori qanchalik ko'payishini tasavvur qilishingiz mumkin.
Guruch. 2: Bo'yalgan sirtli samolyot modeli
API ning roli
Dasturlashtiriladigan dastur interfeysi (API) dasturiy ta'minot darajasida 3D quvur liniyasini boshqaradigan funktsiyalardan iborat, ammo agar mavjud bo'lsa, 3D-ning apparat tatbiq etilishidan foydalanishi mumkin. Agar apparat tezlatgich mavjud bo'lsa, API undan foydalanadi, agar bo'lmasa, API eng keng tarqalgan tizimlar uchun mo'ljallangan optimal sozlamalar bilan ishlaydi. Shunday qilib, API-dan foydalanish tufayli har qanday miqdordagi dasturiy vositalar har qanday apparat 3D tezlatgichlari tomonidan qo'llab-quvvatlanishi mumkin.
Umumiy va ko'ngilochar ilovalar uchun quyidagi API mavjud:
Microsoft Direct3D
Criterion Renderware
Argonavt BRender
ntel 3DRApple o'zining Quickdraw 3D API-ga asoslangan o'zining Rave tajribasini targ'ib qilmoqda.ostida ishlaydigan professional ilovalar uchun Windows boshqaruvi NTda OpenGL interfeysi ustunlik qiladi. Autodesk kompaniyasi, eng yirik ishlab chiqaruvchi muhandislik ilovalari, Heidi deb nomlangan o'z API-ni ishlab chiqdi.Intergraph - RenderGL va 3DFX - GLide kabi kompaniyalar o'zlarining API-larini ishlab chiqdilar.Bir nechta grafik quyi tizimlar va ilovalarni qo'llab-quvvatlaydigan 3D interfeyslarning mavjudligi va mavjudligi real vaqtda 3D apparat tezlatgichlariga bo'lgan ehtiyojni oshiradi. Ko'ngilochar dasturlar, bunday tezlatgichlarning asosiy iste'molchisi va mijozi, lekin Windows NT ostida ishlaydigan 3D grafiklarni qayta ishlash uchun professional ilovalar haqida unutmang, ularning ko'pchiligi Silicon Graphics kabi yuqori samarali ish stantsiyalaridan shaxsiy kompyuter platformasiga ko'chiriladi. Veb-ga asoslangan ilovalar 3D grafik foydalanuvchi interfeyslari taqdim etadigan ajoyib chaqqonlik, intuitivlik va moslashuvchanlikdan katta foyda oladi. Butunjahon Internet tarmog'idagi o'zaro aloqa, agar u uch o'lchovli makonda sodir bo'lsa, ancha oson va qulayroq bo'ladi.Grafik tezlatgichKontseptsiyadan oldin grafik quyi tizimlar bozori multimedia rivojlantirish nisbatan oson edi. Rivojlanishning muhim bosqichi 1987 yilda IBM tomonidan ishlab chiqilgan VGA (Video grafik massivi) standarti bo'ldi, buning natijasida video adapter ishlab chiqaruvchilari kompyuter monitorida yuqori aniqlik (640x480) va kattaroq rang chuqurligidan foydalanishga muvaffaq bo'lishdi. Windows operatsion tizimining tobora ommalashib borishi bilan tizimning markaziy protsessorini tushirish uchun ikki o'lchovli grafiklarning apparat tezlatkichlariga shoshilinch ehtiyoj bor, bu esa qo'shimcha hodisalarni qayta ishlashga majbur bo'ladi. Grafiklarni qayta ishlash uchun protsessorning o'zgarishi GUI (Graphical User Interface) - grafik foydalanuvchi interfeysining umumiy ishlashiga sezilarli darajada ta'sir qiladi va Windows va uning ilovalari imkon qadar ko'proq CPU resurslarini talab qilganligi sababli, grafik ishlov berish pastroq tezlik bilan amalga oshirildi. ustuvorlik, ya'ni juda sekin amalga oshirildi. Ishlab chiqaruvchilar o‘z mahsulotlariga 2D grafiklarni qayta ishlash funksiyalarini qo‘shgan, masalan, ochish va kichraytirishda oynalarni chizish, kursorni harakatlantirganda doim ko‘rinadigan apparat kursori va ekrandagi joylarni yuqori yangilanish tezligida bo‘yash. Shunday qilib, zamonaviy kompyuterlarda bo'lishi kerak bo'lgan elementga aylangan Windows yoki GUI akseleratori sifatida ham tanilgan VGA (Accelerated VGA - AVGA) tezlashuvini ta'minlovchi protsessor mavjud edi.
Multimedianing joriy etilishi 2D grafik to'plamiga audio va raqamli video kabi komponentlarning qo'shilishi natijasida yuzaga kelgan yangi muammolarni keltirib chiqardi. Bugungi kunda ko'pgina AVGA mahsulotlari apparatda raqamli videoga ishlov berishni qo'llab-quvvatlashini ko'rish oson. Shuning uchun, agar sizning monitoringizda video pochta markasi o'lchamidagi oynada o'ynatilsa - kompyuteringizga o'rnatish vaqti keldi. multimedia tezlatgichi... Multimediya tezlatgich odatda video tasvirni x va y o'qlari bo'ylab masshtablash imkonini beruvchi o'rnatilgan apparat funktsiyalariga ega, shuningdek, raqamli signalni RGB formatida monitorda ko'rsatish uchun apparatni analogga aylantiradi. Ba'zi multimediya tezlatgichlari raqamli video dekompressiyani o'rnatish imkoniyatlariga ham ega bo'lishi mumkin.Grafik dizaynerlar qisman kompyuter monitorining o'lchamiga bog'liq bo'lgan, qisman GUI ta'sirida va qisman GPU tomonidan ta'sirlangan talablarga amal qilishlari kerak. 640x480 piksel o'lchamlari bilan birlamchi VGA standarti 14 "monitorlar uchun mos edi, o'sha paytda eng keng tarqalgan. Bugungi kunda 1024x768 o'lchamdagi tasvirlarni ko'rsatish qobiliyati tufayli 17" trubkali diagonali eng ko'p afzal qilingan monitorlar yoki Ko'proq.VGA-dan multimediya tezlatgichlariga o'tishning asosiy tendentsiyasi kompyuter monitorida iloji boricha ko'proq vizual ma'lumotlarni joylashtirish qobiliyati edi. 3D grafikadan foydalanish ushbu tendentsiyaning mantiqiy rivojlanishidir. Uch o'lchamda taqdim etilganda, monitor ekranining cheklangan maydoniga katta hajmdagi vizual ma'lumotni siqib chiqarish mumkin. Haqiqiy vaqtda 3D grafiklarni qayta ishlash foydalanuvchiga taqdim etilgan ma'lumotlarni osongina boshqarish imkonini beradi.
O'yin dvigatellariKompyuter o'yinlarining birinchi qoidasi - hech qanday qoidalar yo'q. An'anaga ko'ra, o'yin ishlab chiquvchilari texniklarning tavsiyalariga amal qilishdan ko'ra o'z dasturlarining ajoyib grafikalari bilan ko'proq qiziqishadi. Ishlab chiquvchilar o'z ixtiyorida ko'plab 3D API-larga ega bo'lishiga qaramay, masalan - Direct3D, ba'zi dasturchilar o'zlarining 3D o'yin interfeysi yoki dvigatelini yaratishga harakat qilmoqdalar. Xususiy o'yin dvigatellari ishlab chiquvchilar uchun ajoyib realizmga erishishning bir yo'li bo'lib, grafik dasturlash chegaralarini deyarli bosadi.Ishlab chiquvchi uchun tizim komponentlarining apparat funktsiyalariga to'g'ridan-to'g'ri kirishdan ko'ra istalgan narsa yo'q. Bir nechta taniqli ishlab chiquvchilar o'zlarining o'yin dvigatellarini yaratdilar, bu ularga shon-shuhrat va pul olib kelgan apparat grafik tezlatkichlaridan optimal foydalanadi. Masalan, Descent II va id Software for Quake uchun Interplay dvigatellari mavjud bo‘lganda immersiv 3D apparat funksiyalaridan foydalangan holda haqiqiy 3D harakatni ta’minlaydi.Murosasiz grafikaKo'ngilochar va biznes kabi sohalarda 3D grafikadan foydalanish istiqbollari haqida anchadan beri davom etayotgan muzokaralar potentsial foydalanuvchilarning qiziqishini cheklab qo'ydi, yangi mahsulot turi allaqachon paydo bo'lgan. bozor. Ushbu yangi texnologik yechimlar Windows tezlatkichlari uchun bugungi kun talablariga javob beradigan 2D grafiklarni mukammal qo‘llab-quvvatlashni, 3D grafik funksiyalarini apparat ta’minotini va kerakli kadrlar tezligida raqamli videoni o‘ynatishni birlashtiradi.Printsipial jihatdan, ushbu mahsulotlarni ish stoli hisoblash tizimlarida standart uskunalar sifatida munosib o'rin egallagan grafikani murosasiz ta'minlovchi keyingi avlod grafik quyi tizimlariga ishonch bilan bog'lash mumkin.Yangi avlod vakillari orasida biz misol sifatida quyidagi mahsulotlarni nomlashimiz mumkin:Markaziy protsessor Sayohatga chipta kompaniya To'qqiz raqamli vizual texnologiyalarprotsessorlar seriyasi ViRGE kompaniya S3 Inc.Markaziy protsessor RIVA128 kompaniyalar tomonidan birgalikda ishlab chiqilgan SGS Tomson va nVidia3D grafik texnologiyasiKeling, sizni 3D grafikani amalda sinab ko'rishga ishontirishga muvaffaq bo'laylik (agar buni hali qilmagan bo'lsangiz) va siz 3D video kartadan foydalanish uchun mo'ljallangan 3D o'yinlardan birini o'ynashga qaror qildingiz.Aytaylik, avtopoyga simulyatori shunday o'yin bo'lib chiqdi va sizning mashinangiz allaqachon yangi rekordlarni zabt etishga intilishga tayyor. Ishga tushirishdan oldingi ortga hisoblash davom etmoqda va siz monitor ekranida ko'rsatilgan kokpit ko'rinishi siz o'rganganingizdan biroz farq qilishini sezasiz.Siz ilgari bunday poygalarda qatnashgansiz, lekin birinchi marta tasvir sizni favqulodda realizm bilan hayratda qoldiradi, sodir bo'layotgan voqealarning haqiqatiga ishonishga majbur qiladi. Ufq uzoqdagi narsalar bilan birga ertalabki tumanga g'arq bo'ladi. Yo'l g'ayrioddiy silliq ko'rinadi, asfalt - bu iflos kulrang kvadratchalar to'plami emas, balki yo'l belgilariga ega monoxromatik sirt. Yo'l bo'yidagi daraxtlar chindan ham bargli tojlarga ega bo'lib, ularda alohida barglar ajralib turadigan ko'rinadi. Butun ekran, umuman olganda, haqiqatni taqlid qilish uchun ayanchli urinish sifatida emas, balki haqiqiy istiqbolga ega sifatli fotosurat taassurotini beradi.Keling, qanday texnik echimlar 3D video kartalarga virtual haqiqatni bunday realizm bilan etkazishga imkon berishini aniqlashga harakat qilaylik. Qanday qilib kompyuter vizuallari professional 3D grafika studiyalari darajasiga yetdi.Uch o'lchovli dunyoni ko'rsatish va modellashtirish bilan bog'liq hisoblash operatsiyalarining bir qismi endi 3D video kartaning yuragi bo'lgan 3D tezlatgichga o'tkaziladi. Markaziy protsessor endi displey muammolari bilan deyarli band emas, ekran tasviri video karta tomonidan shakllantiriladi. Bu jarayon apparat darajasida bir qator effektlarni amalga oshirishga, shuningdek, oddiy matematik apparatdan foydalanishga asoslangan. Keling, 3D grafik protsessor aniq nima qila olishini aniqlashga harakat qilaylik.Poyga simulyatorimiz misoliga qaytsak, keling, yo'lning sirtlari yoki yo'l chetidagi binolar qanday qilib real tarzda ko'rsatilishi haqida o'ylab ko'raylik. Bu tekstura xaritalash deb ataladigan keng tarqalgan texnika yordamida amalga oshiriladi.Bu sirtni modellashtirish uchun eng keng tarqalgan effekt. Masalan, binoning jabhasi ko'plab g'ishtlar, derazalar va eshiklarni modellashtirish uchun ko'plab yuzlarni ko'rsatishni talab qiladi. Biroq, tekstura (bir vaqtning o'zida butun yuzaga qo'llaniladigan tasvir) ko'proq reallikni beradi, lekin kamroq hisoblash resurslarini talab qiladi, chunki u butun jabha bilan bitta sirt sifatida ishlashga imkon beradi. Ekranga tegmasdan oldin yuzalar teksturalanadi va soyalanadi. Barcha teksturalar xotirada saqlanadi, odatda video kartaga o'rnatiladi. Aytgancha, bu erda AGP dan foydalanish tizim xotirasida teksturalarni saqlashga imkon berishini va uning hajmini sezilarli darajada oshirishini payqash mumkin emas.Shubhasiz, yuzalar tekstura qilinganda, masalan, ufqdan tashqariga cho'zilgan bo'linuvchi chiziqli yo'lni ko'rsatishda istiqbolni hisobga olish kerak. Teksturali ob'ektlar to'g'ri ko'rinishi uchun istiqbolni tuzatish kerak. Bu zarba xaritasi ob'ektning turli qismlariga - kuzatuvchiga yaqinroq va uzoqroq bo'lgan qismlarga to'g'ri qo'llanilishini ta'minlaydi.Istiqbolni hisobga olgan holda tuzatish juda ko'p vaqt talab qiladigan operatsiyadir, shuning uchun ko'pincha uning to'liq to'g'ri bajarilmasligini topish mumkin.To'qimalarni qo'llashda, printsipial jihatdan, siz ikkita eng yaqin beatmap orasidagi tikuvlarni ham ko'rishingiz mumkin. Yoki ko'pincha, ba'zi o'yinlarda miltillash haydash paytida yo'l yoki uzun koridorlarni tasvirlashda seziladi. Ushbu qiyinchiliklarni bostirish uchun filtrlash (odatda ikki yoki uch chiziqli) ishlatiladi.Ikki chiziqli filtrlash - bu tasvir buzilishlarini olib tashlash usuli. Ob'ekt asta-sekin aylanayotganda yoki harakatlanayotganda, siz pikselning bir joydan ikkinchisiga sakrashini sezishingiz mumkin, bu esa miltillashga olib keladi. Ushbu effektni kamaytirish uchun ikki chiziqli filtrlash sirt nuqtasini ko'rsatish uchun o'rtacha to'rtta qo'shni tekstura pikselini oladi.Uch chiziqli filtrlash biroz murakkabroq. Tasvirdagi har bir pikselni olish uchun ikki darajadagi ikki chiziqli filtrlash natijalarining o'rtacha og'irligi olinadi. Olingan tasvir yanada aniqroq va kamroq miltillovchi bo'ladi.Ob'ektning sirti hosil bo'lgan teksturalar ob'ektdan tomoshabinning ko'zlari holatiga bo'lgan masofaning o'zgarishiga qarab tashqi ko'rinishini o'zgartiradi. Harakatlanuvchi tasvirda, masalan, ob'ekt tomoshabindan uzoqlashganda, ko'rsatilgan ob'ekt hajmining pasayishi bilan birga tekstura bitmapining hajmi ham kamayishi kerak. Ushbu transformatsiyani amalga oshirish uchun GPU ob'ekt yuzasini qoplash uchun tekstura bitmaplarini mos o'lchamga aylantiradi, lekin tasvir tabiiy bo'lib qolishi kerak, ya'ni. ob'ekt kutilmagan tarzda deformatsiyalanmasligi kerak.Kutilmagan o'zgarishlarga yo'l qo'ymaslik uchun ko'pgina grafik boshqaruv jarayonlari qisqartirilgan piksellar sonida oldindan filtrlangan tekstura bitmaplarini yaratadi, bu jarayon mip xaritalash deb ataladi. Keyin, grafik dastur avtomatik ravishda ekranda ko'rsatilgan tasvirning tafsilotlari asosida qaysi teksturadan foydalanishni aniqlaydi. Shunga ko'ra, agar ob'ekt hajmi kichraytirilsa, uning tekstura bitmapining o'lchami ham kamayadi.Ammo bizning poyga mashinamizga qaytaylik. Yo'lning o'zi allaqachon real ko'rinadi, ammo uning chekkalarida muammolar kuzatilmoqda! Ekranda chizilgan chiziq uning chetiga parallel emas, balki qanday ko'rinishini o'ylab ko'ring. Shunday qilib, ular bizning yo'limizda paydo bo'ladi " yirtilgan qirralar". Va bu nomukammallikka qarshi kurashish uchun tasvir qo'llaniladi.Yirtilgan qirralarSilliq qirralarBu tasvirning (ob'ektning) aniqroq qirralarini (chegaralarini) olish uchun piksellarni qayta ishlash (interpolyatsiya qilish) usuli. Eng ko'p ishlatiladigan texnika - yaratish silliq o'tish chiziq yoki chekka rangidan fon rangiga. Ob'ektlar chegarasida joylashgan nuqtaning rangi ikkita chegara nuqtasi ranglarining o'rtacha qiymati sifatida aniqlanadi. Biroq, ba'zi hollarda, anti-aliasingning yon ta'siri qirralarning xiralashishi hisoblanadi.Biz barcha 3D algoritmlarining ishlashining asosiy nuqtasiga keldik. Aytaylik, bizning poyga mashinamiz yuradigan yo'l ko'plab ob'ektlar - binolar, daraxtlar, odamlar bilan o'ralgan.Bu erda 3D protsessor ob'ektlarning qaysi biri ko'rish maydonida ekanligini va ular qanday yoritilganligini aniqlashning asosiy muammosiga duch keladi. Bundan tashqari, nima ko'rinishini bilish uchun bu daqiqa yetarli emas. Ob'ektlarning o'zaro joylashuvi haqida ma'lumotga ega bo'lish kerak. Ushbu muammoni hal qilish uchun z-buferlash deb ataladigan usul qo'llaniladi. Bu yashirin yuzalarni olib tashlashning eng ishonchli usuli. Z-bufer deb ataladigan narsa barcha piksellarning chuqurlik qiymatlarini (z-koordinatalarini) saqlaydi. Yangi piksel hisoblanganda (ko'rsatilganda), uning chuqurligi z-buferda saqlangan qiymatlar bilan, aniqrog'i bir xil x va y koordinatalari bo'lgan allaqachon ko'rsatilgan piksellar chuqurligi bilan taqqoslanadi. Agar yangi piksel z-buferdagi har qanday qiymatdan kattaroq chuqurlik qiymatiga ega bo'lsa, yangi piksel ko'rsatish uchun buferga yozilmaydi, agar kamroq bo'lsa, u yoziladi.Z-buferlash apparatda qo'llanilganda ish faoliyatini sezilarli darajada yaxshilaydi. Biroq, z-bufer katta hajmdagi xotirani egallaydi: masalan, hatto 640x480 da, 24-bitli z-bufer taxminan 900 KB ni egallaydi. Ushbu xotira 3D grafik kartasiga ham o'rnatilishi kerak.Z-buferning o'lchamlari uning eng muhim atributidir. Bu chuqurlikdagi yuqori sifatli sahnalarni ko'rsatish uchun juda muhimdir. Ruxsat qanchalik yuqori bo'lsa, z-koordinatalarining diskretligi shunchalik yuqori bo'ladi va uzoqdagi ob'ektlarni aniqroq ko'rsatish. Agar renderlash paytida ruxsat etish etarli bo'lmasa, ikkita bir-biriga o'xshash ob'ekt bir xil z koordinatasini olishi mumkin, buning natijasida uskuna qaysi ob'ekt kuzatuvchiga yaqinroq ekanligini bilmaydi, bu tasvirning buzilishiga olib kelishi mumkin.Ushbu ta'sirlardan qochish uchun professional platalar 32 bitli z-buferga ega va katta hajmdagi xotira bilan jihozlangan.Yuqoridagi asoslarga qo'shimcha ravishda, 3D grafik kartalari odatda bir qator qo'shimcha funktsiyalarni takrorlash qobiliyatiga ega. Misol uchun, agar siz poyga mashinasini qumga haydab ketayotgan bo'lsangiz, ko'tarilgan chang tufayli ko'rinish to'sqinlik qiladi. Bunday va shunga o'xshash effektlarni amalga oshirish uchun tumanlash qo'llaniladi. Bu effekt tumanlash chuqurligini aniqlaydigan funksiya nazorati ostida aralashgan kompyuter rangli piksellarini tuman rangi bilan birlashtirish orqali yaratiladi. Xuddi shu algoritmdan foydalanib, uzoqdagi ob'ektlar tumanga botib, masofa illyuziyasini yaratadi.Haqiqiy dunyo shaffof, shaffof va shaffof bo'lmagan narsalardan iborat. Ushbu holatni hisobga olish uchun alfa aralashtirish qo'llaniladi - yarim shaffof ob'ektlarning shaffofligi haqidagi ma'lumotlarni uzatish usuli. Shaffoflik effekti asl piksel rangini allaqachon buferdagi piksel bilan birlashtirish orqali yaratiladi.
Natijada, nuqta rangi oldingi va fon ranglarining kombinatsiyasi hisoblanadi. Odatda, alfa har bir rang pikseli uchun 0 dan 1 gacha normallashtirilgan qiymatga ega. Yangi piksel = (alfa) (piksel A rang) + (1 - alfa) (piksel B rang).Ko'rinib turibdiki, ekranda sodir bo'layotgan voqealarning real tasvirini yaratish uchun uning mazmunini tez-tez yangilab turish kerak. Har bir keyingi kadrning shakllanishi bilan 3D tezlatgich butun hisoblash yo'lidan yangidan o'tadi, shuning uchun u sezilarli ishlashga ega bo'lishi kerak. Ammo 3D grafikada harakatni silliq qilishning boshqa usullari mavjud. Asosiysi bu ikki marta buferlash.Har bir keyingi varaqda biroz o'zgaruvchan joylashuvga ega bo'lgan qog'oz to'plamining burchaklariga multfilm qahramonini chizishning eski animatsion hiylasini tasavvur qiling. Butun to'plamni aylanib chiqib, burchakni egib, biz qahramonimizning silliq harakatini ko'ramiz. 3D animatsiyasida ikki marta buferlash amalda bir xil ishlash printsipiga ega, ya'ni. Belgining keyingi pozitsiyasi joriy sahifani aylantirishdan oldin allaqachon chizilgan. Ikki marta buferlashsiz tasvir kerakli silliqlikka ega bo'lmaydi, ya'ni. intervalgacha bo'ladi. Ikki marta buferlash 3D grafik ramka buferida ajratilgan ikkita maydonni talab qiladi; ikkala maydon ham ekranda ko'rsatilgan tasvir hajmiga mos kelishi kerak. Usul tasvirni olish uchun ikkita buferdan foydalanadi: biri tasvirni ko'rsatish uchun, ikkinchisi esa renderlash uchun. Bitta buferning mazmuni ko'rsatilayotganda, ikkinchisi ko'rsatilmoqda. Keyingi kadrga ishlov berilganda buferlar almashtiriladi (almashtiriladi). Shunday qilib, o'yinchi har doim ajoyib rasmni ko'radi.3D grafik tezlatgichlarida qo'llaniladigan algoritmlarni muhokama qilish yakunida keling, barcha effektlardan alohida foydalanish qanday qilib to'liq tasvirni olishga imkon berishini aniqlashga harakat qilaylik. 3D grafikalar renderlash quvuri deb ataladigan ko'p bosqichli mexanizm yordamida amalga oshiriladi.Quvurlarni qayta ishlashdan foydalanish hisob-kitoblarni bajarishni yanada tezlashtirishga imkon beradi, chunki keyingi ob'ekt uchun hisob-kitoblar avvalgisining hisob-kitoblari tugagunga qadar boshlanishi mumkin.Renderlash quvur liniyasini 2 bosqichga bo'lish mumkin: geometriya va rasterizatsiya.Geometrik ishlov berishning birinchi bosqichida koordinatalar o'zgartiriladi (barcha ob'ektlarni aylantirish, ko'chirish va masshtablash), ob'ektlarning ko'rinmas qismlarini kesish, yoritishni hisoblash, barcha yorug'lik manbalarini hisobga olgan holda har bir cho'qqining rangini aniqlash va jarayon. tasvirni kichikroq shakllarga bo'lish. Ob'ekt sirtining tabiatini tasvirlash uchun u barcha turdagi ko'pburchaklarga bo'linadi.Ko'pincha, grafik ob'ektlarni ko'rsatishda uchburchak va to'rtburchaklarga bo'linish qo'llaniladi, chunki ularni hisoblash eng oson va ularni boshqarish oson. Bunday holda, hisob-kitoblarni tezlashtirish uchun ob'ektlarning koordinatalari haqiqiydan butun songa aylantiriladi.Ikkinchi bosqichda barcha tasvirlangan effektlar tasvirga quyidagi ketma-ketlikda qo'llaniladi: yashirin yuzalarni olib tashlash, istiqbolni hisobga olgan holda teksturalarni qoplash (z-bufer yordamida), tuman va shaffoflik effektlarini qo'llash, antialiasing. Shundan so'ng, keyingi nuqta keyingi kadrdan buferga joylashtirishga tayyor hisoblanadi.Yuqorida aytilganlarning barchasidan siz 3D tezlatgich platasida o'rnatilgan xotira qanday maqsadlarda ishlatilishini tushunishingiz mumkin. U teksturalarni, z-buferni va keyingi ramka buferlarini saqlaydi. PCI avtobusidan foydalanganda siz oddiy operativ xotiradan ushbu maqsadlar uchun foydalana olmaysiz, chunki video karta tezligi avtobus o'tkazish qobiliyati bilan sezilarli darajada cheklanadi. Shuning uchun AGP avtobusining rivojlanishi 3D-grafikani rivojlantirish uchun ayniqsa istiqbolli bo'lib, bu 3D chipni to'g'ridan-to'g'ri protsessorga ulash va shu bilan operativ xotira bilan tezkor ma'lumotlar almashinuvini tashkil etish imkonini beradi. Bundan tashqari, ushbu yechim 3D tezlatgichlarining narxini kamaytirishi kerak, chunki taxtada ramka buferining o'zi uchun ozgina xotira qoladi.
http://fayllar.org
Yüklə 29,23 Kb.

Dostları ilə paylaş:




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin