Unityでゲームを作っていると、「ボタンを押したら公式サイトを開きたい」「問い合わせフォームや利用規約ページへ移動できるようにしたい」と感じる場面があります。
ただ、UnityのButtonを作っただけでは、Webページは自動で開きません。ボタンのクリックイベントと、URLを開くためのスクリプトをつなげる必要があります。
特に初めて実装すると、On Click()の設定場所や、どこにURLを書けばよいのかで迷いやすいです。さらに、エディター上では動いても、WebGLやスマホの実機では挙動が変わる場合もあります。
ここでは、UnityのButtonからWebページを開く基本的な作り方を、実装手順・サンプルコード・動かない時の確認ポイントまでまとめます。
UnityでWebページを開く方法【結論】
UnityでWebページを開きたい場合は、基本的にApplication.OpenURLを使います。
Application.OpenURLは、指定したURLを端末のブラウザで開くためのUnity標準機能です。たとえば、ゲーム内の「公式サイト」「お問い合わせ」「利用規約」「攻略ページ」などへ移動させたい時に使えます。
Buttonと組み合わせる場合の流れは、次のようになります。
- Buttonを作成する
- URLを開くスクリプトを作成する
- ButtonのOn Click()に関数を登録する
- 再生して、ボタンを押した時にWebページが開くか確認する
ここで大事なのは、ButtonだけではURLは開かないという点です。Buttonは「クリックされたことを知らせる部品」であり、実際にWebページを開く処理はC#スクリプト側に書きます。
また、Application.OpenURLはUnityのゲーム画面内にWebページを表示する機能ではありません。通常は、外部ブラウザやブラウザタブでページを開く動きになります。

ゲーム内にWebページを埋め込んで表示したい場合は、WebView系の仕組みが別途必要です。今回の主軸は「ボタンを押して外部のWebページを開く方法」に絞って進めます。
ButtonでURLを開く完成コード
まずは実際に動くコードを見てみましょう。
URLを1つだけ開くのであれば、次のようなシンプルなコードで十分です。
固定URLを開くコード
using UnityEngine;
public class OpenURL : MonoBehaviour
{
public void OpenWebsite()
{
Application.OpenURL("https://example.com");
}
}
このコードでは、OpenWebsite()が呼ばれたときに指定したURLを開きます。
たとえば、ゲームの公式サイトへ移動させたい場合や、利用規約ページへ誘導したい場合に便利です。
InspectorからURLを変更できるコード
URLを後から変更したい場合は、Inspectorから設定できる形にしておくと管理しやすくなります。
using UnityEngine;
public class OpenURL : MonoBehaviour
{
[SerializeField]
private string url;
public void OpenWebsite()
{
Application.OpenURL(url);
}
}
この方法なら、スクリプトを書き換えなくてもInspector上でURLを変更できます。
複数のボタンを作る場合にも便利です。
たとえば次のような使い分けができます。
- 公式サイトボタン → https://example.com
- お問い合わせボタン → https://example.com/contact
- SNSボタン → https://x.com/example
ButtonにOpenURLを設定する手順
Buttonを作成する
まずはURLを開くためのButtonを作成します。
- Hierarchyウィンドウを右クリックする
- 「UI → Button」を選択する
- シーンにButtonが作成されることを確認する
Buttonが作成されると、Canvasも自動的に作成されます。
ボタンのテキストは「公式サイトを開く」や「お問い合わせ」など、プレイヤーが何をするボタンなのか分かる名前に変更しておきましょう。
UIの基本操作に慣れていない場合は、こちらの記事も参考になります。
スクリプトをアタッチする
次に、先ほど作成したOpenURLスクリプトをButtonへアタッチします。
- ProjectウィンドウでOpenURLスクリプトを作成する
- Buttonオブジェクトへドラッグ&ドロップする
InspectorにOpenURLコンポーネントが表示されれば準備完了です。
SerializeField版を使っている場合は、この時点でURL入力欄も表示されます。
On Click()に関数を登録する
Buttonがクリックされた時に関数を実行する設定を行います。
- Buttonを選択する
- Inspectorの「Button」コンポーネントを探す
- 「On Click()」欄の「+」ボタンを押す
- オブジェクト欄へButtonをドラッグする
- 関数一覧から「OpenURL → OpenWebsite」を選択する

設定が正しければ、ボタンをクリックした時にOpenWebsite()が実行されるようになります。
ここでよくあるミスは、スクリプトを登録したつもりでも、関数を選択していないケースです。
On Click()の右側に「No Function」と表示されている場合は、まだ設定が完了していません。
動作確認する
最後にPlayボタンを押して動作確認を行います。
- Unityを再生する
- Buttonをクリックする
- ブラウザが起動することを確認する

