Advanced Search
Search Results
86 total results found
04. ゲームプログラミング応用 I
02. Unityとの連携
プロジェクト仕組みの理解
ログイン
PHPでAPIを作成(固定結果) まず、Unityから接続できるようにしたいので、サーバーでログイン API の機能を追加しましょう。データベースがまだ作成していないため、ひとまず固定の結果を返しましょう。 C:\xmpp\htdocs\api フォルダを作成しましょう。この中に本ゲームのオンライン機能を実装していくフォルダにする。その中にlogin.php というからのテキストファイルを作成してください。単純に、成功したら、ユーザーIDを返し、失敗したら -1 を返すようにしましょう: <?php // JS...
事前の準備
Unity + PHP + MySQLプロジェクトを構築する前に、いくつか学習しておくべき項目がある。 Awaitable とは 非同期処理について UnityからWebサーバーへの依頼:UnityWebRequest これまではブラウザでサーバーに接続し、PHPスクリプトを実行してきたが、これからはUnityからリクエストを送信する。そのため、UnityWebRequest クラスを使用して、指定したURLに接続する機能がある。 GET リクエスト // GETでリクエストを送信 // url:接続したアドレス...
持っているカードを確認
カードの表示方法を理解する Unityで「CardTest」シーンを開く。以下のような画面が表示される。 このシーンを使って、カード表示機能をテストできる。使用する値は次の通りである。 ランク:0〜4の値で、それぞれC、B、A、S、SSに対応する イラスト番号:中央のイラストを選択するための0〜9の値 モンスター名:表示するモンスターの名前 攻撃力、防衛力、体力:0〜99の攻撃力、防衛力、体力の値 これらはすべて CardDisplay クラスによって処理される。特に、以下に示す SetData メソッドで扱...
01. 補足コンテンツ
オンラインゲームの仕組み
インターネットの仕組み オンラインゲームを作り始める前に、まずインターネットが大まかにどう動いているのかを理解しておこう。 クライアント/サーバー構造 現代のインターネットのほとんどは「クライアント/サーバー構造」と呼ばれる仕組みで動いている。この構造では、「クライアント」と「サーバー」という2つの存在が互いにメッセージをやり取りする。 クライアントとは、ユーザーが直接触れるデバイスのことだ。普段はパソコンやスマートフォンのブラウザがこれにあたる。オンライン決済アプリやLINEのチャットアプリもクライアントと言える...
カード削除
カードを削除するには、PHPで新しいAPIを作る必要がある。このAPIは以下のことを行う。 ユーザーIDを受け取る 削除したいカードIDのリストを受け取る(重複あり) リクエストに一致するカードごとに、カウントを1ずつ減らすSQLクエリを実行する カウントが0になったら、そのレコードをデータベースから削除する SQLを使ってカードを削除する まず、SQLでカウントを減らす方法を見てみよう。例えば、user_id = 1、card_id = 1のカードを2枚減らしたいとする。このユーザーはcard_id = 1の...
ガチャを引く
カードを一覧表示して、削除もできるようになった。次は、ガチャゲームを作ってカードを追加していこう。このゲームには、次の機能が必要になる。 プレイヤーがガチャを引ける回数には制限がある カードのレア度は、カードのランクと連動している(SSカードはCカードより出にくい) 具体的には、各レア度の確率は次の通りである。 Rank SS S A B C Rarity (%) 5% 10% 20% 30% 35% データベース まず、各プレイヤーが持つガチャの回数を保存するために、データベースに新しいテ...
SQL文の練習
テーブル作成 1. 学生のデータベースを作ろうとし、以下のデータを管理したい: 学生ID(数値) お名前(テキスト) 生年月日(日付) SQL文 CREATE TABLE students (id INT, name TEXT, birthday DATE); 2. プレーヤーのログイン情報を管理するテーブルを作成し、以下のデータを管理したい: プレーヤーID(数値) ユーザー名(テキスト - 255文字まで) パスワード(テキスト - 255文字まで) 最後のログイン(日時) SQL文 CREAT...
「PHP」と「C/C++/C#」の違い
インタープリタ言語とコンパイル言語 コンパイル言語 C、C++、C#は「コンパイル言語」と呼ばれる。まずテキストファイル(.c/.cpp/.cs)を作る。そのファイルを、実行できるファイル(Windowsなら.exe)に変換する。 このテキストファイルを実行ファイルに変換する作業を「ビルド」または「コンパイル」と呼ぶ。この過程で、文字で書かれた命令が、コンピュータが理解できる2進数(バイナリ)のコードに変換される。さらに、もっと速く動くように、コードが「最適化」されることも多い。 例えば、とても短いforループで...
JSONとPHP
JSONのファイル形式について JSONとは、テキストファイルの中にデータを保存し、整理するための方法である。ウェブアプリケーションでよく使われていて、クライアントとサーバーの間でデータをやりとりするときによく使われる。 JSONファイルの中では、辞書(連想配列)と添字付き配列を組み合わせてデータを保存する。JSONでは辞書のことを「オブジェクト」と呼ぶので、注意してほしい。 オブジェクト(Object) オブジェクトとは、キーと値のペアをコンマで区切って集めたもので、下のように中かっこ({ })の中に書く。 { ...
GETとPOSTのデータ送信
クライアントからサーバーへのデータ送信 ここまでは、サーバー上にコンテンツを置いて、それをウェブブラウザで取得する方法を見てきた。しかし、逆にウェブブラウザからサーバーへデータを送る必要がある場合もある。 ログインページを考えてみよう。ユーザー名とパスワードを入力すると、そのデータをサーバーに送信しなければならない。サーバーはデータベースを確認して、ユーザー名とパスワードが一致すればブラウザにログインを認識させる。 ウェブ開発では、クライアントからサーバーへデータを送る方法が2つある。GETとPOSTだ GET G...