Engine続行するにはJavascriptを有効化してください。Realtimeインディーかプロのディベロッパーかを問わず、誰でもリアルタイムマルチプレイヤーゲームを開発してグローバルに配信可能です。PUNインディーかプロのディベロッパーかを問わず、誰でもリアルタイムマルチプレイヤーゲームを開発してグローバルに配信可能です。Quantumマルチプレイヤーゲーム開発の革新に参加しよう!MOBA、ブローラー、RTS、戦闘ゲーム、スポーツゲームを迅速な予測ネットワーキングエンジンで開発できます。Chat同時接続数をスケールできるクロスプラットフォームのチャットシステムをあなたのアプリに簡単に統合できます。Voice大規模かつインターナショナルな最先端のライブボイスチャット。すべてのマルチプレイヤーエンジンと併用可能。Classic(PUN1とも呼ばれます)はPUNのはじめの主要バージョンです。現在は、リファクタリングおよび機能拡張されたPUN2に切り替わっています。新しいプロジェクトはPUN2をご利用いただき、また可能であれば既存のプロジェクトについてもPUN1からPUN2へ移行していただくよう強く推奨しています。Cloassicは今後数か月メンテナンスされます。重要なバグの修正や新しいUnityバージョンのサポートは行いますが、新機能の追加はPUN2のみとなります。BasicチュートリアルはUnity基づいたチュートリアルです。Cloudによって動作する、独自のマルチプレイヤー対応アプリケーションを開発する方法や、アニメーターによるアニメーションを使用したキャラクターを使う方法を説明します。重要な機能や、PUNによるネットワークベースの開発を理解するためのヒントを学びます。Cloud新しいUnityプロジェクトの作成PUNのインポートとセットアップルームロビーアプリケーションIDとゲームバージョンリージョン開発まとめ概要このチュートリアルでは、空のプロジェクトから始めて、作成プロセス全体を順番に説明します。概念や、通常は見落としがちな点、ネットワークゲームを設計するうえでの検討事項を説明します。プレーヤーが歩き回るだけのゲームではなく、基本的な発射システムとプレイヤーの体力管理を実装します。これはネットワークを介して、様々な同期について説明をするのにも役立ちます。ルーム内のプレイヤーの数にもとづいてカスタムの大きさのアリーナを使用します。現在プレイしているプレイヤーの数に合わせてアリーナのサイズが調整されます。シーンの自動的な同期機能に関連するいくつかの概念、様々なシーンを読み込む際のプレイヤー処理に関するヒント、そのような状況で起こり得る問題について説明します。Topゲームの目的ゲームを起動すると、ユーザーは接続プロトコルを確認し、UI自体の進捗を把握できます。ルームが参加または作成されると、プレイヤーは最大4人のプレイヤーが一度に存在できるアリーナに入り、このアリーナはサイズ調整が可能です。プレーヤーは走ったり、方向転換や発射ができます。各プレイヤーが発射したビームが他のプレイヤーに当たるとそのプレイヤーの体力に影響を与えます。体力が0になるとゲームオーバーになりアリーナから退出します。その後、情報画面が再表示され、希望に応じて新しいゲームに参加することができます。Editorとプログラミングの基本のみを前提としています。Networkingで導入された新たな概念をより効率的に活用できるでしょう。Scriptでも同様に動作します。Cloud新しいUnityプロジェクトの作成Unity4.7またはUnity5のいずれかのバージョンを使用してください。チュートリアルを行う際は通常、新しいプロジェクトを作成することをお勧めします。コンセプトや設計パターンを理解したら、それらを独自のプロジェクトに適用してください。TopPUNのインポートとセットアップAssetStoreを開き、PUNアセットを探してダウンロード/インストールします。すべてのPUNアセットをインポートしたら、Unityでリコンパイルします。Cloudを提供します!Cloudはゲームに使用できるPhotonサーバーを集めたものです。「無料プラン」のCloudを使用すれば気軽に始められます。メールアドレスを入力して、後はウィザードに任せましょう。「AppID」を取得します。メールアドレスが既に登録されている場合は、ダッシュボードを開くように求められます。ログインして、AppIDを入力フィールドに貼り付けます。AppIDが保存されたらこの手順は完了です。Cloud」とはPhotonServerが実行されているマシン群です。マルチプレイヤーゲーム開発に役立つサービスとして提供されます。プレイヤー数に上限はなく対応可能です。通常のホスティングに比べて低価格でご利用できます。こちらをご覧ください。内部での現象を簡単に説明します:全員がまず最初に「ネームサーバー」に接続します。ネームサーバーは、クライアントがどのアプリケーション(AppIDで)とリージョンを使用するのかを確認します。その後、ネームサーバーはクライアントをマスターサーバーへ転送します。マスターサーバーは、複数のリージョナルサーバーのためのハブで、すべての既存のゲームを把握しています。「ゲームサーバー」と呼ばれる、他のいずれかのマシンに転送されます。PUNの設定は非常に簡単で、ホスティング費用やパフォーマンス、メンテナンスを気にする必要は一切ありません。Cloudは「ルームベースのゲーム」で構築されます。マッチごとにプレイヤーの数が制限され(10以下など)、他のプレイヤーからは区別されます。できるだけ早くプレイヤーがルームに入るようにするべきです。ルームに入る最良の方法は、ランダムマッチメイキングを使用することです。サーバーにより、任意のルームまたは特定のプロパティを持つルームが選択されます。すべてのルームには識別子として名前が付けられています。ルームが満室または終了していない限り、名前を指定して参加することができます。マスターサーバーは、そのアプリケーション向けのルームリストを提供します。Topロビーアプリケーションのロビーはマスターサーバー上に存在して、ゲームのためのルームリストを表示します。この例ではロビーを使わず、利用可能な場合はランダムなルームに参加し、参加できる既存のルームが無い場合は新規データを作成します(ルームの定員に上限がある場合があります)。TopアプリケーションIDとゲームバージョン全員が同じサーバーに接続する場合、自身のプレイヤーを他者のプレイヤーから区別する必要があります。「AppID」を取得します。プレイヤーは、自身のクライアント内で同じ「AppID」を持つプレイヤーとのみ接触します。古いクライアントのプレイヤーと新しいクライアントのプレイヤーを分離するために使用できる、「ゲームバージョン」もあります。Cloudは、非常に遠くにいるプレイヤーとの接続不良を防ぐために、世界中の個別のリージョンで構成されています。異なるリージョンのリモートチームと作業を行っている場合は、特にこの概念を理解しておく必要があります。チームメートとゲームの検証を行う際、リージョンの分割が原因でテストできない可能性があります。このため、やりとりが発生するすべてのテスター同士のリージョンが同じになるよう、強制的に設定してください。各セクションではプロジェクトの開発段階の特定の部分を説明するため、これらのセクションを順番に進めることが重要です。スクリプトとPhotonに関する知識レベルも、段階的に上がるようになっています。Topまとめこれで、ユーザの体験を向上させるための基本的な要件を満たし、インターネット上でユーザ同士が対戦できるシステムを作成することができました。ここまででPUNの管理方法、PUNのステータスや現在のコンテキストをリッスンする方法、簡単にAnimatorを使うために直感的なコンポーネントを最大限に生かす方法を学びました。自動シーン同期のようなPhotonの機能を使用して、強力つ独創性の高いGamePlayを作成する方法についても習得しました。一般ユーザーが利用できるゲームを完成させるにはさらに多くの作業が必要となりますが、ここまでの説明でゲームの基盤は整っています。「はじめに」セクションを参照したことを確認してください。ドキュメントやAPIリファレンスを参照し、利用可能な機能を確認してください。必要ではなくても、学んでおくと役立つことがあるでしょう。新しい機能の実装を行う際などに、関連性のある関数やプロパティを思い出すかもしれません。フォーラムでは、お気軽に関心や問題を共有してください。問題による停滞は避けるべきです。他のユーザーと問題を共有することで状況を整理でき、解決に近づけます。ユーザーによって経験やUnityやPUNに関する知識は異なりますので、どのような内容でも気兼ねなく投稿してください。