マインクラフトの心臓部「ソースコード」の一部がオープンソースとして順次リリースされ誰でも自由に再利用できる状態に
世界的人気を誇るゲーム「Minecraft」の心臓部といえるソースコードのライブラリがオープンソース化され、順次リリースされることになりました。
Programmers: Play with Minecraft's Inner Workings! | Minecraft
https://minecraft.net/en-us/article/programmers-play-minecrafts-inner-workings
公開の対象となるのはMinecraft Java Edtionのソースコードの一部で、GitHubでMITライセンスのもとで配布されます。再利用は完全に自由とのことで、クレジット表記さえきちんと行えば、より強力なModの開発やMinecraftには関係のないプロジェクトへの転用など、あらゆる用途に利用してOKとのこと。今回公開される「ライブラリ」とは、ゲームを構成するさまざまなゲームエンジンのパーツの一つとなるもの。
当初公開されるライブラリは「Brigadier」と「DataFixerUpper」の2種類で、それぞれ次のようなものとなっています。
◆Brigadier
軍隊用語で「准将」などを意味するBrigadier(ブリガディア)は、Minecraftが使っているコマンドエンジンで、入力されたランダムな文字列をゲーム内で実行できる実際の機能へと変換させる機能があるとのこと。Minecraftのゲーム画面でキーボードで「/」を入力すると、画面左下にコマンドの候補一覧が表示され……
コマンドの入力を進めると、要素が自動的に色分けされるようになっています。
Java開発者の@DinnerboneことNathan Adams氏はMinecraftコミュニティにBrigadierを提供することで「いつか非常にユーザーフレンドリーになれば良い」と展望を述べています。Minecraftでコマンドラインを使用している人の例はまだまだ少ないものの、Brigadierの提供によりその状況が変化することを狙っている模様です。
GitHub - Mojang/brigadier: Brigadier is a command parser & dispatcher, designed and developed for Minecraft: Java Edition.
https://github.com/Mojang/brigadier
◆DataFixerUpper
ゲーム開発者によって新しい機能がMinecraftに実装されると、それに応じてゲームのレベルデータやセーブファイルの保存方法にも変更が加えられる必要があります。DataFixerUpperは、このようにして古くなったデータのフォーマットを最新のものへと変換させる機能を持つライブラリです。あまり目立つものではなく、ユーザーフレンドリーな内容ではないDataFixerUpperですが、それもMinecraft Javaチームが公開を決めた原因の一つだとのこと。
GitHub - Mojang/DataFixerUpper: A set of utilities designed for incremental building, merging and optimization of data transformations.
https://github.com/Mojang/DataFixerUpper
今回のリリースではBrigadierとDataFixerUpperという2つのライブラリが公開の対象になりましたが、今後はMinecraft 1.14のためにリライトされたレンダリングエンジン「Blaze3D」も候補の一つとしてリストアップされているとのことです。
なお、Minecraftの生みの親であるマルクス・ペルソン氏は2011年9月に「セールスが落ち始め、一定の期間が過ぎたら、私はゲームのソースコードを何らかのオープンソースの形でリリースすると思う」「それはパブリックドメインの形になるだろう」という意向を語っていました。
Minecraft
http://web.archive.org/web/20110920065648/http://www.minecraft.net/game
Once sales start dying and a minimum time has passed, I will release the game source code as some kind of open source. I'm not very happy with the draconian nature of (L)GPL, nor do I believe the other licenses have much merit other than to boost the egos of the original authors, so I might just possibly release it all as public domain.
・関連記事
Microsoftが「Minecraft」開発元を2680億円で買収、その経緯とは? - GIGAZINE
無料でGoogleのクラウド上にマインクラフトのサーバーを立てて複数人でマルチプレイする方法 - GIGAZINE
マインクラフトで2000枚以上のピクセルアートを作り繋ぎ合わせて「NEW GAME!!」オープニング映像を再現 - GIGAZINE
マインクラフトがコンソール・モバイル・PC・VRを横断する完全クロスプラットフォームを実現 - GIGAZINE
Minecraftはもはや芸術の域に達していることを示すムービー - GIGAZINE
ポケモンがマインクラフトでプレイ可能に、ファンゲームまるまる1本を搭載したマップ「Pokémon Cobalt and Amethyst」 - GIGAZINE
「もしマインクラフトの世界が現実だったら?」を実写で再現したムービー「Realistic Minecraft」 - GIGAZINE
・関連コンテンツ