ホームページ > テクノロジー周辺機器 > IT業界 > 一時停止、メインメニュー、ゲーム上の画面上のunityを追加する

一時停止、メインメニュー、ゲーム上の画面上のunityを追加する

William Shakespeare
リリース: 2025-02-19 10:44:11
オリジナル
633 人が閲覧しました

一時停止、メインメニュー、ゲーム上の画面上のunityを追加する

ゲームをプレイするときに見ることができるボタン、テキスト、ドロップダウンなどは何ですか?これらはすべて、ユーザーインターフェイス(UI)と呼ばれるものの一部です。ほとんどのゲームには、プレイヤーがレベルを切り替えて特定のコントロールをアクティブにしやすくするために、ある種のUIがあります(ゲームの一時停止やレベルの再起動など)。ユニティでドジャーを作成する方法を説明する前の記事で、プレーヤーが敗れた場合にゲームを更新するための小さなボタンを作成しました。 このチュートリアルでは、それを次のレベルに引き上げ、ユーザーがゲームを一時停止または再起動し、異なるシーンを切り替えることができます。また、ゲームが一時停止されたときやプレーヤーが死ぬときなど、特定の時間にのみ特定のUI要素を表示する方法についても見ていきます。

ほとんどのゲームには、一時停止メニュー、画面上のゲーム、メインメニューが含まれています。これらは「完成」ゲームに必要ないくつかの要素の一部であるため、3つすべてをドジャークローンに挿入します。さらに、プレイヤーがゲームを開始する前に使用できるコントロールを学習できるように、命令画面を作成します。 一時停止、メインメニュー、ゲーム上の画面上のunityを追加する完了したゲームは、itch.io.

で再生できます

キーテイクアウト

一時停止、メインメニュー、およびユニティの画面上のゲームを実装することは、重要なUIコントロールとシーン管理を提供することによりゲームプレイを強化します。

「time.timescale」を使用してゲーム状態を制御し、ゲームを一時停止するために0に設定し、1を再開して、効果的な一時停止メニュー機能を有効にします。

さまざまなゲーム状態のボタンやテキストなどの異なるUI要素を作成し、「showonpause」などのタグを使用して可視性を管理します。

