Unityで開発中に、Unity上で管理しているGPUリソース(Texture2D, GraphicsBuffer等)をCUDAで実装されたライブラリで高速に処理して、それをさらにUnityに戻して利用したい、みたいな場面が極々々々稀に存在します。 かなりニッチな需要だと感じたので、備忘録的な意味でも実際に存在した場面でどうやったのかを紹介できればと思います。 前提知識 C++を使用したNative Plugin周り 多少のCUDAの知識 環境 筆者側で動作確認できた環境なので、その他の環境でも動く可能性はあります(さすがにGPUはNVIDIA必須ですが) Windows 10以上 Unity2020.1以上 D3D11 Pascal世代以降のNVIDIA GPU CUDA 11.3 そもそもなぜCUDA? そもそもな話Unityは、Textureや、頂点データ等を含むGraphicsBu