[Astro #104] Three.js GLTFExporterによるブラウザ完結型GLB/GLTFエクスポートの実装
Three.js (r183) の GLTFExporter を利用して、ボーン構造やモーフターゲット(表情等)を保持したままブラウザ上のみで GLB エクスポートを行う実装手法をまとめました。
Three.js (r183) の GLTFExporter を利用して、ボーン構造やモーフターゲット(表情等)を保持したままブラウザ上のみで GLB エクスポートを行う実装手法をまとめました。
Three.jsのスカイボックスをGLSLフラグメントシェーダーで再実装。3D Value Noiseによるシームレスな雲、星の瞬き、流れ星、WIREDスタイルのグリッドオーバーレイをリアルタイムアニメーションで実現。
ブラウザ上で動作するGLB圧縮ツールの実装解説。gltf-transformを活用したDracoジオメトリ圧縮と、Canvas APIを用いたテクスチャのWebP化を組み合わせたファイルサイズ削減手法、およびAstroへの統合手順について詳解します。
GLBファイル内のテクスチャをWebPに変換してファイルサイズを大幅削減する圧縮モジュールを、外部ライブラリなしの純粋なJavaScriptで実装した。
WIRED ROOMを Surge.sh・Firebase Hosting・GitLab Pages に配置して9サーバー体制に。Fly.io断念の経緯、ポータル近接判定のY座標バグ修正を記録。
WIRED ROOMを Render と Deno Deploy に配置して6サーバー体制に。スロープ上り下り実装、HDRI環境マップ・トーンマッピング導入、RenderのCORS罠を記録。
VRM Thumbnail Generator v2。表情(blendShape)スライダー9種、背景画像/カラーピッカー、ライティング調整、ポーズ25個対応(◀▶ナビ)、W×H独立サイズ指定、アスペクト比プリセット(1:1/4:1/16:9/9:16)、サンプルVRM、THREE.Clock非推奨警告修正。
WIRED ROOMに3種類のポータルタイプを実装。Friend Portal(青)とWorks Portal(黄)の追加、portal-editor.jsによるリスト編集UI、corridor.jsの広場でのタイプ別表示分け、ZIP exportでのJSON生成を完了。
レンジフード(LIXIL ADR-732WR)のモーター故障に対し、原因の切り分け、代替本体検討時の互換性検証、およびモーター単体(富士工業 90233661)交換による復旧手順を事実ベースで解説します。
WIRED ROOMをNetlify・GitHub Pages・Vercel・Cloudflare Pagesの4サーバーに配置し、VRでサーバーをまたいだポータル移動を実現。CORS設定、Vercelのpublic問題、フェードアウト遷移、VRM警告修正まで。
WIRED ROOM 5日目。VR近接ヒント表示、広場ポータルのバナー画像対応、ZIPインポートによる完全復元、全データクリア機能を実装しました。
WIRED ROOM開発4日目。プログレスバー実装、config.js/portal-effect.jsへの共通化、app.jsのinit分解(loadRoom/disposeRoom/loadExternalRoom)、プロシージャル十字路を廃止してKenney素材の広場に置き換え、VRポータル操作、Quest 3問題の調査記録