Mini Tokyo 3D バージョン 4.0.0 がリリースされました (GitHub)。前回のリリースから1年8ヶ月、動いているものを壊さずに改良していくのはなかなか大変でしたが、最近はコーディングエージェントのおかげでだいぶ楽になりました。バージョン 3.x からのメジャーアップグレードということで、多くの変更や改善(開発者向け API の互換性に影響のあるものを含む)が入っています。
それでは、3.6.0 からの追加・修正機能を見ていきましょう。
タイルセットとマップスタイルを刷新
Mapbox GL JS v3 へのアップグレードに伴い、著名ランドマークの 3D モデル、樹木、シャドウ、よりリアルなライティングでデジタルツインが表現されます。こちらは新宿の夜景です。美しいですね!
Mini Tokyo 3Dに新しいマップスタイルを導入。Mapbox GL JS v3へのアップグレードに伴い、著名ランドマークの3Dモデル、樹木、シャドウ、よりリアルなライティングでデジタルツインが表現される。こちらは新宿の夜景。美しい!https://t.co/cW5lnDMq6T pic.twitter.com/izXOSmsx5Q
— 草薙 昭彦 (@nagix) January 10, 2025
さらに、新しいタイルセットでは高精細道路データが配信されます。都心部限定ですが、高架橋、アンダーパス、橋梁、車線ペイントまでよくわかります。
ベースマップをMapbox GL JS 3.24.0の最新版にアップグレード、そしてタイルセットとマップスタイルを刷新。見どころは高精細道路データ。高架橋、アンダーパス、橋梁、車線ペイントまでよくわかるhttps://t.co/cW5lnDMXWr pic.twitter.com/ftOwkIsF7e
— 草薙 昭彦 (@nagix) May 24, 2026
フォグの追加と大気色の調整
マップスタイルの更新と同時に、フォグの追加と大気色の調整が行われました。地平線に近いところがスムーズにぼやけていきます。ベースマップだけではなく、列車や旅客機のオブジェクト、PLATEAU プラグインで表示されるテクスチャ付き建築物にも同じようにフォグの効果が効きます。

ライティングの更新
環境光、太陽光(並行光源)を組み合わせたより現実的なライティングに変更。ベースマップ、3D オブジェクト、テクスチャ付き建築物に対するライト設定は同期されており、自然な見た目になるようにガンマ補正を追加しています。特に、日の出・日の入りの時間の情景は見ものです。
合わせてdeck.glのTile3DLayerにもフォグをかけた。deck.glにはフォグ機能が存在しないので、LayerExtensionを拡張してフォグを実装したカスタムシェーダーを挿入するという力技。でも、PLATEUプラグインの風景がだいぶリアリスティックになったな〜https://t.co/cW5lnDMXWr pic.twitter.com/h5uVQ96bZ3
— 草薙 昭彦 (@nagix) July 11, 2026
列車、旅客機、バスの位置計算を GPU で行い描画がスムーズに
列車、旅客機、バス車両オブジェクトの位置計算を GPU 側に持っていくことで大きな性能向上を達成しました。下の図は毎フレームごとの処理の概要ですが、JavaScript なのでシングルスレッドの逐次処理しかできなかったオブジェクトの位置計算が、GPU で並列化されるようになったということです。いわゆる GPGPU 処理です。

