ルルのゲーム開発備忘録

主にUnityやC#に関する情報を気まぐれに投稿していきま~す

【Unity】RequireComponentとは?目的や使い方について解説

はじめに RequireComponentの目的 使い方 まとめ はじめに Unityには、Componentを簡単に追加するための機能がいくつかあります。その中でも、RequireComponentと呼ばれる機能は、Componentを追加する時に付属的に必要なComponentを自動的に追加するための機…

【Unity】ラムダ式で最近知った書き方

はじめに void 関数 => ステートメント まとめ はじめに Unity関連のことを調べてた時にふと見つけたラムダ式?の意外な書き方があったのでそのメモです。 void 関数 => ステートメント 例えば↓のような感じで、void Start() => count++と書くと、Start()が…

【雑記】Unityアフィリエイトの再申請が通った話

はじめに ドメインに「unity」を入れちゃいけないみたい ドメイン変更でやったこと まとめ はじめに Googleアドセンスが無事通って、次はUnityアフィリエイトを登録したいなと思って申請したけどこの前落ちてしまって落ち込んでました。Unityアフィリエイト…

【SourceTree】This is not a valid source path / URL(有効なソースパス/URLではありません)エラーでcloneできない時の対処法

はじめに OAuthによる認証のアクセス許可の設定が必要 まとめ はじめに この前、新しく買ったMacBookにSourceTreeを入れてgithubの自分のリモートリポジトリをCloneしようとした時に、This is not a valid source path / URLというエラーが出て苦労したので…

【Unity】実行するまでが劇的に速くなるEnterPlayModeオプションについて

はじめに Unity Japanの公式動画での紹介 EnterPlayModeの要点 UnityのPlayModeが実行されるまでの時間がはやくなる オプションの設定方法 なぜ速くなるか ドメイン・リローディング シーン・リローディング EnterPlayModeをオンにした時の副作用 その他 ま…

【Unity】#regionを使ったコードの整理

はじめに #region~#endregionで囲う regionをたたむこともできる まとめ はじめに 今回は#regionの使い方についての紹介です。 #region~#endregionで囲う ↓の画像のように、自分のコードの好きな部分を#region~#endregionで囲うことができます。囲うこと…

【雑記】基本情報技術者試験を応募してみた

基本情報がいつでも受けれるみたい 基本情報がいつでも受けれるみたい 学生のころから、応用情報技術者でもとってみるか~といって早数年がたってました。特に取りたいモチベーションや目的もなかったので、口にはするものの行動に移すことがなかったんです…

【tips】一部分だけコメントアウトする方法

