2017년에 만든 Grimoire.js의 샘플을 되돌아 본다
9375 단어 GLSLWebGLGrimoire.js
소개
Grimoire.js은 일본에서 시작한 WebGL 프레임 워크입니다.
이 1년을 되돌아 보면, Grimoire.js 에는 표현력을 강화하는 구조가 많이 실장된 해가 아니었을까 생각합니다.
조속하지만 샘플을 몇 가지 소개하고 싶습니다.
2017년에 지원되는 주요 기능
셰이더 태그
이전에는 셰이더를 외부 파일로 준비해야 했지만, 이 기능을 사용하면 HTML의
script
태그(type="text/sort")로 셰이더를 설명할 수 있게 되었습니다. jsdo.it 등으로 셰이더를 확인하면서 코딩할 수 있으므로 개인적으로 편리한 기능입니다.
h tp : // js. t / cx 20 / 9

h tp : // js. t/cx20/chM

h tp : // js. t/cx20/4 에 ztL
인스턴싱
복수의 메쉬를 1회의 드로우 콜로 그릴 수 있게 되는 편리한 기능입니다. 다루기 위해서는 데이터 구조를 의식할 필요가 있기 때문에 조금 연습이 필요할지도 모릅니다.

htp : // js. t/cx20/u 3rD

htp : // js. t/cx20/u 3rD
다중 카메라 설치
어쩌면 전부터 어떤 기능이었을지도 모릅니다. 여러 카메라를 설정할 수 있음을 올해 알았습니다.

htp : // js. t/cx20/K ぃg
PBR
PBR (은)는 물리 베이스 렌더링의 약어로, 별로 상세하게는 이해할 수 없습니다만, 현실의 라이팅에 가까운 표현을 할 수 있는 구조인 것 같습니다.

h tp : // js. t/cx20/89C8

h tp : // js. 아니 t/cx20/아 TDR
glTF 2.0
glTF은 Khronos가 제안하는 3D 형식입니다. glTF 2.0 보다 PBR 에 대응해, 보다 표현력이 향상된 포맷으로 되어 있습니다.

htp : // js. t/cx20/kurl

htp : // js. t/cx20/오 GhR
기타 라이브러리 / API 조합
Effekseer
Effekseer 은 파티클 등의 이펙트를 제작하기 위한 툴입니다. 이펙트 파일을 WebGL에서도 사용할 수 있기 때문에 사용해 보았습니다.

htp : // js. t/cx20/Q3 5
Draco 형식 파일
Draco 형식은 Google이 제안하는 새로운 3D Mesh 압축 형식입니다. 디코드하는 라이브러리가 제공되고 있으므로 사용해 보았습니다. 데이터에 따라 다르지만 상당히 높은 압축을 기대할 수 있습니다. 아래 샘플에서 사용하는 모델은 obj 형식에 비해 약 1/30으로 압축 (6.6MB → 212KB)되는 것을 확인하고 있습니다.

h tp : // js. t/cx20/우오 J0
Web Audio API

h tp : // js. t/cx20/8wgq
자이로 센서
자이로 센서은 스마트폰 등에 내장된 기울기 센서입니다. 이러한 센서를 Grimoire.js와 함께 사용해 보았습니다. 스마트폰으로 작품을 기울이면 모양이 바뀌게 되어 있습니다.

htp : // js. 아니 t/cx20/아 j5
Oimo.js
Oimo.js은 JavaScript 기반 물리 연산 라이브러리입니다. 가볍고 빠른 동작이 특징입니다.

htp : // js. 아니 t / cx20 / 네 s

h tp : // js. t/cx20/0fsp
결론
어떻습니까? 여기에서 소개한 샘플 이외에도 다수 샘플을 투고하고 있으므로 흥미있는 분이 계시면 htp : // js. 이 t/타g/G리도 있어. js를 봐 주세요.
Reference
이 문제에 관하여(2017년에 만든 Grimoire.js의 샘플을 되돌아 본다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/cx20/items/b84ae652b19ca62165bc텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)