ゲームを開始するオプションを備えたメインメニューシーンを開発し、シーンの移行のために「SceneManager」を活用してユーザーナビゲーションを強化します。
    スコアディスプレイと再起動オプションを使用して画面上のゲームを組み込み、衝突検出とUIアップデートを使用して、プレイヤーにゲームエンドを通知します。
  • 基本的な一時停止画面を作成
  • Pause画面には、プレイヤーがレベルを再起動したり、メインメニューに戻ったり、ゲームを停止したりするために使用できる共通のコントロールセットがあります。一時停止画面は、ゲームが一時停止されたときにのみ表示される必要があります。ユニティでは、一般的に、Time.timescaleを使用して、一時停止と非干渉ゲームを区別できます。タイムスケールがゼロの場合、ゲームは一時停止されます。ゼロよりも大きい場合は、ゲームは豊かになりません(これについては後で説明します)。始めましょう!
  • 一時停止テキストの作成
  • 最初に、ゲームが一時停止していることをプレイヤーに伝えるタイトルを作成する必要があります。階層ペインで右クリックしてUI->テキストを選択して、テキストオブジェクトを作成する必要があります。新しく作成されたオブジェクトPauseTextに名前を付けてみましょう

    ゲームが一時停止していることをプレイヤーに伝えるタイトルを作成する必要があります。階層ペインで右クリックしてUI->テキストを選択して、テキストオブジェクトを作成する必要があります。新しく作成されたオブジェクトPauseTextに名前を付けてみましょう

    テキストオブジェクトをフォーマットして、ゲーム画面内で見栄えを良くすることができます。テキストオブジェクトのテキストを変更するには、「新しいテキスト」という単語があるテキスト属性の下にあるインスペクターペインをクリックする必要があります。テキスト属性の内部では、一時停止テキストのテキストを「一時停止」に変更できます。ゲームの配色を維持するには、テキストの色を白に変更する必要があります。これは、色のオブジェクト(黒または別の色が選択される場合がある場合)の下をクリックして白を選択することで実現できます。

    一時停止、メインメニュー、ゲーム上の画面上のunityを追加するテキストの配置を調整しましょう。一時停止テキストは、画面上で水平に中央に配置し、ゲーム画面の上部3分の1にある必要があります。一時停止テキストは、rect変換属性の内側のxとyの値を変更するか、Unityエディターの左上隅にあるマウスコントロールの4つの方法矢印を使用することで移動できます。必要に応じて、または必要に応じて、値を変更し、幅と高さの属性のサイズを変更することでテキストサイズを変更することもできます(長方変換の下)。

    今すぐに行う必要があるのは、オブジェクトにタグを付けて、プログラムがコードを追加した後、ゲームが一時停止されたときにのみこのオブジェクトに表示したいことを伝えることができるようにすることです。 「Untagged」と書かれた一時停止テキストの名前の下でクリックして、「タグを追加する」をクリックします。これで、「showonpause」という名前のタグを作成できます。このタグが作成されたら、一時停止テキストに追加する必要があります。

    一時停止ボタンの作成

    一時停止テキストを作成し、ゲームが一時停止されたときに表示されるゲームオブジェクトの新しいタグを追加したため、一時停止したゲームメニューを構成するボタンの作成を開始できます。

    は、再生ボタン、再起動ボタン、メインメニューボタンの3つの異なるボタンを作成します。再生ボタンはゲームの停止、再起動ボタンがゲームを再起動し、メインメニューボタンはプレイヤーをゲームのメインメニューシーンに戻します。

    新しいボタン(階層の右クリック - > ui->ボタン)を作成し、「Playbutton」という名前を付けてみましょう。プレイボタンのタグをshowonpauseに設定して、ゲームが一時停止されたときにのみ表示されるようにする必要があります。次に、再生ボタンのテキストを「再生」に設定しましょう。これは、インスペクターでテキストチャイルドオブジェクトを開くことで実行できます(階層の再生ボタンの横にあるドロップダウンをクリックして、テキストオブジェクトを選択します)。テキストプロパティを「再生」に変更します。プレイボタンを画面の中央に合わせて、一時停止テキストの下にあるようにする必要があります。

    他の2つのボタンを作成する簡単な方法は、階層の[再生]ボタンを選択し、それを複製する(コマンド / Ctrl D)2回です。新しいボタン「RestArtButton」と「MainMenubutton」という名前を付けることができます。また、新しいボタンのそれぞれに適切なテキストを提供する必要があります。再起動ボタンは「再起動」と言って、メインメニューボタンには「メインメニュー」と書かれているはずです。次に、最後のチュートリアルで作成された更新ボタンを削除しましょう。基本的な一時停止メニューがあることがわかります。ただし、オブジェクトにコードを添付していないため、メニューは何もしません。

    一時停止、メインメニュー、ゲーム上の画面上のunityを追加する

    前回のチュートリアルで作成されたUimanagerスクリプトを開きましょう。 UMANAGERスクリプトを編集して、以下のコードのように見えるようにする必要があります。

    Uimanagerスクリプトでアクセスできるコードが作成されたため、Unityに戻ることができます。 Unityの内部では、[再生]ボタンを選択して、Pausecontrolメソッドを添付します。これを行うには、[再生]ボタンを選択し、uimanagerゲームオブジェクトをインスペクターペインのonclick()属性の下のゲームオブジェクトスペースにドラッグできます。 Uimanagerゲームオブジェクトを追加すると、2番目のドロップダウンを使用してPausecontrol関数(uimanager-> pausecontrol)を選択できます。
    GameObject<span>[] pauseObjects;
    </span>
    	<span>// Use this for initialization
    </span>	<span>void Start () {
    </span>		Time<span>.timeScale = 1;
    </span>		pauseObjects <span>= GameObject.FindGameObjectsWithTag("ShowOnPause");
    </span>		<span>hidePaused();
    </span>	<span>}
    </span>
    	<span>// Update is called once per frame
    </span>	<span>void Update () {
    </span>
    		<span>//uses the p button to pause and unpause the game
    </span>		<span>if(Input.GetKeyDown(KeyCode.P))
    </span>		<span>{
    </span>			<span>if(Time.timeScale == 1)
    </span>			<span>{
    </span>				Time<span>.timeScale = 0;
    </span>				<span>showPaused();
    </span>			<span>} else if (Time.timeScale == 0){
    </span>				Debug<span>.Log ("high");
    </span>				Time<span>.timeScale = 1;
    </span>				<span>hidePaused();
    </span>			<span>}
    </span>		<span>}
    </span>	<span>}
    </span>
    
    	<span>//Reloads the Level
    </span>	public <span>void Reload(){
    </span>		Application<span>.LoadLevel(Application.loadedLevel);
    </span>	<span>}
    </span>
    	<span>//controls the pausing of the scene
    </span>	public <span>void pauseControl(){
    </span>			<span>if(Time.timeScale == 1)
    </span>			<span>{
    </span>				Time<span>.timeScale = 0;
    </span>				<span>showPaused();
    </span>			<span>} else if (Time.timeScale == 0){
    </span>				Time<span>.timeScale = 1;
    </span>				<span>hidePaused();
    </span>			<span>}
    </span>	<span>}
    </span>
    	<span>//shows objects with ShowOnPause tag
    </span>	public <span>void showPaused(){
    </span>		<span>foreach(GameObject g in pauseObjects){
    </span>			g<span>.SetActive(true);
    </span>		<span>}
    </span>	<span>}
    </span>
    	<span>//hides objects with ShowOnPause tag
    </span>	public <span>void hidePaused(){
    </span>		<span>foreach(GameObject g in pauseObjects){
    </span>			g<span>.SetActive(false);
    </span>		<span>}
    </span>	<span>}
    </span>
    	<span>//loads inputted level
    </span>	public <span>void LoadLevel(string level){
    </span>		Application<span>.LoadLevel(level);
    </span>	<span>}
    </span>
    ログイン後にコピー
    ログイン後にコピー
    同じ手順を使用して、再起動ボタンにRELOAD()メソッドとメインメニューボタンにLoadLevel()メソッドを追加できます。 LoadLevel()メソッドは文字列パラメーターを取得するため、関数ドロップダウンの下のボックスに「Mainmenu」と入力する必要があります。

    今すぐプレイをした場合、プレイと再起動ボタンが機能することに気付くでしょう。また、ゲームが再生されている間にPをヒットした場合、ゲームを一時停止して停止することができます。唯一の問題は、メインメニューボタンが機能しないことです。これは、ビルド設定に「Mainmenu」という名前のシーンを追加していないためです。

    メインメニューシーンの作成一時停止、メインメニュー、ゲーム上の画面上のunityを追加する

    シーンの作成

    プレイシーンで作成された一時停止メニューを使用すると、ゲームのメインメニューとして機能する新しいシーンを作成できるようになりました。作成するメインメニューはシンプルで、プレイヤーをプレイシーンに連れて行くプレイボタンのみが含まれています。

    最初に、私たちが行った作業が新しいものを開くときに削除されないように、私たちが取り組んでいる現在のシーンを保存する必要があります。新しいシーン(コマンド / ctrl nまたはファイル - >新しいシーン)を作成しましょう。シーンが開いたら、保存して「メインメン」と名付けます。

    注:「Mainmenu」という名前を付けています。これは、プレイシーンでメインメニューボタンを設定する文字列プロパティだからです。別の名前が必要な場合は、再生シーンのメインメニューボタンに添付されたLoadLevel()関数の文字列プロパティを変更できます。

    メニューの作成

    シーンが保存されたので、作業を開始できます。メインカメラゲームオブジェクトを選択し、その背景をプレイシーンと同じ色に変更することから始めましょう(R:0、G:223、B:255)。 このシーンでは、uimanagerスクリプト内のloadlevel()メソッドにアクセスできる必要があります。これは、Uimanagerゲームオブジェクトを作成し、Uimanagerスクリプトを添付して、ボタンに関数を追加できるようにする必要があることを意味します。

    空のゲームオブジェクトを作成し(階層を右クリック - >空の作成)、uimanagerに名前を付けます。これで、UimanagerスクリプトをUimanagerゲームオブジェクトに追加できます。

    「ドジャー」と再生ボタンというテキストを含むシンプルなメニューの作成を開始できます。まず、テキスト(階層の右クリック - > ui->テキスト)を作成し、「titletext」という名前を付けます。 「ドジャー」と言ってテキストを変更し、画面の中央に合わせて、上に向かって少し調整する必要があります。それでは、タイトルテキストの色を白に設定しましょう。

    作成および編集されたテキストを使用して、新しいボタンを作成して「Playbutton」と名付けます。再生ボタンの子オブジェクトのテキストを変更して「再生」する必要があります。最後に、uimanagerゲームオブジェクトをボタンのonclick()属性に追加し、loadlevel()関数を選択します。 LoadLevel()関数のパラメーターは、最後のチュートリアルのプレイシーンの名前が何であるかに依存します。 Assets Paneでシーンを見つけることで、プレイシーンの名前を見つけることができます。

    ゲームを実行して再生ボタンを押すと、ボタンが機能しないことに気付きます。その理由は、メインメニューボタンがプレイシーンで動作しなかったときと同じです。ビルド設定にメインメヌシーンを追加していません。現在のシーンをビルド設定に追加するには、ビルド設定(ファイル - >ビルド設定)を開き、電流の追加をクリックできます。

    ゲームの終了

    一時停止、メインメニュー、ゲーム上の画面上のunityを追加するゲームが「終了」と見なされるためには、プレイヤーがいつ負けたかを知ることができるように、画面上でゲームを越えて持っている必要があります。また、ゲームにスコアカウンターを追加しますので、プレイヤーはスコアがどれだけ高いかを知るでしょう。 スコアの追加

    現在のシーンを保存して、プレイシーンを開く必要があります。プレイシーンを開くと、テキストオブジェクトを作成して「ScoreText」と名付けます。スコアテキストオブジェクトは、画面の上部に整列する必要があります。スコアテキストオブジェクトを選択した状態で、rect Transformプロパティを調べてアンカーメニューをクリックすることで、トップストレッチアンカーを追加できます。また、テキストを中央に配置して白にする必要があります。

    スコアの更新に使用する条件は、画面が外れるブロックです(プレーヤーがすでに回避しているブロックを意味します)。この状態をアクティブにするには、ブロックの衝突が画面を離れていることを確認し、スコアの変数をインクリメントする必要があります。

    空のゲームオブジェクトを作成し、「Bottomborder」と名付けてみましょう。 BoxCollider2Dを下の境界に追加し、Xサイズをカメラの境界をわずかに通り過ぎる多数に設定します。これにより、下部の境界オブジェクトが落ちないように、下部の境界オブジェクトにrigidBody2Dを追加し、重力スケール属性を0に設定できます。プレーヤーのわずかに下にあるボトムボーダーオブジェクトをアラージュして、画面が外れていることを確認できます。

    プレーヤーのスコアを設定するには、新しいスクリプトを作成する必要があります。スクリプトフォルダー内に「PointCounter」という名前の新しいC#スクリプトを作成しましょう。 PointCounterスクリプトが作成されたら、IDEとタイプで開くことができます。

    GameObject<span>[] pauseObjects;
    </span>
    	<span>// Use this for initialization
    </span>	<span>void Start () {
    </span>		Time<span>.timeScale = 1;
    </span>		pauseObjects <span>= GameObject.FindGameObjectsWithTag("ShowOnPause");
    </span>		<span>hidePaused();
    </span>	<span>}
    </span>
    	<span>// Update is called once per frame
    </span>	<span>void Update () {
    </span>
    		<span>//uses the p button to pause and unpause the game
    </span>		<span>if(Input.GetKeyDown(KeyCode.P))
    </span>		<span>{
    </span>			<span>if(Time.timeScale == 1)
    </span>			<span>{
    </span>				Time<span>.timeScale = 0;
    </span>				<span>showPaused();
    </span>			<span>} else if (Time.timeScale == 0){
    </span>				Debug<span>.Log ("high");
    </span>				Time<span>.timeScale = 1;
    </span>				<span>hidePaused();
    </span>			<span>}
    </span>		<span>}
    </span>	<span>}
    </span>
    
    	<span>//Reloads the Level
    </span>	public <span>void Reload(){
    </span>		Application<span>.LoadLevel(Application.loadedLevel);
    </span>	<span>}
    </span>
    	<span>//controls the pausing of the scene
    </span>	public <span>void pauseControl(){
    </span>			<span>if(Time.timeScale == 1)
    </span>			<span>{
    </span>				Time<span>.timeScale = 0;
    </span>				<span>showPaused();
    </span>			<span>} else if (Time.timeScale == 0){
    </span>				Time<span>.timeScale = 1;
    </span>				<span>hidePaused();
    </span>			<span>}
    </span>	<span>}
    </span>
    	<span>//shows objects with ShowOnPause tag
    </span>	public <span>void showPaused(){
    </span>		<span>foreach(GameObject g in pauseObjects){
    </span>			g<span>.SetActive(true);
    </span>		<span>}
    </span>	<span>}
    </span>
    	<span>//hides objects with ShowOnPause tag
    </span>	public <span>void hidePaused(){
    </span>		<span>foreach(GameObject g in pauseObjects){
    </span>			g<span>.SetActive(false);
    </span>		<span>}
    </span>	<span>}
    </span>
    	<span>//loads inputted level
    </span>	public <span>void LoadLevel(string level){
    </span>		Application<span>.LoadLevel(level);
    </span>	<span>}
    </span>
    ログイン後にコピー
    ログイン後にコピー
    PointCounterスクリプトは、ブロックが衝突すると、ブロックが破壊され、スコアが更新されるように、ボトムボーダーゲームオブジェクトに追加する必要があります。

    さて、スコアテキストを更新する「PointUpDater」という名前のスクリプトを作成しましょう。 IDEとタイプでPointUpDaterスクリプトを開くことができます:

    スコアテキストゲームオブジェクトにPointUpDaterスクリプトを追加する必要があります。ボトムボーダーゲームオブジェクトをポイントカウンター値に追加して、スコアを更新できるようにする必要があります。

    メニュー上のゲームの作成
    public <span>int score;
    </span>
    	<span>// Use this for initialization
    </span>	<span>void Start () {
    </span>		score <span>= 0;
    </span>	<span>}
    </span>
    	<span>// Update is called once per frame
    </span>	<span>void Update () {
    </span>
    	<span>}
    </span>
    	<span>//checks for entering a trigger
    </span>	<span>void OnTriggerEnter2D(Collider2D other){
    </span>		<span>//checks other collider's tag
    </span>		<span>if(other.gameObject.tag == "Enemy"){
    </span>			score<span>++;								//increments score
    </span>			<span>Destroy (other.gameObject);				//destroys other collider's gameobject
    </span>		<span>}
    </span>	<span>}
    </span>
    ログイン後にコピー

    ゲームを終了するには、プレイヤーが死んだときに表示されるメニュー上にゲームを追加する必要があります。

    IDEでPlayerControllerスクリプトを開き、最後の変数宣言の下に追加しましょう。

    Enemycontrollerスクリプトの内部に追加しましょう:

    メニューの具体化を開始するには、新しいテキストゲームオブジェクトを作成し、「GameOverText」という名前を付けることができます。テキストは「ゲームオーバー」に設定する必要があり、テキストの色は白である必要があります。画面の中心をわずかに上にするように、テキスト上にゲームを揃える必要があります。このメニューが死んだときにのみ表示されることを確認するには、「showonfinish」という名前の新しいタグを作成し、テキスト上のゲームに追加する必要があります。

    次に、再起動とメインのメニューボタンを複製しましょう。ボタンを「FinrestartButon」と「FinmainMenubutton」に変更し、両方のボタンにshowonfinishタグを追加する必要があります。

    最後に、IDEでuimanagerスクリプトを開き、編集して、以下のコードのように見えるようにしましょう。
    public PointCounter pointCounter<span>;
    </span>	<span>// Use this for initialization
    </span>	<span>void Start () {
    </span>		text <span>= gameObject.GetComponent<Text>();
    </span>    text<span>.text = "Score: 0";
    </span>	<span>}
    </span>
    	<span>// Update is called once per frame
    </span>	<span>void Update () {
    </span>		text<span>.text = "Score: " + pointCounter.score.ToString();
    </span>
    	<span>}
    </span>
    ログイン後にコピー

    public bool alive<span>;
    </span>	<span>// Use this for initialization
    </span>	<span>void Start () {
    </span>		alive <span>= true;
    </span>	<span>}
    </span>
    ログイン後にコピー

    結論

    ゲームに簡単なUIを追加しました。プレイヤーは、ボタンを使用して2つのシーンを移動できるようになります。また、モジュラーユニティ開発とドライコーディングの経験を積んでいます(繰り返してはいけません)。スコアテキストを作成した方法は、リサイクル可能になるようにUnityコードを分割する方法の良い例です。

    質問?コメント?以下に残してください!

    <span>void OnTriggerEnter2D(Collider2D other){
    </span>
      <span>//Checks if other gameobject has a Tag of Player
    </span>  <span>if(other.gameObject.tag == "Player"){
    </span>    other<span>.gameObject.GetComponent<PlayerController>().alive = false;
    </span>    Time<span>.timeScale = 0;
    </span>  <span>}
    </span><span>}
    </span>
    ログイン後にコピー
    完成したプロジェクトは、githubからダウンロードできます一時停止、メインメニュー、およびゲーム上のゲーム上のゲームを統一してよく尋ねられる質問(FAQ)

    Unityに一時停止ボタンを追加するにはどうすればよいですか?

    ​​

    Unityに一時停止ボタンを追加するには、UIボタンを作成し、ゲームのタイムスケールを制御するスクリプトを添付します。タイムスケールは、ゲーム時間が進行する速度に影響するグローバルな乗数です。ゼロに設定することにより、ゲームを効果的に一時停止します。一時停止ボタンに添付されたスクリプトには、ボタンがクリックされたときに1(通常の速度)と0(一時停止)の間の時間スケールを切り替える関数を含める必要があります。 🎜>

    Unityでメインメニューを作成するには、メニューとして機能する新しいシーンを作成することが含まれます。このシーンには、プレイヤーがゲームを開始したり、設定を調整したり、終了できるようにするボタンなどのUI要素を含める必要があります。各ボタンには、クリック時に適切なアクションを実行するスクリプトが添付されている必要があります。たとえば、スタートボタンのスクリプトはゲームシーンをロードする可能性がありますが、Quitボタンのスクリプトはアプリケーションを閉じる可能性があります。 Unityの画面は、メインメニューの追加に似ています。ゲームを再起動したり、メインメニューに戻ったりするなど、プレイヤーにオプションを提供するUI要素を備えた、画面上のゲームとして機能する新しいシーンを作成する必要があります。これらの要素には、クリックしたときに適切なアクションを実行するスクリプトが添付されている必要があります。このクラスは、シーンの読み込みとアンロード、および現在のシーンに関する情報の照会の関数を提供します。新しいシーンに移行するには、shenemanager.loadscene関数を使用して、ロードするシーンの名前またはインデックスのいずれかを渡すことができます。

    Unityは、UI要素の外観をカスタマイズするためのさまざまなオプションを提供します。 Unityエディターに直接、色、サイズ、位置などのプロパティを調整できます。より高度なカスタマイズのために、UIシステムの強力なアニメーション機能を使用したり、既存のクラスを拡張して独自のカスタムUIコンポーネントを作成したりすることもできます。 >

    UI要素にUI要素にサウンドエフェクトを追加すると、AudioSourceコンポーネントを要素に接続し、要素が相互作用したときにサウンドを再生するように構成することで実現できます。たとえば、押したときにクリックサウンドを再生するようにボタンを構成する場合があります。

    UIをunityのさまざまな画面サイズに応答するにはどうすればよいですか?

    UNITYのUIシステムには、Canvasスケーラーと呼ばれる機能が含まれています。 Canvas ScalerのUIスケールモードを「画面サイズのスケール」に設定することにより、UI要素がさまざまなデバイスにわたって一貫したサイズとレイアウトを維持できるようにします。 >

    UIをUNITYでテストすることは、Unityエディターで直接実行できます。ゲームビューは、UI要素を含むゲームのリアルタイムプレビューを提供します。プレイヤーが実際のゲームでプレイヤーがするように、ゲームビューでUIと対話することができ、機能をテストして問題を確認できます。 >

    UIを統一のパフォーマンスのために最適化するには、複雑なグラフィックスの使用を最小限に抑え、不必要な更新を回避したり、Canvasスケーラーを使用して解像度を減らすなど、さまざまな戦略を伴う場合があります。ローエンドデバイス上のUI。 Unityのプロファイラーツールは、UIでパフォーマンスボトルネックを識別するための貴重なリソースになります。 API参照、およびベストプラクティス。さらに、Unityフォーラム、スタックオーバーフロー、さまざまなチュートリアルWebサイトなど、他のUnity開発者から学ぶことができる多くのオンラインコミュニティやリソースがあります。

以上が一時停止、メインメニュー、ゲーム上の画面上のunityを追加するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート