【Unity】ボタンをクリックして特定のURLをブラウザで開くUIを追加する方法 - IG developer

【Unity】ボタンをクリックして特定のURLをブラウザで開くUIを追加する方法

Unityでボタンをクリックすると、特定のWEBページにブラウザでアクセスする機能を追加する方法をまとめました。

どんな時に使う機能か

開発したゲームに、自社のホームページや開発者の情報を掲載したり、SNSのリンクを掲載するなどの用途で使用します。

作業環境

以下の環境での作業環境で実装したものを本記事で掲載しています。

  • Windows 11 Pro
  • Unity 6 (Unity 6000.0.40f1)

Projectを立ち上げる

URPでProjectを作ります。

以下の記事と今回のUnityはバージョンが異なりますが、URPでのプロジェクトの作成方法に関しては以下の記事と同じやり方で作成できます。

以下の記事を参考に、URPでプロジェクトを立ち上げます。

ボタンをUI上に作成する

まずはHierarchy(日本語の発音で「ヒエラルキー」、英語の発音で「ハイエラーキ」 )で右クリックします。「UI>Canvas」の順に選択してCanvasをクリックします。

キャンバスが作成されました。

次に、再度Hierarchyを右クリックし、「UI>Button – TextMeshPro」の順に選択します。

TMP Importerウィンドウが表示されたら、「Import TMP Essentials」をクリックします。

Import TMP Essentials ボタンが押せなくなっていたら問題なくImportされています。×ボタンをクリックしてTMP Importerウィンドウを閉じます。

作成したボタンにアタッチするスクリプトを作成する

次に以下のスクリプトをC#で作成します。作成するC#ファイルのファイル名は「ACCESSWEBPAGE」(拡張子を含めるとACCESSWEBPAGE.cs)にします。

今回はhttps://industrial-games.com/にアクセスしてみます。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ACCESSWEBPAGE : MonoBehaviour
{
   public void onClick()
    {
        Application.OpenURL("https://industrial-games.com/"); //""の中にアクセスさせたいWebページのURLを入力
    }
}

今回はファイル名を「ACCESSWEBPAGE」にします。

作成したC#ファイルをダブルクリックして以下のスクリプトを記載して保存します。

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class ACCESSWEBPAGE : MonoBehaviour
{
   public void onClick()
    {
        Application.OpenURL("https://industrial-games.com/"); //""の中にアクセスさせたいWebページのURLを入力
    }
}

作成したボタンにスクリプトをアタッチする

作成したスクリプトをボタンまでドラッグしてアタッチします。

ボタンをクリックしたらスクリプトの処理を実行できるようにする

HierarchyでButtonを選択し、InspectorでOn Clickの+ボタンをクリックする。

On Clickの「None (Object)」にButtonをドラッグする。

No Functionをクリックし、先ほど作成したスクリプトの処理を指定する。

これでボタンをクリックしたときにスクリプトの処理が実行される。

動作確認

実際の動作を確認します。

ボタンをクリックすると、期待通りのWEBページへブラウザからアクセスできました。

うまくいかないときは

うまく動作しない場合は以下の点を確認します。

  • Consoleに表示されているエラーを確認して、Googleで検索してみる
  • ファイル名とpublic class ACCESSWEBPAGE : MonoBehaviourに記載のある、class以降の文字列に相違がないか
  • スクリプトを間違いなくコピー&ペーストできているか
  • 他のC#ファイルに影響を受けていないか

必要に応じて、テストで新しくプロジェクトを立ち上げてみて、前述の作業を再度行ってうまく動作するかを確認します。