Oppaat

▷ Opengl: mikä se on ja mihin se on tarkoitettu

Sisällysluettelo:

Anonim

Oletko koskaan kuullut OpenGL: stä ? Siitä tuli nopeasti alan johtava reaaliaikainen grafiikan sovellusliittymä, koska se oli periaatteessa ainoa käytettävissä useilla alustoilla. Esittelemme tänään tämän artikkelin, jossa selitämme, mikä OpenGL on ja mihin se on tarkoitettu.

Sisällysluettelo

historia

80-luvulla ohjelmiston kehittäminen, joka oli yhteensopiva monenlaisten graafiseen maailmaan liittyvien laitteistojen kanssa, oli todellinen haaste kehittäjille. Piti käsitellä hyvin erilaisia rajapintoja ja kirjoittaa erityisiä ohjaimia jokaiselle laitteistotyypille, koska se oli erittäin kallista, joten ohjelmoijaryhmät ulkoistettiin kehittämisen nopeuttamiseksi. Koska kukin joukkue työskenteli erikseen rajapinnoillaan, tuotettiin paljon tarpeetonta koodia. Vuonna 1992 SGI johti OpenGL Architecture Review Boardin (OpenGL ARB) perustamista, yritysryhmää, joka ylläpitäisi ja laajentaisi eritelmää seuraavina vuosina. OpenGL on kehittynyt IRIS GL: stä, ja se on voittanut laitteistoriippuvuusongelman tarjoamalla ohjelmistoemuloinnin niille ei-tuetuille ominaisuuksille. Siten sovellukset voisivat käyttää edistynyttä grafiikkaa suhteellisen heikoissa järjestelmissä.

Ymmärtääksesi, mikä OpenGL on, meidän on ensin tiedettävä, mikä on sovellusliittymä.

Mikä on OpenGL: n ymmärtäminen, mikä on sovellusliittymä?

API tai sovellusohjelmointirajapinta on joukko koodeja, joita voidaan käyttää eri sovelluksissa kommunikoimaan keskenään. Se on jotain, joka suorittaa käyttöliittymän kaltaisen tehtävän vain henkilöiden ja ohjelmien vuorovaikutuksen edistämisessä, vain, vain sovellusympäristössä. Sitä käytetään koodien tai toimintojen yhdistämiseen eri alustojen välillä, jotta voit hyödyntää yhden verkkosivuston palveluita toisella.

Mikä on OpenGL?

Sitä pidetään pääasiassa sovellusliittymänä, joka tarjoaa meille suuren joukon toimintoja, joita voimme käyttää 3D- ja 2D-grafiikan ja kuvien käsittelemiseen. Se ei kuitenkaan sinänsä ole pelkästään sovellusliittymä, vaan Khronos-ryhmän kehittämä ja ylläpitämä eritelmä. Sitä käytetään myös videopelien kehittämiseen, missä se kilpailee Direct3D: n kanssa Microsoft-alustalla.

Määrittää tarkalleen, minkä funktion tuloksen tulisi olla ja kuinka sen pitäisi toimia. Koska OpenGL-eritelmä ei tarjoa toteutustietoja, todellisilla kehitetyillä versioilla voi olla erilaisia ​​toteutuksia, kunhan niiden tulokset ovat määritelmän mukaisia ​​(ja ovat siksi samat käyttäjälle).

OpenGL-kirjastojen kehittäjät ovat yleensä näytönohjainten valmistajia. Jokainen GPU tukee tämän sovellusliittymän tiettyjä versioita, jotka ovat erityisesti kyseiselle näytönohjaimelle kehitettyjä OpenGL-versioita. Esimerkiksi, kun käytetään Applen kaltaisen yrityksen järjestelmää, he ylläpitävät OpenGL-kirjastoa, ja Linuxissa on yhdistelmä grafiikan tarjoajien versioita ja mukautuksia näille kirjastoille. Tämä voi tarkoittaa, että aina kun OpenGL näyttää omituiselta käytökseltä, jonka sen ei pitäisi olla, se on todennäköisesti näytönohjainten valmistajien virhe. Aina kun toteutuksessa on virhe, se korjataan yleensä päivittämällä näytönohjaimen ohjaimet. Nämä ohjaimet sisältävät uusimmat versiot, joita GPU tukee. Tästä syystä on aina suositeltavaa päivittää ohjaimet.

OpenGL-tavoitteet

Päätavoitteet ovat:

  • Vähennä käyttöliittymän monimutkaisuutta eri näytönohjaimien kanssa , jolloin ohjelmoija saa ainutlaatuisen ja yhtenäisen sovellusliittymän. Piilota eri laitteistoalustojen erilaiset ominaisuudet edellyttäen, että kaikki toteutukset tukevat kaikkia OpenGL-ominaisuuksia (käyttämällä tarvittaessa ohjelmistoemulointia).

OpenGL: n perustoiminto on primitiivisten toimintojen, kuten pisteiden, viivojen ja monikulmioiden, hyväksyminen ja muuntaminen pikseliksi. Tämä prosessi suoritetaan graafisella putkilinjalla, joka tunnetaan nimellä OpenGL State Machine. Suurin osa OpenGL-komennoista antaa primitiivisiä toimintoja kaavion segmentointiin. Kunnes versio 2.0 julkaistiin, segmentoinnin jokainen vaihe suoritettiin vakiintuneessa toiminnossa, mistä oli seurauksena pieni konfiguroitavuus. Tästä versiosta lähtien useat vaiheet ovat täysin ohjelmoitavissa GLSL: n avulla.

laajennukset

Erittäin mielenkiintoinen hieno ominaisuus on sen laajennustuki. Aina kun GPU-yritysyritys ottaa käyttöön uuden tekniikan tai uuden optimointitavan 3D-kuvien tuottamiseksi , se on ohjaimissa toteutetussa laajennuksessa. Jos laitteisto, jolla sovellus toimii, tukee tätä laajennusta, kehittäjä voi käyttää laajennuksen tarjoamia toimintoja edistyneemmän tai tehokkaamman grafiikan saamiseksi. Tällä tavalla videopelien kehittäjä voi käyttää näitä uusia renderointitekniikoita joutumatta odottamaan, että OpenGL sisällyttää toiminnallisuuden tuleviin versioihin, yksinkertaisesti tarkistamalla, tukeeko näytönohjain laajennusta. Usein, kun laajennus on suosittu tai erittäin hyödyllinen, siitä tulee lopulta osa tulevia OpenGL-versioita.

Suosittelemme, että Mad Max julkaisee tuen Vulkanille uudessa julkisessa beetaversiossa Linuxille

OpenGL-kehitys

Maaliskuussa 2015 Vulkan- sovellusliittymä esiteltiin OpenGL: n seuraajana Game Developers -konferenssissa. Ohjelmointirajapinta on alun perin "Next Generation OpenGL" tai "glNext", ohjelmointirajapinta on avoimen lähdekoodin ja monialustainen. Ero OpenGL: n kanssa on, että laitteistoihin kiinnitetään enemmän huomiota ohjelmoinnin aikana, mikä lisää merkittävästi virtaa. Jotkut PC-pelit tukevat jo Vulkania, mutta useimmat käyttävät DirectX: ää. Vulkania kehittää myös Khronos-konserni.

Suosittelemme lukemaan markkinoiden parhaita näytönohjaimia.

Toistaiseksi artikkeli OpenGL: stä, toivottavasti olet ymmärtänyt mistä se koostuu ja enemmän. Voit kuitenkin jättää kommentteihin kysymyksiä.

Oppaat

Toimittajan valinta

Back to top button