GPGPUによる性能向上で、100倍速再生モード(タイムラプス)もこの通りヌルヌルにhttps://t.co/cW5lnDMXWr pic.twitter.com/knEiuoI9Jo
— 草薙 昭彦 (@nagix) June 19, 2025
駅の共有ボタン
追跡している列車やフライトの共有機能は前からありましたが、選択している駅を他の人に共有できるようになりました。待ち合わせの駅を、LINE や AirDrop で知り合いの方に通知してみてください。
追跡している列車やフライトの共有機能は前からあったけど、選択している駅を他の人に共有できるようになった。待ち合わせの駅を、LINEやAirDropで飛ばすとかねhttps://t.co/cW5lnDMXWr pic.twitter.com/5mbFoPN0ZW
— 草薙 昭彦 (@nagix) June 27, 2026
GTFS ローディングの改善
URL のクエリパラメータで GTFS データを指定した場合に、デフォルトの列車データはデータソースから除外され、指定した GTFS データのみが表示されるようになりました。
また、GTFS のロード処理が改善され、多くのデータがエラーなく表示できるようになりました。
GTFS のタイムゾーン対応
GTFS データソースを指定した場合に、GTFS データで設定されているタイムゾーンに合わせて日時表示に使われるタイムゾーンが使われるようになりました。これにより、海外の GTFS 事業者のデータを見る場合でも、自動的に現地時刻で表示できるようになります。
ただし、デフォルトの列車データがデータソースに含まれている場合はそちらが優先されて日本標準時になります。また、複数の GTFS データが追加された場合には、最初に指定されたデータのタイムゾーンが有効になります。
GTFS ルートカラー・停留所の出発時刻の表示
GTFS 車両にマウスを当てた時と追跡している時に、走行ルートを運行系統カラーでハイライトするように改良しました。さらに、停留所リストのラインも運行系統カラーに変更し、各停留所の出発予定時刻が表示されるようになりました。
GTFS車両にマウスを当てた時と追跡している時に、走行ルートを運行系統カラーでハイライトするように改良。さらに、停留所リストのラインも運行系統カラーに変更https://t.co/Dk7uXQMaIM pic.twitter.com/J5C4qyex4T
— 草薙 昭彦 (@nagix) January 14, 2025
GTFS の静的データのみの表示にも対応
GTFS 静的データのみのデータセットに対応しました。GTFS Realtime フィードを指定しない場合は時刻表通りの運行をします。これに伴い、GTFS 運行車両の再生モード(タイムラプス)表示にも対応しています。
GTFS静的データのみのデータセットに対応。GTFS Realtimeフィードを指定しない場合は時刻表通りの運行をします。これに伴い、GTFS運行車両の再生モード(タイムラプス)表示にも対応
— 草薙 昭彦 (@nagix) February 23, 2025
こちらは秋葉バス (袋井)https://t.co/39JL4pU5DD pic.twitter.com/16NpyL7XbG
花火プラグインの改善
花火プラグインの物理シミュレーションのロジックを1から作り直しました。大半の処理を GPU に移したことでパフォーマンスが大幅に向上。牡丹、パレット(多色版牡丹)、しだれ柳、土星、芯入り、きらめきの6種の美しい花火がランダムに上がります。
花火プラグインの物理シミュレーションのロジックを1から作り直した。大半の処理をGPUに移したことでパフォーマンスが大幅に向上。牡丹、パレット(多色版牡丹)、しだれ柳、土星、芯入り、きらめきの6種の美しい花火がランダムに上がるhttps://t.co/cW5lnDMXWr pic.twitter.com/eBmyuhQaie
— 草薙 昭彦 (@nagix) August 12, 2026
PLATEAU プラグインの改善
PLATEAU プラグインが 3D Tiles 1.1 形式の読み込みに対応しました。すでに、2025年度以降に整備された PLATEAU データの一部は 1.1 形式になっているとのことです。例えば台東区は全域がテクスチャ付きになっていてすごいですね。雷門の大提灯や仲見世商店街などは、高精細なテクスチャを用意しています。
PLATEAUプラグインが3D Tiles 1.1形式の読み込みに対応。すでに、2025年度以降に整備されたPLATEAUデータの一部は1.1形式になっているとのこと。例えば台東区は全域がテクスチャ付きになっていてすごい。雷門の大提灯や仲見世商店街などは、高精細なテクスチャを用意してるねhttps://t.co/cW5lnDMXWr pic.twitter.com/kR5ABJH6NC
— 草薙 昭彦 (@nagix) July 20, 2026
合わせてビルのマテリアル設定を変更、オルソ画像の彩度を調整し、タイルロードの不具合修正・効率化しています。
1年半前にデータを更新した時は、テクスチャ付き LOD2 に対応しているのは213市区町村でしたが、現時点では300市区町村に増えています。国土交通省は2027年度までに500都市での 3D 都市モデル整備完了を目指しています。
対応路線・エリアがさらに拡大
対応路線・エリアがさらに拡大し、これまでの路線を含めると合計179路線(支線・連絡線含む)、2,016駅、平日の列車本数は49,093本になりました。
| 路線 | 説明 |
|---|---|
| JR 中央本線 | 大月〜甲府間を追加 |
| JR 宇都宮線 | 宇都宮〜黒磯間を追加 |
| JR 上越線 | 高崎〜水上間を追加 |
| JR 常磐線 | 水戸〜高萩間を追加 |
| JR 水郡線 | 水戸〜常陸大子間、上菅谷〜常陸太田間が新規開通 |
| JR 日光線 | 宇都宮〜日光間が新規開通 |
| JR 烏山線 | 宝積寺〜烏山間が新規開通 |
| JR 信越本線 | 高崎〜横川間が新規開通 |
| JR 吾妻線 | 渋川〜大前間が新規開通 |
| JR 御殿場線 | 国府津〜沼津間が新規開通 |
| 小田急箱根鉄道線 | 小田原〜強羅間が新規開通 |
| 銚子電気鉄道線 | 銚子〜外川間が新規開通 |
| 鹿島臨海鉄道大洗鹿島線 | 水戸〜鹿島神宮間が新規開通 |
| ひたちなか海浜鉄道湊線 | 勝田〜阿字ヶ浦間が新規開通 |
| 真岡鐵道真岡線 | 下館〜茂木間が新規開通 |
| 宇都宮芳賀ライトレール線 | 宇都宮駅東口〜芳賀・高根沢工業団地間が新規開通 |
| 伊豆箱根鉄道大雄山線 | 小田原〜大雄山間が新規開通 |
| 伊豆箱根鉄道駿豆線 | 三島〜修善寺間が新規開通 |
| 伊豆急行線 | 伊東〜伊豆急下田間が新規開通 |
| 富士急行線 | 大月〜河口湖間が新規開通 |
| 上毛電気鉄道上毛線 | 中央前橋〜西桐生間が新規開通 |
| 上信電鉄上信線 | 高崎〜下仁田間が新規開通 |
| わたらせ渓谷鐵道わたらせ渓谷線 | 桐生〜間藤間が新規開通 |
ダイヤ改正対応
次のダイヤ改正に対応しました。
- 東京メトロ丸の内線の2024年12月7日ダイヤ改正
- 日暮里舎人ライナーの2025年2月3日ダイヤ改正
- 首都圏各線の2025年3月15日一斉ダイヤ改正
- 山万ユーカリが丘線の2025年4月1日ダイヤ改正
- ゆりかもめの2025年10月18日ダイヤ改正
- 東京メトロ銀座線、横浜市営地下鉄の2025年11月1日ダイヤ改正
- 都営浅草線、京急、京成、北総鉄道、芝山鉄道の2025年12月15日ダイヤ改正
- 江ノ電の2025年12月20日ダイヤ改正
- 首都圏各線の2026年3月14日一斉ダイヤ改正
- 宇都宮ライトレールの2026年4月1日ダイヤ改正
- 山万ユーカリが丘線の2026年5月1日ダイヤ改正
ライブカメラの拡充
ライブカメラプラグインで表示される、沿線のライブカメラがさらに追加されました。
- 本八幡ライブカメラ
- 両国ライブカメラ
- 安針塚ライブカメラ
- 追浜ライブカメラ
- 田端ライブカメラ
- 箱根湯本ライブカメラ
- 河津ライブカメラ
- 河口湖ライブカメラ
- 寿ライブカメラ
- 春日居町ライブカメラ1
- 春日居町ライブカメラ2
- 春日居町ライブカメラ3
- 葭川公園ライブカメラ
- 足柄(静岡)ライブカメラ
- 岡本ライブカメラ
- 鎌ヶ谷ライブカメラ
- 京急鶴見ライブカメラ
- 市場前ライブカメラ
- 面影橋ライブカメラ
- 小田原ライブカメラ
- 東雲ライブカメラ2
ユーザーガイド・開発者ガイドがフランス語、簡体中国語に対応
コミュニティーのコントリビューションにより、ユーザーガイド・開発者ガイドがフランス語、簡体中国語に対応しました。

