(:3[kanのメモ帳]

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

(:3[kanのメモ帳]

Slackと連携させて通知を受け取る方法 Bitbucket&GitHub&Unity Cloud Build編 2019年版【Slack】【Git】【Unity CloudBuild】

この記事でのバージョン Unity 2018.4.1f1 はじめに BitbucketとSlackの連携をさせようと思った所、何度か(?)方法が変わったみたいで、ネット上に色々なやり方が散見されたため、2019年6月現在の最新のやり方を備忘録的にまとめてみました!ついでにGitHubや…

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…

個人でSteam用VRゲーム(札束風呂VR)を作って、いくら稼げたのか【お金】【プロモーション】【Steam】【VR】

はじめに 今回は4月3日にSteamでリリースした「札束風呂VR」の 売上などのデータを公開しちゃおうという感じの記事!ついでセールの効果やプロモーションについてもまとめています。 100万円札束 10束 令和記念 一千万円 ダミー 金融機関共通 文字入り 母の…

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のポップアップの拡張

列挙型(enum)の項目数取得したり、ランダムに取得したり、全項目を取得したり、番号や文字列から変換したり【C#】

C#

エディタ拡張とは この記事でのバージョン Unity 2018.3.4f1 はじめに 今回は列挙型(enum)の項目数取得したり、ランダムに取得したりといったenumの汎用的な便利メソッドをまとめた便利クラスの紹介です! 前にも似たような記事を書きましたが、 これらのま…

LINQの遅延実行&即時実行とforeach+遅延実行の問題【C#】【LINQ】

LINQとは はじめに 今回はLINQの遅延実行と即時実行についての話。LINQを使う上で知らなくてもわりとどうにかなる場合が多いですが、かなり大切な概念です。 ちなみに、「実戦で役立つ C#プログラミングのイディオム/定石&パターン」にも同様の項目があり、 …

エクセルやスプレッドシートを自動で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の話になりま…

引数でデリゲート(≒ラムダ式)を受け取れるList<T>のメソッド【C#】

C#

はじめに 今回はタイトル通り、引数でデリゲート(≒ラムダ式)を受け取れるListのメソッドの紹介です!ようは「Listにはこんな便利なメソッドがあるよ〜」みたいな話です。 ちなみに、「実戦で役立つ C#プログラミングのイディオム/定石&パターン」に同様の項…

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リリースだったりもします。 ゲーム内容は…

Twitterに動画を投稿する際にタイトルや説明文、サムネイルを設定する方法【Twitter】【プロモーション】

はじめに Twitterに動画を投稿すると普通、サムネは動画の最初のフレームになりますが、(そもそも自動再生を有効にしているとサムネを見る事も少ないですが) https://twitter.com/Kan_Kikuchi/status/1095866500852834304 実はサムネを変更する事はもちろん…

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分 対象は日…

チームでフローチャートやワイヤーフレームなどの図を作成するWebサービス Whimsical(無料でも利用可能)【便利サービス】

はじめに 今回は開発とは直接関係ありませんが、かなり便利なサービスを見つけたので、それの紹介記事です! サービス名はWhimsicalで、ざっくり言うとチームでフローチャートやワイヤーフレームなどの図を作成するWebサービスです。 フローチャートなどの図…

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のエディタ拡張で何かしらの機能を作る際、ウィンドウを作る事はよくありますよね。 ただ、ウィンドウのサイズは人や状況によって変わってくるので「描画範囲が足りなければスクロ…