指定したURLが表示されれば実装成功です。
URLが開かない時の確認ポイント
設定手順どおりに実装したつもりでも、ボタンを押しても何も起こらない場合があります。
そのような時は、次のポイントを順番に確認してみましょう。
URLにhttps://が付いているか
最初に確認したいのがURLの書き方です。
例えば次のような形式になっている必要があります。
https://example.com
一方で、次のようなURLは正常に開けない場合があります。
example.com
http://やhttps://を付け忘れていると、環境によってはURLとして認識されないことがあります。
まずはブラウザに直接貼り付けてアクセスできるURLか確認してみましょう。
On Click()に正しい関数を登録したか
Buttonの設定ミスも非常によくあります。
On Click()には、オブジェクトを登録するだけでは不十分です。
オブジェクト登録後に、実行する関数まで選択する必要があります。
正しい設定例は次の状態です。
- Object欄にOpenURLスクリプトが付いたオブジェクトが登録されている
- 関数に「OpenURL → OpenWebsite」が選択されている
「No Function」のままになっている場合は、クリックしても何も実行されません。
スクリプト名とクラス名が一致しているか
Unityでは、スクリプト名とクラス名が一致していないと正常に動作しません。
例えばファイル名がOpenURL.csなのに、クラス名が別の名前になっているとエラーになります。
public class OpenURL : MonoBehaviour
{
}
ファイル名とクラス名は同じにしておきましょう。
もしスクリプトをアタッチできない場合は、この部分を確認してみてください。
Consoleにエラーが出ていないか
UnityのConsoleウィンドウに赤いエラーが表示されている場合、そのエラーが原因で処理が実行されていない可能性があります。
特に次のようなエラーはよく見かけます。
- コンパイルエラー
- NullReferenceException
- MissingReferenceException
エラーが1つでも残っていると、期待どおりに動作しないことがあります。
まずはConsoleを確認し、エラーを解消してから再度テストしてみましょう。
クリックイベント自体が反応しない場合は、こちらの記事も参考になります。
WebGL・スマホで使う時の注意点
Application.OpenURLはシンプルで便利ですが、実行する環境によって挙動が少し変わる場合があります。
Unityエディターで動いたからといって、WebGLビルドやスマホ実機でも必ず同じ見え方になるとは限りません。公開前には、実際に使う環境で確認しておくのがおすすめです。
WebGLはブラウザ設定に影響される
WebGLでは、URLを開く動作がブラウザや設定の影響を受けることがあります。
たとえば、ポップアップブロックの設定や、ブラウザ側のタブ制御によって、新しいタブで開く場合もあれば、想定どおりに開かない場合もあります。
確認する時は、次のように複数の条件で試すと安心です。
- ChromeやSafariなど、使用予定のブラウザで確認する
- 新しいタブで開くか確認する
- ポップアップブロックの影響を受けていないか確認する
WebGL向けに公開する場合は、URLを開く処理だけでなく、文字表示やブラウザ依存の問題も起きやすいです。WebGL関連の確認ポイントは、こちらも参考になります。
まとめ:UnityでURLを開くならOpenURL
UnityでWebページを開く機能を実装する場合は、Application.OpenURLを使うのが最も手軽な方法です。
実装の流れを振り返ると、次の4ステップになります。
- Buttonを作成する
- OpenURL用のスクリプトを作成する
- On Click()に関数を登録する
- 実際にクリックして動作確認する
特に初心者の方がつまずきやすいのは、On Click()の設定漏れやURLの入力ミスです。
ボタンを押しても何も起きない場合は、次のポイントを確認してみてください。
- URLにhttps://が付いているか
- On Click()に関数を登録しているか
- スクリプトが正しくアタッチされているか
- Consoleにエラーが出ていないか
また、WebGLやスマホでは環境によって挙動が変わる場合があります。
エディター上で問題なく動いていても、公開前には必ず実機やビルド環境で確認しておくと安心です。
Unityの基礎から体系的に学びたい場合は、こちらの書籍も参考になります。
Unityの教科書 Unity 6完全対応版
✅ Amazonでチェックする|✅ 楽天でチェックする
公式サイトや問い合わせフォームへの導線を作る機会は意外と多いので、Application.OpenURLは早めに覚えておくと便利な機能のひとつです。










※当サイトはアフィリエイト広告を利用しています。リンクを経由して商品を購入された場合、当サイトに報酬が発生することがあります。
※本記事に記載しているAmazon商品情報(価格、在庫状況、割引、配送条件など)は、執筆時点のAmazon.co.jp上の情報に基づいています。
最新の価格・在庫・配送条件などの詳細は、Amazonの商品ページをご確認ください。