Dasturiy ta'minot - Software rendering

Qurilmada ishlaydigan dasturiy ta'minot rendereri GPU.

Dasturiy ta'minot kompyuter dasturlari yordamida modeldan tasvirni yaratish jarayoni. Kontekstida kompyuter grafikasini ko'rsatish, dasturiy ta'minot ko'rsatish bog'liq bo'lmagan ko'rsatuv jarayonini anglatadi grafik apparat ASIC, masalan grafik karta. Ko'rsatish butunlay Markaziy protsessor. Har bir narsani (umumiy maqsadli) protsessor bilan ishlash asosiy afzalliklarga ega, chunki u grafik apparatning (cheklangan) imkoniyatlari bilan chegaralanmaydi, lekin bir xil tezlikni olish uchun ko'proq yarimo'tkazgichlar kerak bo'ladi.

Rendering arxitektura, simulyatorlar, video o'yinlar, filmlar va televizion vizual effektlar va dizaynni vizualizatsiya qilishda qo'llaniladi. Renderlash animatsiya jarayonidagi so'nggi qadam bo'lib, soya, tekstura-xaritalash, soyalar, aks ettirish va xiralashganlik kabi vizual effektlar bilan modellarga va animatsiyaga so'nggi ko'rinishni beradi.[1] Renderni ikkita asosiy toifaga bo'lish mumkin: real vaqtda ko'rsatish (shuningdek, onlayn renderlash deb nomlanadi) va oldindan ko'rsatish (shuningdek, oflayn render deb ham ataladi). Haqiqiy vaqtda ko'rsatish interaktiv ravishda sahnani ko'rsatish uchun ishlatiladi, masalan 3D kompyuter o'yinlari va odatda har bir ramka bir necha millisekundlarda ko'rsatilishi kerak. Oflayn render realistik tasvirlar va filmlarni yaratish uchun ishlatiladi, bu erda har bir kvadrat bir necha soat yoki kunlarni bajarishi mumkin yoki dasturchilar tomonidan murakkab grafik kodni disk raskadrovka qilish uchun.

Haqiqiy vaqtda dasturiy ta'minotni ko'rsatish

Haqiqiy vaqtni ko'rsatish uchun asosiy e'tibor ishlashga qaratilgan. Dastlabki shaxsiy kompyuterlar uchun real vaqt rejimida yaratilgan dasturiy ta'minot 3D geometriyasi illyuziyasini yaratish uchun ko'plab fokuslardan foydalangan (haqiqiy 3D tekis yoki bilan cheklangan edi Gur-soyali ko'pburchaklar asosan ish bilan ta'minlangan parvoz simulyatorlari.) Ultima yer osti dunyosi Masalan, cheklangan shaklda yuqoriga va pastga qarashga, qiya pollarga va xonalar ustidagi xonalarga qarashga ruxsat berilgan, ammo murojaat qilgan spritlar barcha batafsil ob'ektlar uchun. Ushbu o'yinlarda ishlatiladigan texnologiya hozirda quyidagicha tasniflanadi 2.5D.

Arxitektura jihatidan zamonaviy 3D unvonlarga o'xshash birinchi o'yinlardan biri, to'liq imkoniyat yaratishga imkon beradi 6DoF, edi Tushish, qaysi xususiyatli 3D modellar to'liq bitmapdan qilingan naqshli uchburchak ko'pburchaklar. Voxel asoslangan grafikalar, shuningdek, erni tezkor va nisbatan batafsilroq ko'rsatish uchun mashhurlikka erishdi Delta Force, lekin mashhur belgilangan funktsiya apparat oxir-oqibat uni ishlatishni imkonsiz qildi. Zilzila tomonidan samarali dasturiy ta'minot ko'rsatuvchisi xususiyatlari Maykl Abrash va Jon Karmak. Uning mashhurligi bilan, Zilzila va o'sha paytdagi boshqa ko'pburchak 3D o'yinlar sotishda yordam berdi grafik kartalar va boshqa o'yinlar qo'shimcha qurilmalardan foydalanishni boshladi API-lar kabi DirectX va OpenGL. Dasturiy ta'minotni namoyish qilish asosiy texnologiya sifatida tushib ketgan bo'lsa-da, 2000-yillarning ko'plab o'yinlari hali ham dasturiy ta'minotni ishlab chiqaruvchiga aylantirdi, Haqiqiy emas va Haqiqiy bo'lmagan musobaqa Masalan, o'sha davr protsessorlarida yoqimli sifat va ishlash qobiliyatini ishlab chiqaradigan dasturiy ta'minot ishlab chiqaruvchilari. Oxirgisi AAA o'yinlari apparat ko'rsatuvchisiz edi Quvilgan, zamonaviy voxel texnologiyasini namoyish etdi, ammo to'qimalarni filtrlash va zararli xaritalash grafik apparatida topilganidek.

