パナソニック×Unity×マツダCX-5:日本初量産車Unity搭載CDCが拓く車載DXの最前線

パナソニック、新型マツダCX-5にUnity 3Dエンジン搭載のCDCを初採用

2026年7月7日、パナソニックオートモーティブシステムズはマツダの新型MAZDA CX-5向けに自社のコックピットドメインコントローラー(CDC)が採用されたことを発表した。注目すべきは、同社が日本の自動車メーカーとして初めてUnity 3Dエンジンを量産車の車載システムへ統合した点だ。インフォテインメント(IVI)、ヘッドアップディスプレイ(HUD)、メータークラスターを一元的にコントロールするCDCにUnityが組み込まれたことで、次世代デジタルコックピットの実用化が大きく前進した。

UnityエンジンがCDCにもたらすリアルタイム可視化革命

今回の統合によって、車両のドア開閉状態やウインカー、周辺環境情報などをリアルタイムで高精細なグラフィックスとして運転者に伝えることが可能になった。Unityのリアルタイム3Dレンダリング技術がコックピット全体の視覚体験を刷新する。

  • 統合制御:IVI・HUD・メータークラスターを単一CDCで一元管理
  • 高精細グラフィックス:Unityエンジンによるリアルタイム車両情報の視覚化
  • OTAアップデート対応:ソフトウェア定義車両(SDV)として継続的な機能強化が可能

新型CX-5は欧州で2025年12月にデビューし、日本では2026年5月に発売。国内累計受注台数は2026年6月21日時点で1万台を超え、月間販売目標の5倍ペースと好調だ。

CEDEC 2026でUnityが提示する開発の未来

7月22〜24日にパシフィコ横浜ノースで開催される「CEDEC 2026」にUnityはゴールドスポンサーとして出展し、3つのセッションを実施する。

  • Unity 3D・2Dグラフィックス最新情報(7/23 10:50〜):Unity 6.5の3D・2Dレンダリング強化内容
  • Unity AIを使った実際のゲーム開発(7/23 13:20〜):AIエージェント活用のプロトタイピング事例
  • CoreCLR移行事例:MMORPG「ロードナイン」から学ぶ(7/23 14:40〜):スマイルゲートの実装事例を通じたパフォーマンス改善の知見

これらの技術革新はゲーム開発に留まらず、車載HMIのリッチなUI実現やAIエージェント活用によるHMI体験高度化にも直結する内容として業界から注目されている。

Unity 6.7とSDV時代における車載展開の加速

現在Alpha公開中のUnity 6.7は2026年末にLTS(長期サポート版)としてリリース予定で、Embedded Linux・QNX・Android・Windowsといった組み込みプラットフォームへの正式対応が予告されている。パナソニックのCDC採用によって、UnityはTier1サプライヤー経由での量産車搭載という新たなルートを確立した。Toyota・Mazda・Hondaなど日本の主要自動車メーカーがUnityを車載開発に採用する流れが加速する中、CDCレベルでの統合は車載UIのソフトウェア化(SDV化)を一層推進するものとして業界内で大きな関心を集めている。

参考情報

UnityでMCPツールが「ファイル名が長すぎます」エラーになった時の解決策

Unity のMCP(モデルコンテキストプロトコル)ツールを使ってC#コードを実行する際に、こんなエラーが出ることがあります。

Error running mono.exe: ファイル名または拡張子が長すぎます。

なぜこのエラーが起きるのか

UnityのMCPツールは、通常「CodeDom」という仕組みでC#をコンパイルします。このCodeDomは、コードをコンパイルする際にWindows上でmono.exeというプログラムを起動しますが、その時に使用するアセンブリ(DLL)のパス情報をコマンドラインで渡します。

Unityプロジェクトが多くのパッケージを使っていると、これらのパス情報が合計で長くなりすぎて、Windows が許可している文字数の制限(260文字)を超えてしまい、エラーになるのです。

解決策:Roslyn を使う

CodeDom の代わりに「Roslyn」(マイクロソフトの公式なC#コンパイラ)をメモリ内で直接動かすことで、この問題を回避できます。幸いなことに、Unityには既にRoslynが組み込まれているので、それを有効化するだけです。

実装方法

以下のコードを Assets/Editor/RoslynLoader.cs として保存してください。

[InitializeOnLoad]
static class RoslynLoader
{
    static RoslynLoader()
    {
        var editorData = Path.GetDirectoryName(UnityEditor.EditorApplication.applicationPath);
        var roslynDir = Path.Combine(editorData, "Data", "MonoBleedingEdge", "lib",
                                     "mono", "msbuild", "Current", "bin", "Roslyn");

        var dlls = new[]
        {
            "System.Collections.Immutable.dll",
            "Microsoft.CodeAnalysis.dll",
            "Microsoft.CodeAnalysis.CSharp.dll",
        };

        foreach (var dll in dlls)
            if (File.Exists(Path.Combine(roslynDir, dll)))
                Assembly.LoadFrom(Path.Combine(roslynDir, dll));
    }
}

このコードはUnityの起動時に自動実行され、RoslynのDLLファイルをメモリにロードします。[InitializeOnLoad]属性により、Unityが起動するたびに自動的に実行されます。

確認方法

実装後、MCPツールで以下のコードを実行してみてください。

return System.Type.GetType(
    "Microsoft.CodeAnalysis.CSharp.CSharpSyntaxTree, Microsoft.CodeAnalysis.CSharp"
) != null ? "Roslyn有効" : "未ロード";

「Roslyn有効」と表示されれば成功です。これで長いファイルパスの問題が解消され、エラーなくコードが実行できるようになります。