読者です 読者をやめる 読者になる 読者になる

(:3[kanのメモ帳]

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

親や子を簡単に作れる拡張メソッド【Unity】【拡張メソッド】

拡張メソッドとは この記事でのバージョン Unity 5.4.0f3 はじめに 今回は親や子を簡単に作れる拡張メソッドのご紹介!イメージは以下のような感じ。 SetParent

インスタンスから元のPrefabを取得する【Unity】

この記事でのバージョン Unity 5.4.0f3 はじめに 今回はインスタンスから元のPrefabを取得する方法のご紹介です! ちょっと分かりにくいかもしれませんが、ようはHierarchy上で右クリックをし、Select prefabを実行した時の動作をプログラムで行いたいという…

「1ビットローグ」リリース!【新作】【Unity】

この記事でのバージョン Unity 5.3.4f1 1ビットローグ Skipmoreさんとの初の合作、「1ビットローグ」をリリースしました! iOS1ビットローグ ダンジョン探索RPG!Kan Kikuchiゲーム無料Android

シーンを移動するとInputがリセットされる件【Unity】

この記事でのバージョン Unity 5.4.1f1, 5.5.0b6 はじめに 今回はUnityの入力を簡単に処理できるInputクラスの話です。 タイトルの通り、このInputはシーンを移動するとリセットされる場合があります。 例えば、以下のようにキーボードのAとSを押すとログが…

Inspectorにファイルをドラック&ドロップしてパスを設定する【Unity】【エディタ拡張】【属性】

エディタ拡張とは この記事でのバージョン Unity 5.4.0f3 はじめに 今回はInspectorにファイルをドラック&ドロップしてパスを設定する方法のご紹介です!イメージとしては以下の通り。 PathAttribute

Collider2Dを実機で可視化してみた【Unity】

この記事でのバージョン Unity 5.4.0f3 はじめに デフォルトの状態だとSceneView上でしか可視化されていないCollider2Dですが、Gizmoを有効にすることでGameViewでも見えるようになります。 ただし、SceneViewにしろGameViewにしろ、可視化するためには確認…

Code signing is required for product type 'Application' in SDK 'iOS 10.0'【iOS】【トラブルシューティング】

この記事でのバージョン Xcode 8.0 はじめに 今回はXcode8でビルドした時に、 Code signing is required for product type 'Application' in SDK 'iOS 10.0' と表示される場合の対処法の一つです。 Xcodeをアップデートする前は問題なかったのに、アップデー…

ドット絵の箱庭系スローライフRPG、ピコンティア開発中!【新作】【Unity】【Steam】

フェアルーンやドランシアでお馴染みのSkipmore大先生との合作第二弾!ピコンティアを作り始めていました!記事にするのを完全に忘れていました!! ピコンティアは農作業あり、クラフトあり、戦闘ありのスローライフRPGです! つい先日、SteamのGreenLight…

Resources以外からアセットをロードする便利クラス【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 5.4.0f3 はじめに 以前、Resources以外からアセットをロードする方法を紹介しました。 その時、AssetDatabaseを使えばResources以外からもアセットをロードできるが、Resources.LoadAllのようにディレクトリ…

Listをシャッフルしたり、ランダムに取得したり、先頭から取り出したり【C#】【拡張メソッド】

拡張メソッドとは はじめに 今回はListを便利にする拡張メソッドのご紹介!拡張メソッドってなんぞやという方は以下の記事をどうぞ。 拡張メソッドとは既存のクラスにメソッドを追加するというものです。 ListExtension

OnLevelWasLoadedが非推奨になったからSceneManager.sceneLoadedで置き換えてみる【Unity】

この記事でのバージョン Unity 5.4.0f3 はじめに Unityを5.4.0f3アップデートしたところ、以下の通りWarningが出ました。 This message has been deprecated and will be removed in a later version of Unity. Add a delegate to SceneManager.sceneLoaded …

全てのシーンに存在し、かつ、一つしか存在してはいけないマネージャー的存在の実装方法【Unity】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに Unityでゲームを作っていると、全てのシーンに存在し、かつ、一つしかいないマネージャー的な存在が必要になりますよね。例えばBGMやSEなどの管理を行うAudioManagerなんてものとか。 一つしか存在…

PlayerPrefsをリセットするメニューを追加する【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 5.3.4f1 Personal はじめに 今回はタイトル通り、PlayerPrefsをリセットするメニューを追加するエディタ拡張の紹介です。 PlayerPrefsResetter

シーンを切り替えても引き継げて、簡単に書き換えられるデータ 【Unity】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに ゲーム画面でのスコアをリザルト画面で使いたい、といったようにシーンを切り替えてもデータを保持したい、でも別に保存したいわけじゃない、みたいなことはよくあると思います。 そういう時には、…

簡単にモーションをブレンドして使えるBlend Tree【Unity】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに 今回はUnityの便利システムの一つ、Blend Treeを使って簡単にモーションをブレンドしてみる感じの記事です。 イメージとしては以下のような感じ。なお、体が回転しているように見えますが、アニメー…

タッチした所が始点になるジョイスティック(バーチャルパッド)を実装【Unity】【uGUI】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに 前回の記事で自家製ジョイスティックを紹介しました。 前回はジョイスティックの位置が固定されてるタイプでしたが、今回は始点が移動するタイプのご紹介!イメージは以下のような感じ。 なお、Stic…

ジョイスティック(バーチャルパッド)を実装【Unity】【uGUI】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに 今回はジョイスティック(バーチャルパッド)を実装してみようという記事です。 イメージは以下のような感じ。 ちなみにStandardAssetsにあるやつではなくオリジナルのものなのであしからず。Standard…

変数の初期値を変更しても反映されない時の対処法【Unity】【トラブルシューティング】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに 今回はタイトル通り、変数の初期値を変更しても反映されない時の対処法です。個人的にはUnityで始めたばかりの頃にハマりやすい所の一つだと思っとります。 原因 ではさっそく本題です。タイトルの…

ヘルプボタン(?)のURLを変える【Unity】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに inspectorに表示される各オブジェクトには本のようなボタンが表示されています。 このボタンは押すと対象に応じたヘルプをブラウザで開いてくれるというものです。 今回はこのURLを変える方法のご紹…

簡単ローカライズアセット「AutoLocalization」をリリース!【Unity】【新作】【アセット】

この記事でのバージョン Unity 5.4.0f3 はじめに いつもお世話になっているUnity Asset Storeに自分のアセットを初めてリリースしました!その名も「AutoLocalization」です! 名前の通り、ローカライズを行うためのアセットです。以下の動画を見てもらうと…

選択したオブジェクトに対する日本語のドキュメントを表示するためのエディターウィンドウ【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 5.3.4f1 Personal はじめに UnityにはHelpというクラスがあります。 Unity ドキュメントにアクセスするためのヘルパークラスです このHelpクラスにあるShowHelpForObjectを使うと対象のヘルプページを開ける…

Inspectorにメソッドを実行するボタンを追加する【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 5.3.4f1 Personal はじめに 特定のメソッドをInspectorから実行できるようにしておくと便利な場合は多々あると思いますが、そんな時に一番楽なのはContextMenuだと思います。 //Inspectorの歯車アイコンにMet…

パーティクルの大きさをScaleで調整する【Unity】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに 今回はパーティクルの大きさをScaleで調整する方法のご紹介。 なお、Unity5.3から実装された機能です。 Scaling Mode

新作「1ビットローグ」予約開始【Unity】【新作】【プロモーション】

この記事でのバージョン Unity 5.3.4f1 1ビットローグ 新作「1ビットローグ」(Unity製)の予約を開始しました! iOS Android なんと今回はフェアルーンやドランシアでお馴染みのskipmore大先生との合作です! "1-Bit Rogue" Coming soon!! #pixelart #gamedev…

長押しすると連続でメソッドを実行するボタン【Unity】【uGUI】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに 今回はタイトル通り、長押しすると連続でメソッドを実行するボタンの記事です。例えばLvを上げるボタンなんかで使えます。 EventTrigger

ボタンを押した瞬間にメソッド実行【Unity】【uGUI】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに uGUIでボタンを作成すると、デフォルトであるイベントはOnClickだけでそのままではクリックした時(スマホだとタップして指を離した時)にしかメソッドが実行できません。 場合によっては押した瞬間に…

文字列の中に、任意の文字列がいくつあるか【C#】【拡張メソッド】

拡張メソッドとは 可変長引数とは はじめに タイトル通り、今回は文字列の中に、任意の文字列がいくつあるかを調べる方法の記事です。イメージとしては以下のような感じ。 string str = "ああいううえええええおお"; Debug.Log (CountOf (str, "あ")); //"あ…

AnimationCurveをInspectorで設定し、スクリプトから使う【Unity】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに 今回は表題の通り、AnimationCurveをInspectorで設定し、スクリプトから使う方法のご紹介です! AnimationCurve

プレハブの解除【Unity】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに 一度プレハブにした後、プレハブを削除してしまうと、Hierarchy上に残ったオブジェクトは色が変わったり、Missingが表示されたりと、見苦しい感じになってしまいます。 今回はそんな時に使えるプレ…

No such file or directory libiPhone-lib.a【Unity】【UnityCloudBuild】【トラブルシューティング】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに 今回はUCB(UnityCloudBuild)でビルドした時に No such file or directory: '/BUILD_PATH/○○○○/△△△△/Libraries/libiPhone-lib.a' と表示される場合の対処法です。 ちなみに、以下とは関係ありません…

ScriptableObjectの参照をちょっと楽にしてみる【Unity】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに まずはじめに、ScriptableObjectとは以下のようなもので、変化しないデータを利用する時に活躍するものです。 データを格納するオブジェクトです。もう少し言えば、Unityがデータをシリアライズ・デ…

エディタを実行していない時にOnValidateでDestory【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 5.3.4f1 Personal はじめに 以下のように、エディタを実行していない時にOnValidateでDestoryしようとするとエラーが出ます。 private void OnValidate (){ Destroy (gameObject); } Destroy may not be call…

AssetImporterをAssetPostprocessor以外で使う【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 5.3.4f1 Personal AssetImporter さっそくですが、AssetImporterをAssetPostprocessor以外で使う場合はAssetImporter.GetAtPathを使ってパスからAssetImporterを取得します。 using UnityEditor; //Assets直…

Resources以外からアセットをロードする【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 5.3.4f1 Personal はじめに 今回はResourcesディレクトリ以外から何かしらのアセットをロードする時の方法です。なお、エディタ上でしか機能しないのであしからず。つまり、エディタ拡張の時用ですな。 Asset…

現在のビルドターゲットに合わせてBundle IDを自動更新する【Unity】【エディタ拡張】

エディタ拡張とは デリゲート、イベントとは この記事でのバージョン Unity 5.3.4f1 Personal はじめに UnityはPlay settingsからBundle ID(Bundle Identifier)を設定できますが、各ビルドターゲット(プラットフォーム)ごとに設定はできません。 つまりBundl…

UnityCloudBuildでの身に覚えのないエラーを解決するかもしれない方法【Unity】【UnityCloudBuild】【トラブルシューティング】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに UCB(UnityCloudBuild)便利ですよね!でもたまに身に覚えのないエラーが出て、困ったりしますよね!今回はそんな時に使えるかもしれない方法のご紹介です。 クリーン

ボタンなどを押さなかった時のタッチイベントを取得する【Unity】【uGUI】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに ボタンなどを押さなかった時のタッチイベントを処理したいって場合ありますよね。 例えば、画面をタップした時にシーンを移動したいけど、ボタンを押した時は違う処理をしてシーンの移動はしたくな…

NullReferenceException (UnityEngine.UI.Selectable.set_interactable)【Unity】【トラブルシューティング】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに 今回はNullReferenceException: Object reference not set to an instance of an objectUnityEngine.UI.Selectable.set_interactable と表示される場合の対処法です。

モバイルの時だけ有効になるDefine、UNITY_MOBILEを宣言してみる【Unity】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに Unityでは各プラットフォーム毎にコンパイルするコードを変えたい場合、UNITY_EDITORやUNITY_ANDROIDなどのDefineを使って切り替えを行います。 #if UNITY_IOS //対象プラットフォームがiOSの時だけ…

OnPreprocessTextureなどをディレクトリ移動時も実行する【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 5.3.4f1 Personal はじめに OnPreprocessTextureはテクスチャがインポートされた時に実行され、何かしらの処理を自動で行えるメソッドです。同じようなものにOnPreprocessAudio、OnPreprocessModelがあります…

Sprite Packerの設定を自動で行う【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 5.3.4f1 Personal はじめに Unityには複数のスプライトをまとめて使えるSprite Packerという機能があります。 これを使うことでSetPass calls(旧DrawCall)を減らし、処理を軽くすることが出来ます。 このSpri…

ビルドするシーンを自動で設定【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 5.3.4f1 Personal はじめに Unityでは使用するシーンはあらかじめ登録しておかなければなりません。 また、登録されていないのにロードしようとするとエラーが出ます。 手動で登録するとミスがおこるかもしれ…

再生開始など、PlayModeの変化を取得【Unity】【エディタ拡張】

エディタ拡張とは デリゲートとは この記事でのバージョン Unity 5.3.4f1 Personal はじめに 再生開始した時など、エディターの状態が変わった事を知りたい場合にはEditorApplication.PlaymodeStateChangeというデリゲートが使えます。 以下のようにPlaymode…

スクリプトからエディタを再生したり、停止したり、ポーズしたり、再開したり。【Unity】【エディタ拡張】

エディタ拡張とは この記事でのバージョン Unity 5.3.4f1 Personal はじめに 以前、スクリプトからエディタの再生を停止する方法が分からず、代替案としてエディタを強制終了するという方法をご紹介しました。 ありがたいことに、その記事のコメントにてスク…

MonoBehaviourを継承し、初期化メソッドを備えたシングルトンなクラス【Unity】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに さて、今回はシングルトンなクラスのお話。そもそもシングルトンとは、以下のようなデザインパターンの一つです。 Singletonパターンを用いると、そのクラスのインスタンスが1つしか生成されないこ…

UnityCloudBuildで有効になるDefineはUNITY_CLOUD_BUILD【Unity】【UnityCloudBuild】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに あえてタイトルで全てをお伝えするスタイルでお送りしました!! Unity Cloud Build用のdefine定数として、 UNITY_CLOUD_BUILD が使える Unity Cloud BuildとUnity Analytics from 孝康 矢嶋 使いど…

UIをまとめてフェード【Unity】【uGUI】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに 今回はuGUIで作ったUIをまとめてフェードする場合の記事です。 NGUIで言うところの、UIPanelのalphaを変更してフェードさせるのと同じ感じですね。 Canvas Group

ボタンの当たり判定(タッチ範囲)だけ広げる【Unity】【uGUI】

この記事でのバージョン Unity 5.3.4f1 Personal はじめに UIを作っていて、ボタンの当たり判定を見た目より大きくしたい、なんて事はよくあります。 しかし、uGUIのボタンは当たり判定==画像となっているため、そのまま使うと、当たり判定だけを大きくする…

第三十二弾アプリ だって、わしの国じゃし。【新作】【Unity】【アセット】

この記事でのバージョン Unity 5.3.4f1 Personal だって、わしの国じゃし。 新作リリースしました!その名も「だって、わしの国じゃし。」です! iOS https://itunes.apple.com/jp/app/id1107945977?at=10l8JW&ct=hatenablog Android https://play.google.co…

新作「だって、わしの国じゃし。」予約開始【Unity】【新作】【プロモーション】

この記事でのバージョン Unity 5.3.4f1 Personal だって、わしの国じゃし。 新作「だって、わしの国じゃし。」が完成したので、予約トップ10で予約を開始ました! iOS Android ゲーム内容は二人の国民から正解を選ぶというシンプルな仕分けゲームです。前回…