夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

MixedReality GraphicsToolsにプルリクエストを提出する

本日はMRTK3枠です。

MixedRealityToolkitはMicrosoft社主導によるオープンソースプロジェクトです。

 特徴として誰もが開発にかかわることができます。Microsoft社のMRTKチームも常にフィードバックを求めており、 SNSなどで#MRTKのハッシュタグをチェックしているようです。

 今回はGraphicsToolsにプルリクエストを提出しましたので流れをまとめます。

〇MixedReality-GraphicsTools-Unity

MixedReality-GraphicsTools-Unity(MRGT)はMRTK3のパッケージでMRTKのグラフィック周りの機能を含んだパッケージになります。

 MRGTにはGraphicsToolsStandardShader(MRTKStandardShasderの後継機)やBlurなどの機能が提供されており、これらはxRデバイスに特化かつ軽量化が行われています。

 今回はGraphicsToolsStandardShaderへの新規機能開発とPRを行いました。(本記事執筆時27日夜現在Seattleは日曜日なのでまだ確認されていません。)

〇EmissionMap

今回はEmissionMapの機能提案、開発を行いました。

MRTKに貢献するためには最初にイシューを建てる必要があります。

  github.com

イシューではプロジェクトに関するあらゆる報告を行います。

 enhancementbugdocumentationquestionなど様々なラベルがあり、今回行った機能開発に当たるenhancementの報告のほかにプロジェクトにおいての問題点を質問として聞くこともできます。

 この質問はプロジェクトにとって新たなバグが見つかる場合や次の機能開発につながる場合もあります。

 今回は次のようなイシューを建てました。

ざっくりと概要をまとめると次のようになります。

URP/Litなど多くのEmissionを扱うShaderにはEmissionMapの画像を指定することでより様々な表現がありますが、 GraphicsToolsStandardShaderにはそれがありませんので作っていいですか?

これに加えOKなら勉強がてら取り組むよ!と書きました。

 If this proposal is approved, I will incorporate the functionality and publish a PR while also learning GraphicsTools.

これに対してプロジェクトリーダーであるCameronさんはよい提案と了承していただきました。

また、この時点でAssignees(担当者)に私が割り当てられました。

〇プロジェクトのFork

作業に当たるためにプロジェクトをフォークします。

これはオリジナル(microsoft/MixedReality-GraphicsTools-Unity)のリポジトリを自身のリポジトリ(HoloMoto/MixedReality-GraphicsTools-Unity)としてコピーすることを指します。

自身のプロジェクトとして作業を行います。

最初のやり取りで「週末に取り組むね!」といっていましたが、実際に取り組むと惜しいところで壁に当たってしまいました。

 そこで新たに進捗として現状を報告しました。

 ここではtex2Dに関するエラーが発生するという報告でしたが、Cameronさんは翌日には考えられる修正点が含まれるファイルの場所を共有していただきました。

作業が完了しEmissionMapの機能を無事に実装出来たところでHoloMoto/MixedReality-GraphicsTools-UnityにPushし、そこからオリジナルのMicrosoft/MixedReality-GraphicsTools-Unityにプルリクエストを出します。

github.com

これによってプロジェクトリーダーであるCameronさんにチェック、レビューをいただき場合によっては修正依頼、完全の場合microsoft/MixedReality-GraphicsTools-Unityの本ブランチにマージしていただけます。

 マージされた場合私の変更点が次回以降のリリースパッケージに含まれます。

 コード面での変更点などはマージされたタイミングで記載します。

本日は以上です。