In video o'yin konsol va Arja o'yini bozorlar, 3D evolyutsiyasi keskinroq kechdi, chunki ular doimo bir maqsadli chipsetlarga tayanib kelgan. 16 bitli konsollar kabi o'yinlarda RISC tezlashtiruvchi patronlarini qo'lga kiritdi StarFox va Virtua poygasi dasturiy ta'minotni moslashtirilgan ko'rsatmalar to'plami orqali amalga oshirdi. The Yaguar va 3DO 3D apparati bilan jo'natilgan birinchi konsollar edi, ammo bu qadar emas edi O'yinlar markazi aksariyat o'yinlarda bunday xususiyatlardan foydalanila boshlanganligi.

1990-yillarning oxiridan 2000-yillarning boshlariga qadar bo'lgan bolalar va oddiy o'yinchilar uchun o'yinlar (eskirgan tizimlar yoki asosan ofis dasturlari uchun mo'ljallangan tizimlardan foydalaniladi), odatda dasturiy ta'minot ishlab chiqaruvchisi sifatida ishlatilgan. Masalan, O'yinchoqlar tarixi 2: Buzz Lightyear for the Rescue o'yinni o'ynashdan oldin apparat yoki dasturiy ta'minotni tanlashni tanlashi mumkin, boshqalari esa yoqadi Yarim hayot sukut bo'yicha dasturiy ta'minot rejimida va Options menyusida OpenGL yoki DirectX-dan foydalanish uchun sozlanishi mumkin. Ba'zi bir 3D modellashtirish dasturlari, shuningdek, vizualizatsiya uchun dasturiy ta'minot ko'rsatuvchilariga ega. Va nihoyat taqlid qilish va tekshirish apparat shuningdek dasturiy ta'minotni taqdim etuvchini talab qiladi. Ikkinchisiga misol sifatida Direct3D mos yozuvlar rasterizatori.

Ammo yuqori darajadagi grafikalar uchun ham dasturiy ta'minotning "san'ati" tugamagan. Dastlabki grafik kartalar dasturiy ta'minot ishlab chiqaruvchilardan ancha tezroq bo'lgan va dastlab sifatli va ko'proq xususiyatlarga ega bo'lgan bo'lsa-da, u ishlab chiquvchini 'belgilangan funktsiyali' pikselli ishlov berishga cheklab qo'ydi. Tez orada o'yinlarning ko'rinishini diversifikatsiya qilish zarurati paydo bo'ldi. Dasturiy ta'minotni ko'rsatishda cheklovlar yo'q, chunki o'zboshimchalik bilan dastur bajariladi. Shunday qilib, grafik kartalar kichik dasturlarni bajarish orqali ushbu dasturlashtirilishini qayta tikladilar tepalik va per piksel /parcha, shuningdek, nomi bilan tanilgan shaderlar. Shader tillari, masalan Yuqori darajadagi shader tili (HLSL) DirectX yoki OpenGL soyalash tili (GLSL), mavjud C -shaderlar uchun dasturlash tillari singari va (o'zboshimchalik bilan ishlaydigan) dasturiy ta'minot bilan o'xshashligini ko'rsatishni boshlaydi.

Grafik apparatni real vaqt rejimida ko'rsatish uchun asosiy vosita sifatida qabul qilinganidan beri, protsessor ishlashi har doimgidek o'sib bordi. Bu dasturiy ta'minotni ko'rsatuvchi yangi texnologiyalarni paydo bo'lishiga imkon berdi. Dasturiy ta'minotning ishlash ko'rsatkichlari asosan soyada qolgan bo'lsa-da, ba'zi bir zamonaviy real vaqtda dastur ta'minotchilari ixtisoslashtirilgan dasturlardan foydalangan holda keng funktsiyalar to'plamini va oqilona ishlashni (dasturiy ta'minot ishlab chiqaruvchisi uchun) birlashtirmoqdalar. dinamik kompilyatsiya va shunga o'xshash kengaytirilgan ko'rsatmalar to'plami SSE. Garchi bugungi kunda dasturiy ta'minotni namoyish qilishda apparat ta'minotining ustunligi beqiyos ishlashi, xususiyatlari va doimiy yangiligi tufayli shubhasiz bo'lsa-da, ba'zilari CPU va Grafik protsessorlar u yoki bu tarzda yaqinlashadi va dasturiy ta'minot va apparat ko'rsatish o'rtasidagi chiziq yo'qoladi.[2]

