WebGL ™ -selain on ohjelma, joka on suunniteltu paitsi näyttämään verkossa olevia perushypertekstimerkintäkieli (HTML), JavaScript® ja CSS -asiakirjoja, mutta myös tulkitsemaan näiden määritysten erityistä osajoukkoa, joka tunnetaan nimellä WebGL ™. Teknisesti WebGL ™ ei ole itsenäinen kieli, vaan grafiikkakirjasto, joka käyttää selaimen hahmonnustekniikan piirtoelementtiä sillan luomiseen WebGL ™ -koodin, grafiikkalaitteiston ja selaimen välille. Tämä antaa WebGL ™ -selaimelle mahdollisuuden tehdä edistynyt kolmiulotteinen (3D) grafiikka paljon nopeammin kuin muuten olisi mahdollista käyttämällä muita laajennuksia ja helpommin kuin käytettäessä erikseen koottuja ohjelmia selaimen sisällä. Lähes kaikki suuret verkkoselaimet tukevat WebGL ™: ää natiivisti, vaikka niissä selaimissa, jotka eivät ota käyttöön natiivitukea, on yleensä kolmansien osapuolten laajennuksia, jotka paljastavat tarvittavat HTML-komponentit. Vaikka WebGL ™ -selain pystyy tuottamaan 3D -grafiikkaa nopeasti tietokoneen näytönohjaimen suoran pääsyn vuoksi, se on myös mahdollisten suurten suoja -aukkojen lähde, joiden vuoksi haittaohjelma voi suorittaa haitallista koodia etätietokoneessa.
Pohjimmiltaan WebGL ™ -selain sisältää koodia, joka linkittää nimenomaan grafiikkakirjastoon sisältyvät toiminnot tavalla, joka mahdollistaa niiden käytön JavaScript®: n kautta. HTML-kielivakioversion 5 (HTML5) alla on erityinen elementti, joka tunnetaan kankaana, jota voidaan käyttää piirtämiseen suoraan näytön alueelle ilman laajennuksia tai työskennellä HTML- tai CSS-tunnisteiden kanssa, jotka ei ehkä ole niin tarkka kuin vaaditaan. Yhteensopivan WebGL ™ -selaimen JavaScript® on sidottu matalan tason grafiikkakirjastoon ja vetää suoraan HTML5-kangasosaan, joka tarjoaa alustan grafiikalle, joka voidaan siirtää suoraan näytönohjaimesta näyttölaitteeseen.
Käytetyt kirjastot ovat OpenGL® -sulautettujen järjestelmien kirjastoja (OpenGL ES®), jotka ovat osajoukko vakiomuotoisista OpenGL® -kirjastotoiminnoista, jotka on suunniteltu toimimaan mobiililaitteiden kanssa. Yksi syy siihen, miksi WebGL ™ -selain on mahdollinen, on WebGL ™ -kirjastojen kevyt luonne, sillä ne eivät kuluta suuria määriä resursseja eivätkä sisällä joitain OpenGL®-toteutuksen suoritinvaltaisimpia toimintoja. Toistuva ongelma WebGL ™ -selaimessa on kuitenkin se, että tietokoneen tai laitteen ohjainten ja laitteistojen on voitava käyttää OpenGL ES® -sovellusta. Joillakin käyttöjärjestelmillä, laitteilla, laitteilla ja jopa ohjaimilla ei ole valmiuksia ajaa WebGL ™ -ohjelmaa, eikä niillä ole myöskään helppoa ratkaisua asennetun grafiikkalaitteiston vaihtamiseen.
Suuret huolenaiheet WebGL ™ -selaimen turvallisuudesta ovat estäneet joitakin suuria selainkehittäjiä käyttämästä WebGL ™ -tukea täysin. Tämä johtuu ensisijaisesti suorasta pääsystä, jonka selain tarjoaa WebGL ™ -koodille. Kun näytönohjainta käytetään haitallisesti, sitä voidaan manipuloida vahingoittamaan isäntäjärjestelmää tai pahimmassa tapauksessa käyttää sitä yhdyskäytävänä haitallisen tietokonekoodin suorittamiseen tai istuttamiseen.