Unity UtilityライブラリUniCommonを作った
#Unity #UniCommon
あらまし
Unityで複数のプロジェクトを作っていると似たようなコードを書くことが多い
今までの数個のプロジェクトは気合コピペでなんとかしてきた
黒羽のアリカを作ったときに開発したUnity用のコードには再利用性の高い有用なコードが多数含まれているので、それを今のプロジェクトにコンフリクト無しで組み込みたかった。
というわけで作ってみた
https://github.com/keroxp/UniCommon
Unityのパッケージをnpmで配布するに書いたのだけど、unity3d-package-syncerというnpmスクリプトを使っています
使い方は Unityプロジェクトの自作パッケージ依存性管理をnpmで行う参照
↑の記事には、「パケージを公開する側のpackage.jsonのkeywordsに"unity3d-package"という文字列が必要」という情報が書いていなかったので編集リクエストを投げてある
インストール
code:bash
npm i unicommon --save
mkdir -p Assets/Plugins/Packages
$(npm bin)/unity3d--sync
これでUniCommonとUniRxが両方共npmからダウンロードされます
アセットストア産のUniRxは、まだGithubの2017対応版がリリースされていないため、.Net 4.6環境下でコンパイルできません
IObservable<T>, IObserver<T>がコンフリクトするため。Github最新版では解決済み。
一応.Net3.5, .Net4.6の両方で動くはずですが、コード互換性のためC#は4.0で書かれています
イチオシ機能紹介
クラス自体そんなに多くないのですが全部紹介できないので特に汎用性の高いクラスを紹介します。
UniCommonの方に機能紹介目次を作成しました
バグってんじゃねぇか!
Issue登録お待ちしております👈
https://github.com/keroxp/UniCommon/issues
俺もこんな汎用的な機能作ったぞ!
Pull Requestお待ちしております👊
https://github.com/keroxp/UniCommon/pulls
かっこいいロゴ作ったぜ!!
絶賛募集中です👀