[Babylon.js #12] ミニボウリング試作 — Havok物理 + GLBピン + PMX操作キャラ(VPDポーズ)
Babylon.js + Havokでミニボウリングを試作。GLBピン差し替え、物理形状の分離、レーンの簡易木目、影・空の演出、PMX(VPD)ポーズ適用、スペース長押し投球までを実装ログとしてまとめる。
Babylon.js + Havokでミニボウリングを試作。GLBピン差し替え、物理形状の分離、レーンの簡易木目、影・空の演出、PMX(VPD)ポーズ適用、スペース長押し投球までを実装ログとしてまとめる。
手続き型ノイズを用いた地形や世界の生成において、計算負荷を下げるLODと、ポリゴン数を増やさずに近景の微細な凹凸を表現するBump Mappingの考え方を解説。これにてアルゴリズム編は完結し、次なるShader実践編へと繋がります。
前回のProcedural Lightingで立体化したノイズ地形に、GLSLのmix関数を用いて生態系(バイオーム)を構築します。高さ(Height)と法線のY成分(傾き)を基準にした質感のブレンド手法を直感的に学びます。
Babylon.js版スマートボールをCanvas 2Dに移植し、物理と当たり判定を自前実装。サブステップでの時間刻み、上部アーチ壁の衝突反射、ポケットのカップ形状を線分近似で判定し“乗る→落ちる”で入賞させる設計、チャージ発射や軽量演出まで、ロジック中心に解説する。
ノイズの勾配から法線マップを捏造し、GLSLで光と影をシミュレーションするProcedural Lightingの実装手法。中心差分法を用いた法線計算とランバート反射について図解とコードで直感的に解説します。
打ち出しの等速運動ロジック、段ボールの質感を出すセグメント配置、真鍮や真珠のマテリアル表現、そして黄金のパーティクルと効果音による没入感の演出まで、技術的な難所とその解決策を詳しく解説します。
Windows + CUDA 環境の Hunyuan3D 実践編。minimal_demo.py を使って 1枚画像から3Dモデル(焚火)を生成し、Blenderで編集して Babylon.js 用に整える流れを解説します。GLB書き出し時の圧縮設定、アニメーションOFF、Purge All、サイズ最適化、GitHub push での 100MB 制限トラブル対処まで含めた実務ログ。
Noise 入門シリーズ第17回。静止したVoronoi(細胞)を時間経過で動かす4D化のアプローチと、Simplex Noiseを使ったDomain Warpingによる「ノイズの融合(Noise Blending)」の仕組みを解説。生物的な鼓動と無機物が交差するプロシージャル表現をGLSLで実装します。
Babylon.js + babylon-mmd で作った MMDキャラクター隊列に、焚き火休憩イベントを実装します。Hunyuan3D で焚き火の 3D モデルを生成し、Blender で確認したうえで glb を Babylon.js から読み込み、Roam / GoToFire / AtFire / Regroup の4状態で行動を切り替えるロジックを実装しました。
Noise 入門シリーズ第16回。基礎・アルゴリズム編を抜け、いよいよShaderを用いた実践的な応用レイヤーへ。4DノイズにFBMの複雑さとDomain Warpingの空間のねじれを掛け合わせ、静止したノイズを視覚的な「魔法(VFX)」へと昇華させるプロセスをまとめます。
Windows 11 + CUDA 12.1 環境で Hunyuan3D の 3D 生成(ShapeGen/TexGen)を実行するまでの導入方法を詳細に解説。PyTorch 2.5.1+cu121、transformers 4.39.3、MSVC 14.44、custom_rasterizer の CUDA ビルド、torch.load 脆弱性回避など、実際に動作確認できた構成をまとめる。
Babylon.js / babylon-mmd を使って、メビウス帯の上を MMD キャラが歩くシーンを構築。トラックフレーム、姿勢合わせ、MMDアニメーションの停止対策、Inspector UI によるリアルタイム調整までまとめて解説。