Unityメモ
AdMob
-
6か月配信しなかったら無効化される
- 一度無効化されたので有効化したが、特に問題は無さそうだった。IDも以前のまま。
- 警告自体は5か月の時点で出ていた。
-
支払情報と収益の受け取りは別らしい。
お支払い方法を選択する https://support.google.com/admob/answer/2772229?hl=ja
- 8000になったら払われるが、その時点で登録するのかな
-
テストデバイス登録 https://developers.google.com/admob/unity/test-ads#enable_test_devices
- 忘れるとペナルティがあるようなので、真っ先にセットしてしまった方がよさそう。
- コードからの登録は、説明にあるログが出なかったので出来なかった
-
ストア公開後にアプリストア登録
- メールで「IARC Live Rating Notice」というのが来たら可能になる。
GoogleMobileAds を更新した際に設定が増えているようなので確認
-
メニュー アセット Google Mobile Ads Settings UMP-specific settings
- iOSだけっぽい
-
ユーザーのプライバシー > スタートガイド https://developers.google.com/admob/ump/android/quick-start?hl=ja
「パーソナライズド広告」設定を付けて切り替えられるようにした。デフォルトOFFにする事でオプトインにした。収益は下がるかも。
-
Unity内で完結させる「AdMob広告付きアプリのiOS14対応」 https://qiita.com/tetr4lab/items/0b27fb4d2bcaa19ead79
コンテンツレーティングについて
アプリのコンテンツ → コンテンツのレーティング の回答でそうなる。
アプリのコンテンツ → ターゲットユーザーおよびコンテンツ にも年齢についてある。
とりあえず18才以上としたが、レーティング回答内容だとより若年向け判定はされた。
Android インストール後のサイズがプログラムサイズより大きい
広告のせい。50MBを使うとの事。試しに機内モードにしたら増えなかった。
https://stackoverflow.com/questions/40605163/rewarded-base-ads-taking-loads-of-disk-space
PlayFab プレイヤーの DisplayName は重複できない
-
PlayFabManager.UpdateUserTitleDisplayNameAsync
でセットする際に、NameNotAvailable エラーが返る
-
タイトル設定で「一意でないプレイヤー表示名を許可する」をONにすると重複可能になるが、有効にするなら設計が必要
DisplayName を使うのを止めて、独自の値を管理する。
Visual Studio 2022 Community は商用利用不可?
https://www.alesis-semi.com/programming/visual-studio-community/
- 個人なら有償も可能
- 組織ならPC250台未満年商1億未満なら5名まで
自分の使い方なら問題なさそう
Blenderで作ったモデルを使う
- Blender上だとモデルの直径が2になるが、Unity上だと1の方が倍率調整しやすい。
- Unity上のFBXスケールファクターを0.5にする
ゲーム開発を最適化する9つの方法
https://forpro.unity3d.jp/unity_pro_tips/2021/11/02/2827/
- プロファイリングして、瞬間的に遅い部分やメモリ消費量を改善
- 自分のプロジェクトだと、一番重いのはDOTweenのGCだった。十分最適化できていると言えそう。
サイズを削減
- 公式 https://docs.unity3d.com/ja/2020.3/Manual/ReducingFilesize.html
- Unityで作ったアプリのサイズを減らす20の方法 https://kan-kikuchi.hatenablog.com/entry/Unity_App_Size
- 空のプロジェクトのアプリサイズを小さくする https://kazupon.org/unity-empty-project-small-size/
- AssetBundleの対応はプロジェクトによる。通常はそれが必要なほど大きくならない。
- 対応する場合はプラットフォームごとにAssetBundleとしてビルドしたファイルが分かれる。呼び出し時に切り替えが必要
UIについて
https://blog.unity.com/ja/games/unitys-ui-webinar-follow-up-questions
- 変更があると、その祖先にさかのぼり、Canvas要素に到達すると、その子について位置の再計算が行われる
- グループごとのルートにCanvasを置くべきかも
- 複数の解像度に対応するには
- 一般的には CanvasScaler と Rect Transform のアンカーとストレッチで十分
- 解決しない場合は LayoutGroup。動的に変化しないものなら、配置後にLayoutGroupを無効化する
最適化方法として、フレームレートのオンデマンド変更というのがある。 ユーザーが操作しようとした時だけフレームレートを上げるなど。 基本は全体の最適化。
修正
2026/02/22 更新しました。主な内容は変わっていません。