(:3[kanのメモ帳]

個人ゲーム開発者kan.kikuchiのメモ的技術ブログ。月木更新でUnity関連がメイン。

(:3[kanのメモ帳]

Unity

SpriteAtlasなどでまとめたTextureから、任意のSpriteのTextureだけを取得する方法【Unity】

この記事でのバージョン Unity 2018.4.0f1 はじめに 処理を軽くするために、複数の画像を一つにまとめて使うというのは常套手段です。UnityではSpriteAtlasを使ってまとめたり、 最初から1つの画像にまとめたものを、Sprite ModeをMultpleにして使う、などの…

「はい」と「いいえ」など、2つの選択肢を出して確認するためのウィンドウ【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 2018.4.1f1 はじめに エディタ拡張で何かをする前に「〇〇しますか?」のような確認が欲しいみたいな事はよくありますが、残念ながらUnityにそういう標準機能はありません。(もしあったらご一報頂けると幸い…

範囲内に入ったパーティクルに重力等の力を加えて動きを変えるParticle System Force Field【Unity】【Particle System】

この記事でのバージョン Unity 2018.4.0f1 はじめに 今回はUnity2018.3から追加されたParticle System Force Fieldを試してみた感じの記事です! Particle System Force Fieldは名前の通り、範囲内に入ったパーティクルに重力等の力を加えて動きを変えるもの…

Hierarchy上やProject内の検索、ウィンドウの表示やアセット作成まで出来るUnity Quick Search【Unity】

この記事でのバージョン Unity 2018.4.0f1 はじめに 今回はUnityのプロジェクト内の様々な検索が出来るUnity Quick Searchというパッケージを試すついでに記事も書いてみよう!という感じの話です。 ざっくり言うとSpotlightやAlfredのような機能で、ちょっ…

Xbox360&OneやPS3&4など様々なコントローラーへの対応が簡単に出来るInControl【Unity】【アセット】

この記事でのバージョン Unity 2018.3.4f1 InControl 17.3 はじめに UnityはInputクラスを使う事で、コントローラーへの対応が比較的簡単に行えます。 しかし、様々なコントローラーに対応しようとすると途端に面倒になります。例えばデフォルトの状態だと、…

パーティクルの再生が終わった時の処理(コールバック)を設定する【Unity】【Particle System】

この記事でのバージョン Unity 2018.4.0f1 はじめに 今回はタイトル通り、パーティクルの再生が終わった時に何か処理をしたい場合の話です。イメージとしては以下のような感じ。 ちなみにUnity 2018(.1?)からの機能ですのであしからず。 OnParticleSystemSto…

OdinとCustomEditorを併用する方法【Unity】【アセット】【エディタ拡張】

エディタ拡張とは 属性とは この記事でのバージョン Unity 2018.4.0f1 Odin 2.0.20 はじめに 色々な属性を追加して、Inspectorを使いやすくしたり、 シーン内を検証し、Inspectorでの設定に問題のあるオブジェクトを見つけたりも出来るOdinですが、 CustomEd…

エディタ再生中に変更した値を、再生終了後もそのまま保持する属性【Unity】【エディタ拡張】【属性】

エディタ拡張とは 属性とは この記事でのバージョン Unity 2018.4.01 はじめに UnityではInspector上で色々な値を変える事が出来ますが、基本的に再生中に変更した値は、再生終了時に元に戻ります。 コンポーネントの右上にある歯車から、再生中にCopy Compo…

メモリ改ざんの抑止やPlayerPrefsの暗号化、端末時間の改ざんの検出にオンライン上の時間の取得など、様々なチート対策ができるAnti-Cheat Toolkit【Unity】【アセット】

この記事でのバージョン Unity 2018.3.4f1 Anti-Cheat Toolkit 1.6.7 はじめに 今回は様々なチート対策ができるAnti-Cheat Toolkitというアセットの紹介です! メモリ改ざんの抑止やPlayerPrefsの暗号化など、よくあるチートに対する対策が簡単に実装でき、…

uGUIのTextの代替となるTextMesh Proとは【Unity】【TextMesh Pro】

この記事でのバージョン Unity 2018.3.4f1 TextMesh Pro 1.4.0 はじめに 昔のUnityはUIの実装がかなり大変でしたが、uGUIの登場により劇的に改善されました。しかし、まだ物足りない部分は多々あり、特にテキスト周りは不便な点も多いのが現状です。 そこで…

gameObject.tagをイコールで比較した場合とCompareTagを使った場合の処理時間の比較【Unity】【最適化】

この記事でのバージョン Unity 2018.3.4f1 はじめに GameObjectにはTagが設定でき、そのTagを比較して判別するという事はよくありますが、 var isPlayer = gameObject.tag == "Player"; 実はCompareTagというメソッドを使って比較する事も可能で、しかもComp…

簡単にセーブ&ロード&暗号化が実装できるEasy Save【Unity】【アセット】

この記事でのバージョン Unity 2018.3.4f1 Easy Save 3.0.3 はじめに 今回は簡単にセーブ&ロード&暗号化が実装できるEasy Saveというアセットの紹介です! Easy Saveは名前の通り、PlayerPrefs並に簡単に使えるアセットですが、ListやTransformなど色々な型…

enumをInspectorで設定する際、ポップアップの表記を日本語などに自由に変える方法【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 2018.3.4f1 はじめに 今回はenumをInspectorで設定する際、ポップアップの表記を日本語などに自由に変える方法の紹介です! イメージとしては以下のような感じ enumのポップアップの拡張

エクセルやスプレッドシートを自動でScriptableObjectに変換するUnity-Excel-ImporterとUnity-QuickSheetの使い方と比較【Unity】【ScriptableObject】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 2018.3.4f1 はじめに エクセルやスプレッドシートでデータをまとめて、ScriptableObjectに変換して使うというのはUnityではよくあります。 実はその変換部分を自動でやってくれるアセット(?)の有名所にUnity-…

Unity(Hub)にオリジナルのプロジェクトテンプレートを追加する方法【Unity】

Unity Hubとは この記事でのバージョン Unity Hub 1.6.0 はじめに UnityもしくはUnity Hubで新規プロジェクトを作る際、元となるテンプレートを選択できますが、今回はこのテンプレートにオリジナルのものを追加する方法の紹介です! なお、Macの話になりま…

UniRxでUpdateをストリーム化したり、MonoBehaviourを継承していないクラスでUpdateを実行したり、値が変更された時だけUpdateを実行したり【Unity】【UniRx】

UniRxとは 拡張メソッドとは デリゲート(Delegate)やイベント(Event)とは この記事でのバージョン Unity 2018.3.4f1 はじめに 今回はタイトル通り、UniRxのUpdate周りについての記事です! UpdateAsObservable

「Money Bath VR / 札束風呂VR」リリース!【新作】【Unity】【Steam】【VR】【アセット】

この記事でのバージョン Unity 2017.4.7f1 はじめに 新作ゲームをリリースしました!その名も「札束風呂VR」です!! 580円の有料ではありますが、なにとぞよろしくお願いします!ちなみに、念願の初VR作品&初Steamリリースだったりもします。 ゲーム内容は…

StandardのEmissionをプログラムから切り替える方法【Unity】【Shader】

この記事でのバージョン Unity 2018.3.4f1 はじめに UnityはStandardというShaderがありますが、今回はその中のEmissionをプログラムから切り替える方法の紹介です。 ちなみにStandardのコードは以下のページからビルドインシェーダーをダウンロードし、 Def…

Unity Asset Storeで日本ユーザー限定のキャンペーン開催! 5つのバンドルがどれでも30%OFF !!【Unity】【アセット】

はじめに 本日、3月25日よりUnity Asset Storeにて、「春の新生活キャンペーン」という新たなアセット割引企画が始まったので、その紹介記事です! 春の新生活キャンペーン 詳細は以下の通り。 期間:3月25日(月) 09時00分 - 3月29日(金) 23時59分 対象は日…

UniRx(ユニアールエックス)の基本的な使い方と具体的な利用例【Unity】【UniRx】

この記事でのバージョン Unity 2018.3.4f1 はじめに Unityを使っているとよく耳にするUniRxですが、(以下のツイートは開発者さん本人のもの) どうぶつの森、UniRx採用ありがとうございます pic.twitter.com/zLy5tRMKm3— neuecc (@neuecc) 2017年11月21日 Pok…

ビルド(Scenes in Build)に含まれていないシーンをロードするEditorSceneManager.LoadSceneInPlayMode【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 2018.3.7f1 はじめに 今回はタイトル通り、ビルド(Scenes in Build)に含まれていないシーンをロードする方法のご紹介です。もちろんビルドに含まれていないシーンなので、実機上ではなくエディタ拡張の話にな…

SteamVR PluginのInput(コントローラー)の設定がビルド時に反映されない時の対処法【Unity】【Steam】【トラブルシューティング】

この記事でのバージョン Unity 2017.4.17f1 SteamVR Plugin v2.0.1 はじめに UnityでSteam向けのVRゲームを開発する際には基本的にSteamVR Pluginを使います。 今回は、そのSteamVR Pluginを使ったゲームをビルドした際にInputの設定が反映されてない場合の…

「描画範囲が足りなければスクロール」を実装するたった3行のコード【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 2018.3.0f2 はじめに Unityのエディタ拡張で何かしらの機能を作る際、ウィンドウを作る事はよくありますよね。 ただ、ウィンドウのサイズは人や状況によって変わってくるので「描画範囲が足りなければスクロ…

Unityエディタの左上に独自の機能を追加出来るEditorTool【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 2019.1.0b3 はじめに 先日、面白そうなエディタ拡張のツイートを見かけました。 In Unity 2019.1 alpha, there is a new EditorTools API.I should probably find a good use for this, but for now itworks …

プロジェクト内にある全シーンを表示し、任意のシーンの再生や読み込み、選択が簡単に出来る拡張機能【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 2018.2.17f1 Unity 2018.3.0f2 はじめに 前にエディタ上でもScenes in Buildの一番上に登録されているシーンから再生を開始する拡張機能や、 楽にシーンを開く拡張機能を作って紹介しました。 これらを合わせ…

Unity Asset Storeの全アセット10%セール終了間近!なので、今まで書いたアセットの紹介記事20個+αをまとめてみたよ【Unity】【アセット】

はじめに 現在Unity Asset Storeでは「平成最後の応援セール」と題して、全アセットが10%OFFで買えるセールが実施中です。 Unity Asset Storeではセール自体は頻繁に行われていますが、好きなアセットを10%OFFで買えるというのは中々ないので、今回はこのセ…

SRDebuggerなら実機でも使えるデバッグメニュー(Time.timeScaleの変更など)が簡単に作れる【Unity】【アセット】

この記事でのバージョン Unity 2018.2.17f1 はじめに 以前、実機上でコンソールのログを確認したり、簡易的なプロファイラが使えるSRDebuggerというアセットを紹介しました。 今回は、その時に詳細は省いた実機でも使えるデバッグメニュー(Options)について…

2Dゲームのカメラに追跡や揺れ、フェードなどの多種多様な機能を追加するPro Camera 2D【Unity】【アセット】

この記事でのバージョン Unity 2018.2.20f1 はじめに 今回は2Dゲームのカメラに追跡や揺れ、フェードなどの多種多様な機能を追加するProCamera2Dというアセットの紹介です! イメージとしては以下のような感じ。 なお、ブラウザ上で試せるデモもあります。 …

エディタ上でもScenes in Buildの一番上に登録されているシーンから再生を開始する(再生が終わったら再生前に開いていたシーンに戻る)【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 2018.2.17f1 はじめに Unityのエディタ上で再生ボタンを押すと、当たり前ですが今開いているシーンが再生されます。 今回はエディタ上でもScenes in Buildの一番上に設定されているシーン、つまり実機上で最…

uGUI(Image)とSpriteRendererの静止時と動作時の負荷比較【Unity】【uGUI】【最適化】

この記事でのバージョン Unity 2018.2.17f1 はじめに UnityでUIを実装するための機能であるuGUIは、以下のような仕組みを持っています。 どうもCanvasは一度Canvas内のUI(CanvasRenderer)を収集しビルドする(一つのメッシュ化する)事でパフォーマンスの…