基礎となるゲームサンプルの共有と動作確認

9d2c38e6fe48e61528f6b2d34370768f

この章で学ぶこと

基礎となるゲームサンプルの共有と動作確認を行います。

Unity プロジェクトをダウンロード

d2e14eaab7e66332b09a2086fa5b767e

今回の教材の Unity プロジェクトを https://github.com/1ft-seabass/vantan-unity-network-project-01 にブラウザからアクセスします。

c21bb001f1a904122fa2bd6065f2e437

Code ボタンをクリックして Local タブから Download ZIP をクリックしてダウンロードします。

acd4f7e6c79f434770632f77b16f34b3

ダウンロードできたら ZIP ファイルを、ダブルクリックして ZIP の中身をエクスプローラで表示します。

9fd6e42489c174d3aa6b44eb4c196bb8

ZIP ファイル直下に vantan-unity-network-project-01-main というフォルダがあります。

8bb21ae532d5de43c4dc20cdeb932efc

このフォルダを選択して、作業フォルダにドラッグアンドドロップしましょう。

40f366c8c40c7154f475820f5da0d16f

フォルダの中身はには、このように Unity プロジェクトそのものがあり Assets や Packages などのファイルがある状況です。

Unity プロジェクトを Unity Hub から開く

204afd35cc70224251ca41321b6c1e31

Unity Hub を開きます。

38284ca9eeeb4b4b85b1d4717acc716f

Open ボタンをクリックします。

1e463774b96f38951a39ac5ba5135d2f

フォルダ選択で vantan-unity-network-project-01-main フォルダを選択して Open ボタンをクリックします。

6085e7572e7f03a32f88c6e49c8792b0

プロジェクトが読み込まれます。

2b745e107ff5991957e1a4ad5d86fff4

プロジェクトが表示されました。現時点で、授業用のシーンではなく Untitled になっているのは問題ないです。

930d6df890c0e10f92ad28c4fc3e4987

コンソールでこのようなエラーが出るのも問題ないです。

シーンを開く

6049726527f3133083e8ca07d1e6261c

Project タブから Assets > Scenes を選択します。Scene-Term1-1-Chapter03 をダブルクリックして起動しましょう。

d9b23dbbd1c785f79b1fb51278755eba

Cube が一つ配置されているシーンが表示されます。

動作確認をする

2fbea7338e0832c54e0b977c39f5dedd

Play ボタンをクリックします。

6044c7e49cf4a9d7af2d62b94476d854

Cube をマウスでクリックしてみましょう。

cfe7587c4bb92695695695e3a2f291d4

Console でこのようなログが出てくれば成功です!

まずはマウスクリックが動きました。

シーンの仕組みの解説

ae6172228f962578c4c19763b03360d2

(時間があれば)シーンの仕組みを解説します。

✅ポイント

  • Cube には Term1_1_Chapter03_CubeEvent というスクリプトが関連づけられシンプルなクリックイベントが書かれています
  • イベントまわりは Main Camera の Pyshics Raycaster と EventSystem の設置で対応しています

Codespace の再起動

こちらを参考に再起動します。

GitHub にログインした状態で https://github.com/codespaces にアクセスします。

34de49185c6b28fb938519084d5b36fe

Codespaces のページです。

6be56b218c122cfa36b4518208104104

さきほど使っていた Codespace をクリックして起動します。

サーバーの起動

node term1-1.js

ターミナルで以下のコマンドを入力して Enter キーを押して実行します。

term1-1.js start!
app listening at http://localhost:8080

というメッセージが次の行に出てくれば起動成功です。これで無事サーバーが起動できました。

自分の GitHub アカウントのみで見えることを確認

ad43d16f32933e425e9818fafd1ee031

現在この Codespace でサーバー起動している状況はポートタブから確認できます。ターミナルタブのポートをクリックしてポートタブを表示します。

778742311f48908e061f24f882e23662

このように 8080 ポートで起動していることがわかり、表示範囲がまだ Private になっていることを確認します。

566b8166352dd42c1a33b18552afd2a1

こちらの地球儀マークをクリックすると、現在のブラウザで新しいタブが開いてサーバーが確認できます。

75ef12af4b9fa57857d6a5cc1e04e6bb

Index というページが表示されます。

これは term1-1.js の

// public フォルダ内にあるファイルはパスが一致していると呼びだせます
// /index.html や / の場合は public フォルダ内の index.html が表示されます
app.use(express.static(__dirname + '/public'));

の、仕組みで public フォルダ内の index.html が表示されています。

この Private 状態でも見える理由は、いまのブラウザで GitHub アカウントにログインしているので自分の GitHub アカウントのみで見える状況です。

cec370c19d64e05d74af2bd84cab7aa1

今のままだと、Unity からはアクセスできません。

シークレットウィンドウで自分の GitHub アカウント以外で見れないことを把握

364a7b4d7e0db1811b34739e6ecc50d4

手軽にアカウントをログインしていない状態で見るなら Chrome のシークレットウィンドウ機能は便利です。

右上のメニューから新しいシークレットウィンドウをクリックしてシークレットウィンドウを起動します。

fb0b95a3e4ae0ba4e207e5c6813b9772

新しいシークレットウィンドウが表示されました。

461a20fc2eaba496f38d84869a218755

今回のサーバーの行のクリップボードマークをクリックして今回の URL をコピーしましょう。

今回のシークレットウィンドウのアドレスバーに URL をコピーしてペーストしてアクセスしてみましょう。

3a24e8de9f75efbab253cc776f46d4da

このように GitHub のログインページになりアクセスできないことが分かります。なお、別の GitHub アカウントでログインして、今回の URL を見ようとしても 404 エラーになり、外部や別ユーザーから見れないことが分かります。

なお、このシークレットウィンドウは、このあとの公開後に公開チェックをするので、閉じずにそのままにしておいてください。

サーバーの使っているポートを公開する

778742311f48908e061f24f882e23662

ポートタブに戻ります。

d531dea56766a4a10b71457abf505531

今回のサーバーが動いている 8080 の行を右クリックして、ポートの表示範囲 > Private となっているところを Public に変更します。

01482cb73eb19684ff0e0e564ccee505

公開範囲が Private から Public になります。これで公開は完了です。

461a20fc2eaba496f38d84869a218755

今回のサーバーの行のクリップボードマークをクリックして今回の URL をコピーしましょう。

今回のシークレットウィンドウのアドレスバーに URL をコピーしてペーストしてアクセスしてみましょう。公開ができていて Index が表示されるか確認しましょう。

864f04a4ab4903aa57d39a7f41dc8b8b

これで Unity ともやり取りできるようになります。

今回の Codespace の終了

0a8b4cfb807e57ea1382292a757c6899

今回の Codespace 終了しておきましょう。

Unity は起動しっぱなしで OK です。

Unity プロジェクトは更新するかもしれません

ae6172228f962578c4c19763b03360d2

Unity プロジェクトは、1 日 1 日の授業で更新することがあります。そのときは、再ダウンロードすることになりますが、授業で学んだ内容は、基本的にこのドキュメントから追えるので、過去のものはなぞっていけば再現で来るのでご安心ください。

(ただ、自分で更新して試したソースがあったら、そこだけ退避させておくのが良いでしょう。)

results matching ""

    No results matching ""