UnityとゲームAIと将棋

Unity、Pythonを中心にゲーム開発やゲームAI開発の技術メモ等、たまに将棋も

ゲーム製作

【Unity】UIDocumentとuGUI(Canvas)のSortOrderの関係

結論 uGUIとUIDocumentのSortOrderによる描画順を制御するには UIDocumentの "Panel Settings" 側にあるSortOrderを変更する必要がある。 概要 uGUI(Canvas)によるUIとUIToolkitで作成したUIの描画順をSortOrderで制御するにはどうしたらいいか調べていたと…

【C#】List<T>とIEnumerable<T>の選択についてのメモ

結論 メソッド引数の場合 基本的にはIEnumerableを利用。IEnumerableの方がメモリ効率が良いため。 Listを使うのは下記のような場合。 要素数の取得をする foreach文を2回以上通過する 内部で配列やリストに変換している メソッド戻り値 基本的にはListなど…

【Unity】リリースビルドからデバッグ用コードを除外したい時のシンボル

結論 DEVELOPMENT_BUILD || UNITY_EDITORのシンボルで括る #if DEVELOPMENT_BUILD || UNITY_EDITOR #endif 詳細 Unityで開発をしていると リリース時はデバッグ用機能を無効、除外したい Developmentモードのビルド時はデバッグ機能有効にしたい Editor上で…

ゲーム開発でのゲームAI・機械学習技術の活用

概要 ゲーム開発において、ゲームAI技術や機械学習技術を活用する流れが加速していると日々実感しています。実際の現場でも導入されることが増え、ゲーム開発の様々な部分で効率化が進んでいると思います。ただ、どのようなケースで、どのような技術を使用す…

【Unity】C#におけるアップキャストとダウンキャスト

Unityでゲームの開発をしている時に派生クラスで追加したフィールドに、取得した基底クラスのインスタンスを使ってアクセスしたいというケースがありました。 このケースを解決するためにアップキャストとダウンキャストについて調べていた際、以下の二つの…

【Unity】デザインパターンに関する解説記事のメモ

Unityでの開発で用いられるデザインパターンについての解説記事で分かりやすかったものをまとめておきます。 ■Singletonパターン zenn.dev ■MVPパターン developers.cyberagent.co.jp ■Factoryパターン coacoa.net ■Unity公式のデザインパターンに関するblog…

【Unity】MVPパターンに関する情報メモ

MVPパターンとはModel-View-Presenterパターンの略で、GUI周りに関するデザインパターンの一つです。個人でゲーム開発をしている際にUI周りのコードを分かりやすく書きたくなって、それならばMVPパターンを使ってみようと思ったので、参考になりそうなリンク…

個人製作ゲーム「さんもくにゃらべ」公開中

Unityroomで「さんもくにゃらべ」というゲームを公開しています。 unityroom.com ルールは通常の三目並べと同じで、縦横どちらかの一列に自分の色の猫を並べることができれば勝ちです。 対戦可能キャラは4キャラでそれぞれ対戦用AIの強さが異なります。 探索…