地球の内部を暴く!3D地球断面・地殻マントル完全ソリッド描画と地形遮蔽(Occlusion)のグラフィックス技術

📅 2026-08-28 ✍️ prosalmontech #QuakeViewer3D#マントル断面#WebGL#クリッピングプレーン#地球内部構造#3Dグラフィックス

地表の2次元地図や単なる球体サーフェスを見つめるだけでは、「なぜ深さ数百キロメートルの地中で地震が起きるのか」「地球の内部はどのような層構造になっているのか」という地球物理学の本質を直感的に捉えることは不可能です。

この教育的・科学的課題を打破するため、QuakeViewer3Dでは、地球儀を任意の子午線や断面でスパッと切り開き、地下深さ6,371kmの地球中心(内核)に至るまでの層構造を完全に中身の詰まった「ソリッド体」として可視化する「3D地球断面・マントルスライスモード」を開発しました。本記事では、WebGLにおけるクリッピングプレーン技術、中空化(Hollow)を防ぐ多層断面キャップ生成、そして地形遮蔽(Occlusion)のグラフィックス設計を解説します。

1. WebGLハードウェア・クリッピングプレーンによる任意断面カット

3Dメッシュを物理的にCPU上で切断(CSG: Constructive Solid Geometry演算)すると、ポリゴンの再分割や頂点再計算に膨大な負荷がかかり、リアルタイムな60fps操作が不可能になります。

そこでQuakeViewer3Dでは、WebGLのGPUハードウェア機能であるクリッピングプレーン(Clipping Planes)を採用しました。切断平面を法線ベクトル $\vec{n} = (n_x, n_y, n_z)$ と原点からの距離定数 $w$ で表現する平面方程式 $\vec{n} \cdot \vec{x} + w = 0$ として定義し、Three.jsのマテリアルへ注入します:

// クリッピング平面の有効化と平面オブジェクトの定義
renderer.localClippingEnabled = true;

// 震源地の経度(longitude)に合わせて回転する鉛直切断プレーン
const clipPlane = new THREE.Plane(new THREE.Vector3(0, 1, 0), 0);

const earthMaterial = new THREE.MeshStandardMaterial({
    map: earthTexture,
    clippingPlanes: [clipPlane],
    clipShadows: true
});

GPUのフラグメントシェーダー段階で、切断平面の外側にあるピクセルは discard(破棄)され、CPUに一切の負荷をかけることなく一瞬で地球の半分を削ぎ落とすことができます。

2. 中空化(Hollow Artifact)を防ぐ5層ソリッド断面キャップの動的生成

しかし、単に球体メッシュをクリップしただけでは、地球は「薄いゴム風船」のように中身が空っぽの中空体として見えてしまい、リアルな地球科学の断面図にはなりません。

切断面に穴が空いて見えるのを防ぐため、QuakeViewer3Dでは切断平面と完全に一致する向き・位置に、地球内部構造モデル(PREM: Preliminary Reference Earth Model)に厳密に基づいた5層の同心円ディスクメッシュ(Concentric Disc Caps)を自動生成して配置しています:

切断プレーンが回転・移動するたびに、これらのディスクメッシュの姿勢クォータニオンを切断平面の法線ベクトル $\vec{n}$ に自動同期させることで、どの角度から地球をカットしても完全に中身の詰まったソリッド断面が破綻なく描画されます。

3. 大陸側の完全地形深度遮蔽(Occlusion)とZバッファの最適化

ソリッド断面と半球を描画する際、次に立ちはだかる難所が「反対側の大陸の裏面が透けて見えたり、手前のソリッド断面と前後関係が反転する」という深度ソートの破綻です。

QuakeViewer3Dでは、徹底した多層レンダリングパス制御を構築しました:

4. スラブ(沈み込む海洋プレート)と震源球体の立体プロファイル

このソリッド断面の真価は、過去に発生した震源球体(InstancedMesh)や、沈み込む太平洋プレートの形状モデルと同時に重ね合わせた瞬間に発揮されます。

切断面に沿って眺めると、日本海溝から深さ410km〜660kmのマントル遷移層へと冷たいスラブが突き刺さり、そのスラブの上面に沿って深発地震が整然と並んでいる様子や、遷移層の境界面でスラブが水平に折れ曲がる「スタグナント・スラブ(滞留プレート)」の幾何学形態が、あたかもCTスキャンで地球を輪切りにしたかのように手にとるように理解できます。

5. まとめとデジタルアースの科学的到達点

最新のWebGL技術と地球物理学のPREMモデルを融合させたことで、QuakeViewer3Dは教科書の静止画イラストを遥かに超越した「生きた地球の動的解剖図」を実現しました。

学校教育や大学の地学・地球惑星科学の講義、そして防災リテラシーの普及において、地球深部への直感的な理解を促す次世代のデジタル教材として広く活用されることを期待しています。

🚀 prosalmontech ポートフォリオ

SatViewer3D、QuakeViewer3D、NihongoChatAI、JPQuizなど、開発中のアプリ・Webサービスを公開中!

トップページでプロダクトを見る