Unityからパブリッシャーアカウントを削除された開発者が「UnityによるLGPLの摘発はユーザーからの報告頼みでランダム」と批判
by Jillian Northrup
Unity Technologiesが開発するゲームエンジン「Unity」では、「アセット」と呼ばれる、ゲーム制作に使用できる数多くのツールが提供されています。2019年からUnityにおいて「VLC for Unity」というアセットの配布を行っていた開発者のマーティン・フィンケル氏が、Unityのパブリッシャーアカウントを削除された経緯と、Unityに対する批判を自身のブログで公開しています。
https://mfkl.github.io/2024/01/10/unity-double-oss-standards.html
フィンケル氏は、2019年12月からUnity上でVLCメディアプレーヤーを動作させるアセット「VLC fo Unity」の配布を行っていました。VLC for Unityについてフィンケル氏は、「ゲームエンジンであるUnityとマルチメディアエンジンであるVLCの間の橋渡しであり、UnityベースのゲームでVLCテクノロジーに基づいた独自のメディアプレーヤーを構築することが可能です」と述べています。
フィンケル氏によると、VLC for UnityはWindows版とユニバーサルWindowsプラットフォーム(UWP)版、Android版が提供されており、数多くの開発者がこのアセットをダウンロードしていたとのこと。
しかし、2023年夏、フィンケル氏の元にUnityから「VLC for Unity(Android版)、VLC for Unity(UWP版)、VLC for Unity(Windows版)は非推奨のアセットとなりました」とのメールが送られてきました。Unityからのメールには「これらのアセットにはLGPLライセンスへの依存関係があり、プロバイダ契約のセクション5.10.4に違反しているという報告を受けました。我々による調査の結果、これらのパッケージはアセットストアに戻さないという決定が下されました」との記述が含まれていました。
LGPLとは、フリーソフトウェア財団が公開しているコピーレフト型のフリーソフトウェアライセンスで、他のプログラムにリンクされることを前提としたライブラリのためのライセンスです。1991年にLGPLを作成したという開発者のガンビー氏は「1991年の作成当時、私は『フリーソフトウェア』という考え方を明確にし、その概念を普及させるために働きました」と述べています。
一方でUnityでは自身のアセットにLGPLを適用することや、LGPLを適用したコンテンツを配布することを明確に禁じています。その結果、フィンケル氏のパブリッシャーアカウントは削除されました。
これらの決定に対しフィンケル氏は「アセットからLGPLコードを削除するなどの改善策をUnityに提示しましたが、Unityは基本的に「『LGPLコードを削除したとしてもアセットストアに戻すことはできない』」との立場を崩しませんでした」と述べています。
フィンケル氏は「興味深いことに、FFmpegをUnity上で使用できるものなど何百ものアセットがLGPLコードを含んでいるにもかかわらず、Unityのアセットストアに残されています。どうやら、誰かから報告されない限り、LGPLを含んだアセットの摘発はランダムで行われるようです」と指摘しました。
さらにフィンケル氏は「UnityはLAMEやlibiconv、Libwebsockets、websockify-jsなどのLGPLコードを含んだライブラリ上に構築されています」と述べています。
結論としてフィンケル氏は「LGPLを使用しているUnityで構築されたゲームは、必然的にデフォルトでLGPLコードに依存することになります。しかし、パブリッシャーやUnityユーザーは、アセットストアにLGPLコードを含むアセットを投稿することが認められていません」と述べ、「ダブルスタンダードだ」とUnityを強く批判しています。