データソースの統合(API 互換性に影響する変更)
バージョン 3.x では Map コンストラクタの options.dataSources は、組み込みの列車・フライトデータに加えて追加する GTFS データソースを指定するものでした。バージョン 4.0.0 では組み込みの ODPT および Mini Tokyo 3D データ自体が dataSources の要素となり、渡した dataSources がそのデフォルトの集合を置き換えます。組み込みデータを残したまま独自のソースを追加するには、dataSources を指定せずに実行時に Map#addDataSource で追加する(組み込みソースは削除されません)か、組み込みソースと独自ソースをまとめて dataSources 配列に含めてください。
詳しくは、開発者ガイドをご覧ください。
アセットの配信方法の変更(互換性に影響する変更)
従来 Map コンストラクタの options.dataUrl から配信されていたマップスタイルとローカライズ辞書のファイル(osm-liberty.json および dictionary-<lang>.json)は、バージョン 4.0.0 ではバンドルと同じ場所にある assets フォルダから読み込まれるようになりました(style.json および dictionary-<lang>.json)。jsDelivr CDN を使う場合は自動的に配信されます。Mini Tokyo 3D を自分のアプリケーションにバンドルする場合は、dist に含まれる assets フォルダをバンドルと同じ場所に配置してください。gz 圧縮データは引き続き options.dataUrl から読み込まれます。また、新しいスタイルは以前のものと互換性がないため、それをベースにしたカスタムスタイルは作り直す必要があります。
詳しくは、開発者ガイドをご覧ください。
ライブラリ配信形式の変更(互換性に影響する変更)
バージョン 4.0.0 では、ライブラリの配信形式を見直しました。従来の開発用 UMD ビルド(非圧縮の .js)を廃止し、代わりに Node.js やバンドラ向けの専用 CommonJS ビルド(.cjs、main フィールド)を追加、あわせて ES モジュールビルド(.esm.js、module フィールド)にはソースマップを同梱しました。ブラウザの <script> 読み込み用には、これまでどおり UMD ビルド(.min.js、グローバル変数 mt3d)を提供します。
メソッド・イベントの追加
バージョン 4.0.0 では、Map クラスに次のメソッドが追加されました。
| メソッド | 説明 |
|---|---|
addDataSource |
マップにデータソースを追加 |
getLight |
マップに現在設定されているライトを取得 |
removeDataSource |
データソースをマップから削除 |
また、Map クラスに次のイベントが追加されました。
| イベント | 説明 |
|---|---|
light |
ライトが変化したときに発生 |
さらに、ThreeLayerInterface インターフェースに次のメソッドが追加されました。
| メソッド | 説明 |
|---|---|
prerender |
シーンが描画される前に呼び出される任意実装のメソッド |
render |
レイヤーを描画するために呼び出される任意実装のメソッド |
詳細は API リファレンスをご覧ください。












