自作ゲームに広告を登録する方法(Godot)

Godotで作ったゲームに広告を入れるのは、収入を得るためには必須の技能ですよね。ということで調べます。

まず広告を貼らせてくれるサービスに登録しないといけない、と。これはまぁわかりますね。

代表的なのはGoogle AdMobってことで、とりあえずこれだけで十分みたい。

AdMobにアプリを登録して、アプリIDと広告ユニットIDを発行する、と。

Godot側ではAdMobプラグインを導入しておく必要があるようです。

よく使われるのは「godot-admob」や「Shin-NiL/godot-admob」とのこと。AndroidならGradleビルドに自動で組み込まれるって言われてもな。

iOSの場合は、XcodeでGoogle Mobile Ads SDKをCocoaPodsなどで導入し、Info.plistGADApplicationIdentifierを追記する、と(あとで画像付けます)

広告の種類は大まかに三種類の模様。

画面下などに表示するバナー広告、ゲームオーバーやステージ間に全画面で出すインタースティシャル広告、動画を見てもらうと報酬がもらえるリワード広告。これくらいは覚えないとあかんやろな。

ネイティブ広告というのもあるみたい。ゲームの中に自然に置ける広告…?ゲーム内のディスプレイとかに出せるのか。へー!って声出ちゃった。面白いですね。

開発中は必ずGoogle公式のテストIDを使わないと怒られる(そりゃそうだ)

下記のテストIDはAndroidとiOSの両方で使えるようです。

バナー広告:ca-app-pub-3940256099942544/6300978111

インタースティシャル広告:ca-app-pub-3940256099942544/1033173712

リワード広告:ca-app-pub-3940256099942544/5224354917

ネイティブ広告:ca-app-pub-3940256099942544/2247696110

これらを使えば、実際の広告ユニットを発行していなくてもテスト表示が可能らしいから、早めに作ったほうが安心ですかね。

。本番広告をテストでクリックすると規約違反になるので、必ずテストIDで確認しろとのこと。

コードの例は以下の通りです。

extends Node

var admob

func _ready():
    admob = AdMob.new()
    add_child(admob)

    # AndroidでもiOSでも共通で使えるテストID
    admob.load_banner("ca-app-pub-3940256099942544/6300978111")
    admob.load_interstitial("ca-app-pub-3940256099942544/1033173712")
    admob.load_rewarded("ca-app-pub-3940256099942544/5224354917")

func show_banner():
    admob.show_banner()

func show_interstitial():
    if admob.is_interstitial_loaded():
        admob.show_interstitial()

func show_rewarded():
    if admob.is_rewarded_loaded():
        admob.show_rewarded()

と。テストで問題なく動作したら、本番リリース前に自分の広告ユニットIDに差し替えればOK!

コメント