[Noise 入門 #26] Vertex Shaderによる頂点変形(Displacement) — ノイズで立体を鼓動させる
3Dモデルに生命を吹き込むVertex ShaderでのDisplacement手法。頂点の法線ベクトルを利用してノイズで立体を変形させる原理と、Three.jsでの実装方法を図解とGLSLコードで直感的に解説。
3Dモデルに生命を吹き込むVertex ShaderでのDisplacement手法。頂点の法線ベクトルを利用してノイズで立体を変形させる原理と、Three.jsでの実装方法を図解とGLSLコードで直感的に解説。
Next.js×Three.js×MMDで作った3D時計に、上部ツールバー/右パネル/HUDを追加。UIが整った今こそフォント設計が効く。巨大な時刻表示、曜日/天気、HUD、パネルの階層を崩さず“作品っぽさ”を上げるためのフォント選定・スケール・letter-spacing・shadow・数字の見せ方と、CSS変数での管理方法を整理する。
Noise 入門シリーズ第25回。純粋なGLSLコードをThree.jsに統合し、インタラクティブなノイズ表現を実現するエンジニアリングの基礎を学びます。ShaderMaterialによるマテリアル制御、Uniformsによる時間同期、EffectComposerを用いたポストプロセスのセットアップまでを体系的に整理します。
Next.js×Three.jsで構築した3D時計に、MMD(PMX/VMD/VPD)のランダム歩行・ランダム会話・カメラ追従・ポーズ適用を統合。レスポンシブ床スケール、吹き出しCanvasスプライト、VMD停止制御、talk中のVPD適用など“キャラクターとして動く時計”に進化させた実装まとめ。
Noise 入門シリーズ第24回。空間内のオブジェクトではなく、レンダリングされた画面全体(カメラ)に対してノイズを適用する「ポストプロセス」の世界へ。UV座標のサンプリング偽装を用いて、水中、陽炎、次元が崩壊するグリッチエフェクトをGLSLで実装する手法を直感的に解説します。
Next.jsプロジェクトのpublic/index.htmlで孤立起動するThree.js時計を実装。ベベル付きジオメトリでアナログ時計、TextGeometryで3DデジタルUI、onBeforeCompileで壁にノイズ注入、EffectComposer+Bloom、lil-guiで露出/ライト/UI色/ノイズ/床シェーダをライブ調整。MMD(PMX)のロードと簡易歩行も添える。
Shaderにおける極座標(Polar Coordinates)の基礎から、4D Simplex Noiseを用いた円環状のオーラ生成まで。幾何学的な秩序とノイズの揺らぎを掛け合わせ、脈打つようなプロシージャル魔法陣をGLSLで実装する手法を詳しく解説します。
WebGLを使わずに、描画コンテキストの Translate・Scale・Rotate の順序を制御することで、2D座標系の中に奥行きと旋回感を生み出すテクニックを解説します。
Shaderで空間を歪曲し、重力レンズ効果や事象の地平面、降着円盤を表現。FBMとDomain Warpingを用いてブラックホールをプロシージャルに錬成するGLSLの実践的な解説です。
React Three Fiberでドメイン・ワーピング(Domain Warping)を実装し、有機的なうねりと虹色のスペクトル・カラーを表現する方法を解説。外部Bloomライブラリを使わず、GLSLのみで高輝度な発光を実現するテクニックも紹介。
Noise 入門シリーズ第21回。いよいよ第3集「Shader(GLSL)実践編」がスタート。これまで学んだノイズの数学とアルゴリズム(FBM、4D Noise)を総動員し、GPUの力で画面上に「燃え盛るプロシージャルな炎」を実装する方法を直感的に解説します。
メビウス帯の継ぎ目で発生する姿勢フリップを、2つの等価姿勢から連続性を保つ方を選択することで解消。WebXRでは回転を上書きせず位置のみ追従し、HMD head tracking を維持したままVR体験を作る。