はなちるのマイノート

Unityをメインとした技術ブログ。自分らしくまったりやっていきたいと思いますー!

2021-01-01から1年間の記事一覧

2021年を振り返り、アプリやSwitchリリース・インターンなど

2021年も今日で終わりですね。毎年振り返り記事を書いていたので、今年もやっていきたいと思います。www.hanachiru-blog.com 1月 2月 3月 4月 5月 6月 7月 8月 9月 10月 11月 12月 さいごに 1月 2月1日にリリースするアプリ(厳密には1月下旬に一部ストアに公…

【Unity】Unity公式のDOTS(Data-Oriented Technology Stack)解説動画を見ながら簡単なゲームを作る

はじめに 今回はこちらのDOTS(Data-Oriented Technology Stack)の公式解説動画をやっていきたいと思います。 www.youtube.comこのブログ記事では上の動画のまとめ的な感じにしたいと考えてますが、時間がある方は素直に動画を見ていただいた方がいいかもしれ…

【Unity】DocFXを用いてプロジェクトのドキュメントを自動生成する

はじめに 今回はDocFXというドキュメント生成ツールを使い、Unityプロジェクトのドキュメントを作っちゃおうという記事になります。dotnet.github.io 自動生成したドキュメント はじめに DocFXをインストールする 出力先のフォルダを作成する ドキュメント化…

【Unity】AdMobを実装して、ダミー広告を表示するまで(2021/12/18)

はじめに 久しぶりにAdMobを実装したいと思うのですが、手順をすっかり忘れてしまたので備忘録の意味合いも兼ねて残しておきたいと思います。developers.google.com ダミー広告表示の様子 はじめに AdMobプラグインをインポートする Mobile Ads SDKが含まれ…

【Unity】エディタ拡張の設定をEditorUserSettingsで保存する

はじめに 今回はEditorUserSettingsについて取り上げたいと思います。 stephenhodgson.github.io EditorUserSettingsを利用して前回の設定を引き継ぐようにする はじめに 概要 使い方 応用例 概要 プロジェクト単位でエディタ情報を保存するためにEditorUser…

【Unity】従来のPhysXに比べてUnity Physics最強だと思いたかったけど失敗した件【DOTS】

はじめに ネットサーフィンをしていたところ、以下の動画を見つけました。www.youtube.comDOTSを利用しているUnity Physicsですが、これほどまで違うのかと感じます。ただ私はまだ信用していません。なぜならまだ自分で試していないからです。見せてもらいま…

【Unity】外部アプリ(exe)を起動して標準入出力を用いてやり取りをする

はじめに Unityからexeを起動して、標準入出力によりやり取りを行う処理を書く必要がありました。 Unityと外部プロセスとの標準入出力を用いたやり取りその手法について簡単の書き残しておきたいと思います。 はじめに exeを準備する UnityにExeを取り込む …

【Unity】デリゲート型の変数にメソッドを代入するときキャッシュすることでGC.Allocを防ぐ

はじめに デリゲート型の変数にメソッドを代入しようとした際に、そのやり方だとGC Allocが発生しちゃうよとご指摘いただけたことがありました。 // イメージ private void Update() { hoge.OnCompleted += Fuga; } private void Fuga(){} 実際に発生するの…

アルゴリズムイントロダクション第15章後半の個人まとめ

はじめに 前回前半をやったので、後半やっていきます。 www.hanachiru-blog.com テーマは同じく「動的計画法」です。 はじめに 動的計画法の基本要素 部分構造最適性 重みなし最短路問題 重みなし最長単純道問題 部分問題重複性 最長共通部分列問題 部分列 …

【個人開発】NintendoSwitchに「クローズドサークルからの脱出」をリリースすることができました

こんにちは、はなちるです。タイトルにもある通り、この度私が作成したゲーム「クローズドサークルからの脱出」がNintendo Switchにて発売されることが決定しました。Switch版「クローズドサークルからの脱出」が12月9日(木)に発売します!!ボクセルの女の…

アルゴリズムイントロダクション第15章前半の個人まとめ

はじめに 少し飛びましたが、前回の続きやっていきます。 www.hanachiru-blog.com 今回のテーマは「動的計画法」になります。 はじめに 概要 ロッド切り出し問題 動的計画法適応 トップダウン型の動的計画法 ボトムアップ型の動的計画法 部分問題グラフ 連鎖…

【Unity】MonoBehaviourを継承したクラスにコンストラクターを書いたときの挙動(シリアライズ化のタイミング)

はじめに MonoBehaviorを継承したクラスの初期化はAwakeやStartに書くと思うのですが、実はコンストラクターも一応動作します。 public class Sample : MonoBehaviour { public Sample() { Debug.Log("コンストラクター"); } } ただこの挙動については皆さん…

【Unity,c#】Doxygenで指定のフォルダを解析しないように除外する手順

はじめに 前にDoxygenを使ってドキュメントを生成する記事を書いたのですが、Unityでは外部から導入したファイルの説明も含まれていて分かりづらいと言われてしまいました。 www.hanachiru-blog.com ですので今回は指定フォルダを解析しないように除外する手…

イラストの知識ゼロでも写真からゲームの背景を作ってみたかった【CLIP STUDIO PAINT】

はじめに 最近訳あってノベルゲームを作っているのですが、その背景を作るのに「写真 => イラスト」という手法を用いて挑戦してみています。 ←写真 加工後→福徳稲荷神社 - No: 22600881|写真素材なら「写真AC」無料(フリー)ダウンロードOKただ私は普段イ…

【Unity】返り値を利用しないと警告がでるようになるMustUseReturnValue属性(特にIDisposableのとき便利)

はじめに 今回はMustUseReturnValue属性について紹介したいと思います。pleiades.ioただこの機能はRiderでないと警告はでなく、Visual Studioで確認してみたところ警告が表示されたりエラーになったりもしませんでした。 はじめに 使い方 実際の様子 使い方 …

【Unity】MonoBehaviour.OnValidate()とMonoBehaviour.Reset()でコンポーネントのプロパティの設定を楽にする

はじめに 今回はMonoBehaviour.OnValidate()とMonoBehaviour.Reset()について取り上げたいと思います。MonoBehaviour-Reset() - Unity スクリプトリファレンス MonoBehaviour-OnValidate() - Unity スクリプトリファレンスこれらのメソッドを利用することで…

【Unity】Regex.00を利用した正規表現の結果を手軽に見れるエディタ拡張を作った

はじめに 正規表現がちゃんと書けているかのチェックにいつも時間がかかっていたので、それをなるべく簡単に確認できるようなエディタ拡張をつくってみました。github.com はじめに 使い方 さいごに 使い方 メニューバーからTools -> RegularExpressionWindo…

アルゴリズムイントロダクション第5章の個人まとめ

はじめに 前回の続きをやっていきたいと思います。 www.hanachiru-blog.com 今回のテーマは「確率的解析と乱択アルゴリズム」になります。 はじめに 確率的解析 指標確率変数 乱択アルゴリズム 確率的解析 確率的解析は確率を用いる問題の解析手法である。入…

【Unity】Test Runnerでprivateメソッドもテストしちゃうよ

はじめに 今回はUnityのTest Runnerを使って、privateなメソッドもテストしちゃおうという記事になります。まあ簡単に言うとリフレクションを使ってアクセスするだけではありますが、覚えておいて損はないと思います。 はじめに やり方 解説 さいごに やり方…

【Unity】URPのプロジェクトでLight2Dを使い始めるまでの手順

はじめに 今回はURPのプロジェクトにLight2Dを使えるようにするための手順を書いておきたいと思います。 Light2Dを利用した例 はじめに 環境 手順 UniversalRenderPipelineAsset作成 2DRendererData作成 RenderListに設定 Scriptable Render Pipeline Settin…

【Unity】DoTweenにAssembly Definitionファイルがないとお困りの方、公式が生成ボタンを用意してくれてます

はじめに DoTweenにAssembly Definitionファイルないやないかい!!と思っていましたが、どうやら公式がしっかりと生成する処理を作っておいてくれていたみたいです。 同じ犠牲者がいないように、書き残しておきます。 はじめに 対処法 対処法 メニューバー…

【Unity,c#】Doxygenを使ってプロジェクトのドキュメントを自動生成する

はじめに 今回はDoxygenというツールを使って以下の画像のようなドキュメントを生成してみたいと思います。 ドキュメント例 はじめに Doxygenをインストールする GUIツールの概要 生成する さいごに Doxygenをインストールする まずはDoxygenをインストール…

アルゴリズムイントロダクション第4章の個人まとめ

はじめに 前回の続きをやっていきたいと思います。 www.hanachiru-blog.com今回のテーマは「分割統治法」になります。www.hanachiru-blog.com はじめに 分割統治法 置き換え法 1. 推定 2. 数学的帰納法 再帰木法 マスター法 マスター定理 分割統治法 分割統…

【C#】ジェネリッククラスのインスタンス化をするときに一行が長くなりすぎる問題の対処法

C#

はじめに C#のジェネリッククラスをインスタンス化するときに結構長くなってしまうのはあるあるな気がします。 private static void Main(string[] args) { // 一行が長くなりがち・・・ var sample = new Sample<List<int>, KeyValuePair<bool, int>>(); } public class Sample<TKey, TValue>{}</tkey,></bool,></list<int>…

【Unity】Screen.sleepTimeoutでスマホの画面が暗くならないようにする

はじめに 今回はiOS・Androidにて画面をスリープ状態にさせないようにしたいと思います。 はじめに やり方 一工夫してみる さいごに やり方 既にUnityがそれ用のAPIを用意してくれているので、そちらを使えばOKです。 UnityEngine.SleepTimeout - Unity スク…

アルゴリズムイントロダクション第3章の個人まとめ

はじめに 前回の続きをやっていきたいと思います。 www.hanachiru-blog.comちなみに内容的には昔書いたこの記事とかなり似ている感じでした。 www.hanachiru-blog.com はじめに 第3章「関数の増加」 Θ記法 O記法 Ω記法 o記法 ω記法 さいごに 第3章「関数の増…

アルゴリズムイントロダクション第1~2章の個人まとめ

はじめに 今回はアルゴリズムの名著とも言われている以下の本を読み、そのまとめを備忘録の意味合いも兼ねて書き残しておきたいと思います。 はじめに 第1章「計算におけるアルゴリズムの役割」 第2章「さあ,始めよう」 挿入ソート アルゴリズムの正当性 …

【Unity】ゲームオブジェクトのナンバリング方法を変更する(Numbering Scheme)

はじめに 今回はゲームオブジェクトを複製したときに、Unityが自動でナンバリングしてくれるときの命名方法を変更したいと思います。 ゲームオブジェクトのナンバリングを変更する はじめに 変更方法 各プロパティ解説 変更方法 メニューバーよりEdit -> Pro…

【Unity】Unity2020.1からの新機能Profiling CoreでProfilerに独自のカウンターを追加する(ProfilerCounter, ProfilerCounterValue)

はじめに 今回はUnity2020.1からの新機能であるProfiling Coreを利用して、Profilerに独自のカウンターを追加してみたいと思います。またビルドしたときにパフォーマンスに影響がでてしまうのでは…とお考えの奥様、そこはしっかりとビルド時にコンパイルされ…

【Unity】Unityを強制クラッシュさせるUtils.ForceCrashメソッドについて

はじめに 今回はUnityを強制クラッシュさせるUnityEngine.Diagnostics.Utils.ForceCrash()について紹介したいと思います。 はじめに 使い方 iOSでクラッシュ時のハンドリング クラッシュ時のハンドリング 使い方 public static void ForceCrash (Diagnostics…