WebGL의 의미와 개념에 대해 알아봅시다.
WebGL 의미 및 개념 이해
WebGL(Web Graphics Library)은 웹 브라우저에 3D를 표시하는 시스템을 말합니다. WebGL(Web Graphics Library)은 웹 브라우저에 별도의 플러그인을 설치하지 않고도 2D나 3D 그래픽을 구현할 수 있는 구조이다. 웹에서 2D 또는 3D 그래픽을 렌더링하기 위한 낮은 수준의 JavaScript API(애플리케이션 프로그래밍 인터페이스) 형태입니다. WebGL(웹 GL)은 OpenGL ES 2.0을 기반으로 합니다. WebGL은 로열티가 없기 때문에 누구나 사용할 수 있고 별도의 플러그인도 필요하지 않으며 웹 브라우저에 내장되어 실행됩니다. WebGL은 웹 브라우저 엔진에 내장된 HTML5 Canvas 요소에 그려집니다. WebGL은 렌더링을 가속화할 수 있는 그래픽 하드웨어인 그래픽 카드를 사용합니다. WebGL은 JavaScript로 프로그래밍 가능합니다. 모바일 브라우저에서도 사용 가능합니다.
WebGL 의미 및 개념 설명
WebGL(Web Graphics Library)은 웹 브라우저에서 3차원(3D) 컴퓨터 그래픽을 표현하는 기능을 제공하는 내장된 JavaScript 라이브러리를 말합니다. WebGL(Web Graphics Library)은 구글 크롬(Google Chrome)에서 사용되며, 마이크로소프트 엣지(마이크로소프트 엣지), 사과웹 브라우저에서 3D를 표시하는 시스템으로 Safari, Mozilla Firefox 등의 웹 브라우저에서 사용할 수 있습니다. WebGL은 “웹 기반 그래픽 라이브러리”라고 합니다. WebGL은 저작권(CopyRight)이 없는 웹 표준입니다. WebGL은 3D 컴퓨터 그래픽 API인 OpenGL ES(OpenGL for Embedded Systems)의 주요 기능을 웹 브라우저에 내장하고 API에 대한 일대일 제어를 제공하는 JavaScript 라이브러리입니다. 표준 구성입니다. OpenGL(Open Graphics Library)은 그래픽 프로그래밍을 위한 API입니다. OpenGL은 운영 체제(OS)상관없이 사용할 수 있는 그래픽 관련 라이브러리입니다. OpenGL을 사용하면 GPU(그래픽 처리 장치)를 사용하는 소프트웨어가 여러 플랫폼에서 실행될 수 있습니다. WebGL은 웹 브라우저에서 2D 및 3D 고급 그래픽을 렌더링하기 위한 저수준 JavaScript API입니다. 렌더링은 컴퓨터 프로그램을 사용하여 이미지를 만드는 프로세스입니다. WebGL은 컴퓨터의 GPU를 사용하기 때문에 고속 계산이 가능하고 부드러운 이미지를 그릴 수 있습니다. WebGL은 대부분의 웹 브라우저에서 지원되며 Flash Player와 같은 별도의 플러그인이 필요합니다. 필수는 아니며 모바일 스마트폰 브라우저에서도 작동합니다. WebGL은 3D API 및 래스터화 엔진입니다. 래스터라이제이션 엔진은 2차원 화면에 3차원 그래픽을 표현하기 위해 정점을 픽셀로 변환하는 과정이다. WebGL은 컴퓨터의 GPU에서 실행되므로 GPU에서 실행하려면 코드를 제공해야 합니다. GPU에서 실행되는 코드는 Vertex Shader 및 Fragment Shader라는 함수입니다. Vertex Shader와 Fragment Shader의 두 가지 기능은 GLSL(OpenGL Shading Language)로 작성되었습니다. WebGL은 함수가 출력되는 위치를 기준으로 점, 선, 삼각형, 사각형, 다각형 등 다양한 유형의 그래픽의 기본 기하학적 요소를 래스터화합니다. 플러그인은 제3자가 소프트웨어에 기능을 추가할 수 있게 해주는 기술 및 프로그램입니다. 플러그인은 애드온(Add-On)이라고 하며, 웹 브라우저는 번역, 동영상 재생, 사전 등 다양한 편의 기능을 제공합니다. WebGL은 ThreeJS와 같은 라이브러리를 사용하여 3D 렌더링을 더 쉽게 만듭니다. ThreeJS(Three.js)는 자바스크립트만을 이용해 3D 콘텐츠를 제작하고 실행할 수 있는 라이브러리입니다. ThreeJS에서는 3D CG를 쉽게 표시할 수 있도록 소재와 샘플을 제공하고 있습니다. 이제 WebGL을 통해 웹사이트에서도 3D 그래픽을 표현할 수 있습니다.