Unity

Haxeで書いたコードをUnity上で動かす時、どれが一番早いのかベンチマーク取ってみた

C#のビルドの長さに耐えられなくなったので、 Haxeで書いたコードをUnity上で動かして、ビルド時間を短くしたい!!!と思い色々調査しています。 今回が、第一回目。 Haxeは色んな言語を出力出来るため、Unity上で動かす方法も色々あります。 ここに乗って…

AppIconChangerUnity - アプリアイコンを動的に変更出来るプラグイン(iOSのみ)

v2をリリースしたので、こちらをご覧ください。

PostProcessingPaletteSwap - PostProcessでカラーパレットの差し替え

github.com PostProcessでカラーパレットを変更できる! カラーパレットは最大256色まで対応 カラーのスプライトを特定ディレクトリに放り込んだら、勝手にカラーパレット対応してくれるエディタスクリプト付き! カラーパレットのサンプル 例えば8色のパレ…

「ここのUIちょっと変えたやつ、実機で見れない?」と言われてから最速で実機確認できるようにする方法

前提 iOSの話をします。きっとAndroidも似たような感じで出来ます。 説明に使っているプロジェクトはこちら。 GitHub:kyubuns/StreamingAssetsDemo 実現出来るようになること このUIを こんな感じに編集したら すぐに手元のiPhoneで新しいUIを確認できる!!…

グローバルなコールバックをTaskに置き換える

Dummy.Run() を呼ぶと、Dummy.Success か Dummy.Failed のどっちかが呼ばれるぜ!みたいなロックなクラスがあるとします。 public static class Dummy { public static void Run() { Debug.Log("Run!"); Observable.Timer(TimeSpan.FromSeconds(1)) .Subscri…

UnityでAndroid App Bundle(AAB)対応してリリースするまで

丁寧に書いてる記事ではなく、同じ問題で困ってる人が見ると良い感じに分かる記事です。 署名する keystoreを作る パスワードは保存されないのでビルド時によしなに設定する。 PlayerSettings.Android.keystoreName = ~~~; PlayerSettings.Android.keystoreP…

Airtableでマスターデータを作ってUnityから読む

ゲームのマスターデータ、何のツールで管理してますか? Excel? GoogleSpreadsheet? Airtableっていうめっちゃ便利なサービスがあります。 GoogleSpreadsheetをマスターデータに使ってる!とか、DBみたいに使ってるならAirtableめっちゃオススメ制約が必ず列…

UnityからiOS,Androidのクリップボードを扱う方法(2019年バージョン)

iOS, Androidのクリップボードを扱う方法をググると、このアセットを入れて〜とか、ネイティブプラグインを〜とかいう記事が色々出てきますが、そんな時代は終わりました。 Unity2018.1以降ならこれでいけます。 Debug.Log($"クリップボードのテキスト = {GU…

プロジェクト内の全てのPrefabに対してなんかする

ああ〜〜プロジェクト内の全てのPrefabのTextComponentの色変えて〜 using System.IO; using UnityEditor; using UnityEngine; using UnityEngine.UI; namespace Sandbox { public static class ReimportPrefab { [MenuItem("Sandbox/ReimportPrefab")] publ…

Unity2018.3から[SerializeField] privateが未初期化警告(CS0649)を吐くようになった

Unity2018.3から [SerializeField] private GameObject hoge; というコードが [CS0649] Field 'Piyo.hoge' is never assigned to, and will always have its default value null という警告を吐くようになりました。 警告の詳細はこちら(CS0649)。 冷静に考…

プロジェクト内の全てのPrefabを新しいUnityバージョンのフォーマットに変換する

Unity2018.3からPrefabWorkflowが新しくなりました。 これによりPrefab編集用シーンがすぐに開けるようになったりともろもろ最高です。 詳細はこちら。 https://blogs.unity3d.com/jp/2018/06/20/introducing-new-prefab-workflows/ この変更に伴い、.prefab…

UnityEditor上で2つの画像を重ね合わせる

例えばアイテムのアイコンにレアリティの枠をつけるとか、そういうときに使うやつです。 サクッと書けるかと思ったらアルファの計算が思ったより面倒くさかったのでメモ。 public void CreateTexture(string baseImagePath, string frameImagePath) { // Tex…

AnimeTask - Unity + asyncawaitでTweenアニメーションをつける!

github.com Task(async/await)ガンガン使ってる方向けのTweenアニメーションライブラリです。 AnimeRxのTask版です。 リポジトリ Unity2017.1から動きます。(.net4.6を有効にする必要があります。) Unity2018.3bでも動作確認済みです。 kyubuns/AnimeTask コ…

Unity x fastlaneでビルドするときに便利なやつメモ

Unity(実行ファイル)のパス取得 def get_unity_path(project_path) unity_version = File.read("#{project_path}/ProjectSettings/ProjectVersion.txt").split(" ")[1].strip unity_path = "/Applications/Unity#{unity_version}" unity_path = "/Applicatio…

UnityプロジェクトのiOSビルドをなるべく早くする

Unityでゲームを作っていて、「開発チーム内に共有する開発者向けビルドをなるべく早くしたい!」というお話です。 リリースビルドには使わないほうが良いオプションが多数登場します。 UnityからXCodeプロジェクトを出力した後は、fastlaneを利用してビルド…

fastlaneからUnityのメソッドを叩く

今までシェルスクリプトから「Unityを叩いてXCodeプロジェクトを吐かせる→fastlaneを呼び出してipa作る」としていたところを、 全部fastlane内にまとめられたほうが綺麗かも って思ったので作りました。 ProjectVersion.txtからUntiyVersionを取ってきて、そ…

AnimeRx - Unity + RxでTweenアニメーションをつける!

github.com UniRxガンガン使ってる方向けのTweenアニメーションライブラリです。 コンセプト アニメーションライブラリといいつつも、TransformやGameObjectは握らず、 素直に IObservable(float,Vector2,Vector3)を操作するライブラリ。 (下記サンプル内の"…

UniRx.MessageBroker活用術

UniRx.MessageBrokerを日々 悪用 活用してるので、便利かも!って作ったクラスを公開しておきます。 TypedMessageBroker MessageBrokerのPublish/Subscribeに型で制限をつける。 用途 Brokerがたくさんあるので、送り先を間違えるのを防ぐ。 サンプル public…

CoroutineとPubSubでゲームフローを制御する

1週間ゲームジャム お題「space」を見て、 宇宙で駐車スペースに駐車するゲームという物理演算ドタバタゲーを作ったので、 せっかくなら技術解説記事でも書こうと思い立った次第です。 利点 PubSubでフローを管理することで、クラス間の依存が少なく出来てサ…

ScenePrefabを読む

まだUnity4.xだった時代の記事です。 Scene/Prefabファイルをテキストエディタで編集できるようになるための情報をまとめておきたいと思います。 この記事を読むと prefabファイルのコンフリクトが解決できるようになる・・・かもしれませんが、 たいていぶ…