본문 바로가기

Graphics

three.js 와 WebGL 정의

webGL은 웹에서 GPU접근하는 표준이다

webGL을 그래픽엔진이라고 하지만,

webGL은 브라우저의 렌더엔진(Webkit, Blink, Gecko..)을 사용하기 위한 API(표준)모음일 뿐이다.

표준(WebGL)이 있기때문에 어떤 브라우저에서 어떤 렌더엔진이든간에 같은 코드로 그래픽작업을 할수있다.

 

webGL을 어떻게 만들까 고민하다가 OpenGL을 보고 참고해서 만들었다. 그래서 개념이 같다.

그래서 쉐이더 언어(GLSL) 서로 호환 가능하다. 

 

webGL API는 자바스크립트로 제공한다.

사용자는 자바스크립트를 통해 webGL에 접근해 브라우저의 렌더엔진을 컨트롤하게 된다.

 

three.js는 webGL을 쉽게 사용하기 위해 상위 interface를 하나 더 둔 wrapper library다.

그렇기 때문에 만약 두개의 정육면체의 충돌을 구현하는 코드를 각각 webGL API 와 three.js 로 작성한다고 할때 three.js상위 개념이기때문에 훨씬 코드의 량도 적고, 직관적이다. 

 

이런 WebGL 랩퍼 라이브러리는 여러가지다. (three.js babylon.js, playcanvas.js etc.)

'Graphics' 카테고리의 다른 글

[playcanvas] Anchor 와 pivot  (0) 2019.12.02
normal 에 대해  (0) 2019.11.14
three.js 와 WebGL 정의  (0) 2019.11.14
V-Ray material to glTF  (0) 2019.11.14
[playcanvas] Entity 드래그하기  (0) 2019.10.07
[math] 벡터의 정규화란  (0) 2019.09.27