Co to jest przeglądarka WebGL ™?
Przeglądarka WebGL ™ to program przeznaczony nie tylko do wyświetlania podstawowych dokumentów HyperText Markup Language (HTML), JavaScript® i kaskadowych arkuszy stylów (CSS), które są w trybie online, ale także do interpretowania specjalnego podzbioru tych specyfikacji znanego jako WebGL ™. Z technicznego punktu widzenia WebGL ™ nie jest samodzielnym językiem, ale biblioteką graficzną, która wykorzystuje element canvas silnika renderowania przeglądarki do tworzenia pomostu między kodem WebGL ™, sprzętem graficznym i przeglądarką. Daje to przeglądarce WebGL ™ możliwość renderowania zaawansowanej trójwymiarowej grafiki (3D) znacznie szybciej niż byłoby to możliwe przy użyciu innych rodzajów wtyczek i wygodniej niż przy użyciu osobno skompilowanych programów w przeglądarce. Prawie wszystkie główne przeglądarki internetowe natywnie obsługują WebGL ™, chociaż te przeglądarki, które nie implementują natywnej obsługi, zazwyczaj mają wtyczki innych firm, które udostępniają niezbędne komponenty HTML. Chociaż przeglądarka WebGL ™ jest w stanie szybko renderować grafikę 3D ze względu na bezpośredni dostęp do karty graficznej komputera, jest to również źródło potencjalnie dużych luk w zabezpieczeniach, które mogłyby pozwolić złośliwemu programowi na wykonanie szkodliwego kodu na komputerze zdalnym.
Zasadniczo przeglądarka WebGL ™ zawiera kod, który konkretnie łączy funkcje zawarte w bibliotece graficznej w taki sposób, aby były dostępne za pośrednictwem JavaScript®. W standardowej wersji 5 języka HTML (HTML5) istnieje specjalny element znany jako płótno, którego można używać do rysowania bezpośrednio w obszarze ekranu bez konieczności używania wtyczek lub pracy z tagami HTML lub CSS, które może nie być tak precyzyjne, jak to wymagane. W zgodnej przeglądarce WebGL ™ JavaScript® jest powiązany z biblioteką graficzną niskiego poziomu i rysuje bezpośrednio do elementu canvas HTML5, zapewniając platformę dla grafiki, którą można wypchnąć bezpośrednio z karty graficznej na urządzenie wyświetlające.
Stosowane biblioteki to biblioteki systemów wbudowanych OpenGL® (OpenGL ES®), które są podzbiorem standardowych funkcji biblioteki OpenGL® zaprojektowanych do pracy z urządzeniami mobilnymi. Jednym z powodów, dla których przeglądarka WebGL ™ jest możliwa, jest lekka natura bibliotek WebGL ™, które nie zużywają dużych ilości zasobów i nie zawierają niektórych bardziej wymagających procesorów funkcji pełnej implementacji OpenGL®. Powtarzającym się problemem z przeglądarką WebGL ™ jest jednak to, że sterowniki i sprzęt na komputerze lub urządzeniu muszą obsługiwać aplikację OpenGL ES®. Niektóre systemy operacyjne, urządzenia, sprzęt, a nawet sterowniki nie mają możliwości uruchomienia programu WebGL ™, a także nie mają łatwego rozwiązania, bez konieczności wymiany zainstalowanego sprzętu graficznego.
Główne obawy związane z bezpieczeństwem przeglądarki WebGL ™ uniemożliwiły niektórym głównym programistom przeglądarek pełne wdrożenie obsługi WebGL ™. Sprowadza się to przede wszystkim do bezpośredniego dostępu przeglądarki do kodu WebGL ™. Gdy jest wykorzystywana złośliwie, kartą graficzną można manipulować w celu wyrządzenia szkody przez system hosta lub, w najgorszym przypadku, można ją wykorzystać jako bramę do wykonania lub umieszczenia szkodliwego kodu komputerowego.