2023-03-16
3Dモデルのウェブ標準「glTF (GLransmission Format)」には、JSON形式のGLTFと、バイナリ形式のGLBと、二種類の表現があります。それらを相互に変換するツールとライブラリを、glTF-PipelinesをESモジュール化して作りました。


「glTF Pipeline ES modules」

GLTFとGLBを相互変換します。依存ライブラリ Cesiumforkmersenne-twisterだけ移植し、GitHub Pages公開し、使うものだけ Cesium.js として抜き出し、Node.js用コードは Buffer.js で吸収、Promiseが無い時代のコードは bluebird.js で一部補い、mimeをESモジュール化して対応。

Denoを入れた環境で、下記のコマンドでインストールしてすぐ使えます。

deno install --allow-read --allow-write https://code4fukui.github.io/gltf-pipeline/gltf2glb.js deno install --allow-read --allow-write https://code4fukui.github.io/gltf-pipeline/glb2gltf.js

GLB(バイナリ)からGLTF(JSON)

glb2gltf model.glb

GLTF(JSON)からGLB(バイナリ)

glb2gltf model.gltf

ブラウザやDenoから使う場合もインポートするだけ簡単! import { gltfToGlb } from "https://code4fukui.github.io/gltf-pipeline/lib/gltfToGlb.js";

ScaniverseでスキャンしてGLB形式でエクスポートしたファイルをサイズ縮小したり、アニメーションを足したり、いろいろ加工して遊びましょう!

links
- 3DスキャンしたGLBデータをコンパクトにするオープンソースライブラリ「GLTF.js」

Tweet
クリエイティブ・コモンズ・ライセンス
本ブログの記事や写真は「Creative Commons — CC BY 4.0」の下に提供します。記事内で紹介するプログラムや作品は、それぞれに記載されたライセンスを参照ください。
CC BY / @taisukef / アイコン画像 / プロフィール画像 / 「一日一創」画像 / RSS