はじめに ブロックコメント まとめ はじめに 今回の内容は、ちょっとしょうもないかもしれないけどコメントアウトの入力を楽にする話です。 ブロックコメント ↓のような感じで行の一部をコメントアウトしたい場合、指定する両端にカーソルを持ってきて「/* *…

【Unity】関数を数秒後に遅らせて実行する処理を簡単に書く方法 [Invoke]

はじめに Invoke サンプルコード 実行結果 まとめ はじめに ゲームを作っていると、数秒遅らせて処理したいという場面にしばしば出くわすと思います。自分はよくコルーチンを使うのですが、この前、Invokeで実装する方法を知ったので紹介します。 Invoke Inv…

【Unity】UnityEditorで再生してないのにコンストラクタ内の処理が実行される

はじめに シリアライズ化されるタイミングでコンストラクタが実行される EditorApplication.isPlayingで防ごうとしたらどうなるか まとめ はじめに この前、Unityでゲーム開発してるときにシーンやプレハブを開いただけでコンストラクタ内のDebug.Logが処理…

【C#】returnはvoidの関数でも使える(過去記事再編集)

戻り値のないreturn サンプル まとめ 戻り値のないreturn return文って聞くと、戻り値の関数内で使うイメージがありますが、戻り値のないvoid関数内でも使うことができます。 使うとreturn文以下は処理されなくなります。「早期return」とよばれるやつですね…

【C#】ChatGPTに「C#でじゃんけんのプログラムかいて」ってお願いしてみた!

C#

ChatGPTにお願いだ! 使ったツール AIチャットくんとのやり取りの様子 生成してくれたC#のじゃんけんコード 生成されたコードの動作確認 まとめ ChatGPTにお願いだ! 最近何かと話題のChatGPT*1*2をつかって、C#でじゃんけんのプログラムを書かせてみました…

【Unity】ビルドにコードの一部を含めない方法

defineディレクティブ defineディレクティブ デバッグツールやログ出力などを実機やリリースビルドに含めたくないときには #if UNITY_EDITOR Debug.LogError("エラー"); #endif のように#defineディレクティブで囲むと簡単にできます。また、自分でカスタム#…

【Unity】SerializeFieldの隣の「ToolTip」について

「ToolTip」とは サンプル インスペクター上の見え方 まとめ 「ToolTip」とは Unityでチーム開発とかをしてると[SerializeField]の部分が [Tooltip("タイトル用のテキスト"), SerializeField]のようになっているのをよく見かけると思います。これはTooltipAt…

【はてなブログ】文字を灰色の四角で囲むはてな記法、Markdown記法

プログラミングの予約語などを囲むあれ 書き方 プログラミングの予約語などを囲むあれ よく技術系のブログでInterfaceのように小さい四角で囲んでいる表示をよく見るが、はてな記法で表示させる方法をようやく見つけたので備忘録として残しておく。 書き方 <code></code>…

【Unity】実行中のコマ送り機能のショートカットキーと隠れ?機能

Unityのコマ送り機能 GUIでの通常のコマ送り ショートカットキーを使ったコマ送り コマ送りしながらさらにボタンをタップする まとめ Unityのコマ送り機能 Unityにコマ送り(1フレームずつ実行させる、描画させる)機能があるのはご存知の方も多いと思います。…

【Unity】コルーチンを使うときに、メモリ割り当てを少し減らす方法・最適化

WaitUntilやWaitWhileはインスタンスを作成する コーディングの例 WaitUntilやWaitWhileはインスタンスを作成する コルーチン内のyield returnでnew WaitUntileやWaitWhileは、新しいインスタンスを作成してメモリアロケーションが発生するので、何回もコル…

【Unity】入門:コルーチンまとめ

コルーチンとは コルーチンの使い方 コルーチンの宣言 コルーチンの実行 よく使うコルーチンの処理 yield return null yield return new WaitForSeconds(n) yield return new WaitUntil(() =>bool値) yield return new WaitWhile(() => bool値) yield break …

【C#】Listの中身をランダムに入れ替える・ランダムに一個取り出す簡単な書き方

たった1行でランダムにできる方法 結論 出力結果 やっていること 補足 たった1行でランダムにできる方法 LinqとGuidをつかって、リストの中身をランダムにする方法、ランダムに一個取り出す方法を紹介します。といってもランダムに一個取り出すほうは、中身…

【はてなブログ】過去記事の貼り方

過去記事の貼り方 1. URLをそのままペースト 2. 右のサイドバーから「過去記事貼り付け」 まとめ 過去記事の貼り方 ブログの記事に、自分の過去の記事を添付する方法を2つご紹介。 1. URLをそのままペースト URLを記事に貼ると、どの形式で添付するかのウィ…

【Unity】Debug.Logの第二引数が便利

Debug.Log()の第二引数にObject型を指定して、実行して出てきたコンソールログをクリックすると指定したObjectがヒエラルキーのどこにいるかを教えてくれます。 最近まで知りませんでした...

【Confluence】無料プランだとカスタムスタイルシートを有効化できないっぽい?

コンフルエンスの見栄えをよくするためにCSSを設定しようとしたが、ルック&フィールにカスタムスタイルシートのタグがそもそもなかった。 →どうやら「管理→セキュリティ設定」の中にあるカスタムスタイルシートのチェックをいれて有効化する必要があるらしい…

【Confuluence】管理グループにユーザーを追加する方法

①コンフルエンスの左上にあるマークをクリック。 ②「管理」を選択。 ③権限を変更したいユーザーがいるConfuluenceの製品の欄の右の「・・・」をクリックし、「ユーザーを管理」を選択。 ④権限を変更したいユーザーの欄の右の「・・・」をクリックし、「ユー…

【Confuluence】ページを左寄せにする方法

Confuluenceのページを作成したときにデフォルトで、ページの内容が真ん中に表示されるようになっていた。 左寄せにするには、ページ右上あたりにある「←→」ボタンでページを全幅設定にすると左寄せになった。

【Unity】関数名やプロパティ名はわかるけど、どのusingを使えばいいかわからないよ~って時に使うショートカット

結論 windowsでVisual Studioの環境なら「Alt + Enter」で該当しそうなusingディレクティブを示してくれる。(macは調べてないからわからないけど「cmd + Enter」とかかな?) 内容 時々関数名やプロパティ名はわかるけど、どのusingディレクティブを追加すれ…

【Unity】フレームレートを変更する方法

以下の1行で、好きなフレームレート数に設定できます。 // 30フレームに設定 Application.targetFrameRate = 30; あくまで目標とするフレームレート数なので、処理が間に合わない場合は それ以下のフレームレートになります。 1フレームの処理が終わった場合…

【Unity】定数用のクラスを定義

どこのスクリプトからでも参照したい定数をまとめておくクラスの作成例の一つです。 public static class GrobalConst { public static class PlayerSetting { public static int INIT_PLAYER_NUM = 3; public static int MAX_PLAYER_NUM = 16; public stati…

文字列の中にある文字列が含まれているかどうかの判定

C#

たとえば"あいうえお"の中に"あい"が含まれているかどうかを調べるときはIndexOfを使うとできます。 var str1 = "あいうえお"; var str2 = "あい"; Debug.Log(str1.IndexOf(str2)); 出力:1 str2が"いう"の場合は2が返ってきます。 逆に含まれていない文字…

.gitignoreにgitを無視するファイル名を追記したのに無視されないときに確認すべきこと

何も変更したつもりがないのに自動で更新が入って、gitに差分が毎回現れるファイルをgitの追跡から削除したいときは.gitignoreファイルにファイル名を追記します。 しかし、一度Addしてcommitしたファイルは.gitignoreに追記しただけではその後も差分が出て…

最新のUnityで"Recompile After Finished Playing"がなくなった?

LTSの2021.3.10f1のUnityを使っているのだが、どうやらScript Changes While Playingの項目から Recompile After Finished Playingがなくなっているみたい (どなたかご存知の方いたら教えていただけると幸いです) 設定画面 ↓のリンク先でも話題に上がって…