Dasturiy ta'minotni qayta tiklash

Uskunaning ishlamay qolishi, buzilgan drayverlar, taqlid qilish, sifatni ta'minlash, dasturiy ta'minotni dasturlash, apparatni loyihalashtirish va apparat cheklovlari kabi turli sabablarga ko'ra, ba'zida protsessorga grafik funktsiyalardagi funktsiyalarning bir qismini yoki barchasini o'z zimmasiga olishga ruxsat berish foydali bo'ladi.

Natijada, mavjud bo'lgan grafik grafik tezlatgichni almashtirish yoki kattalashtirishga qodir bo'lgan bir qator umumiy maqsadli dasturiy ta'minot to'plamlari mavjud:

  • RAD O'yin vositalari 'Pixomatic, D3D 7-9 mijoz dasturlari ichida statik ulanish uchun mo'ljallangan o'rta dastur sifatida sotiladi.
  • SwiftShader, D3D9 & OpenGL ES 2 mijoz dasturlari bilan to'plam uchun mo'ljallangan, o'rta dastur sifatida sotiladigan kutubxona.
  • Swrast, softpipe va LLVMpipe ichkarida ishlaydi Mesa OpenGL 1.4-3.2 apparat qurilmasini taqlid qilish uchun tizim darajasida shim sifatida ishlash.
  • WARP, Windows Vista-dan beri tezkor D3D 9.1 va undan yuqori emulyatsiyani ta'minlash uchun tizim darajasida ishlaydigan Microsoft tomonidan taqdim etilgan. Bu Microsoft har doim ishlab chiquvchilarga taqdim etadigan juda sekin dasturiy ta'minotga asoslangan mos yozuvlar rasterizatoridan tashqari.
  • Apple dasturini taqdim etuvchi CGL, tez OpenGL 1.1-4.1 emulyatsiyasini ta'minlash uchun tizim darajasida ishlaydigan Apple tomonidan Mac OS X-da taqdim etilgan.

Oldindan taqdim etish

Haqiqiy vaqtda namoyish qilishdan farqli o'laroq, oldindan namoyish qilish bilan ishlash ikkinchi darajali ahamiyatga ega. U asosan kino sanoatida hayotiy sahnalarni yuqori sifatli tasvirlarini yaratish uchun ishlatiladi. Ko'pchilik maxsus effektlar hozirgi filmlarda kompyuter grafikasi tomonidan to'liq yoki qisman yaratilgan. Masalan, ning xarakteri Gollum ichida Piter Jekson Uzuklar Rabbisi filmlar to'liq kompyuter tomonidan yaratilgan tasvirlar (CGI). Shuningdek, uchun animatsiya filmlar, CGI mashhurlikka erishmoqda. Eng muhimi Pixar kabi bir qator filmlarni suratga olgan O'yinchoqlar tarixi va Nemoni topish, va Blender fondi dunyodagi birinchi ochiq film Fillar orzu qiladi.

Effektlarning juda sifatli va xilma-xilligiga ehtiyoj borligi sababli, oflayn rejimda namoyish qilish juda moslashuvchanlikni talab qiladi. Haqiqiy vaqtdagi tijorat grafik apparatlari kundan-kunga yuqori sifatli va dasturlashtiriladigan bo'lsada fotorealistik CGI hali ham dasturiy ta'minotni ko'rsatishni talab qiladi. Pixarniki RenderMan, masalan, umumiy maqsadli protsessorni talab qiladigan cheksiz uzunlik va murakkablikdagi shaderlarga imkon beradi. Kabi yuqori realizm uchun usullar raytracing va global yoritish qo'shimcha ravishda dasturiy ta'minot uchun mos emas va aksariyat hollarda faqat dasturiy ta'minotda amalga oshiriladi.

Shuningdek qarang

Adabiyotlar

  1. ^ "LIVE Dizayn - Interaktiv Vizualizatsiya | Autodesk". Arxivlandi asl nusxasi 2014 yil 21 fevralda. Olingan 2016-08-20.
  2. ^ Valich, Teo (2012-12-13). "Tim Suini, 2-qism:" DirectX 10 bu so'nggi tegishli grafik API "| TG Daily". TG Daily. Arxivlandi asl nusxasidan 2016 yil 4 martda. Olingan 2016-11-07.