見出し画像

ゲーム開発#2

学習の進捗

前回の投稿のとおり、以下の書籍で学習を進めています。
たのしい2Dゲームの作り方 第2版 Unityではじめるゲーム開発入門(STUDIO SHIN)|翔泳社の本 (shoeisha.co.jp)
進捗としては5割くらいはきたかな?というところです。

進めてて思ったのですが、ゲーム作るのってめちゃくちゃ楽しいですね!
そしてめちゃくちゃ大変だーという感想です。
そのうちに楽しさよりも苦労が上回ってくる日が来ないといいですが・・・

詰まったポイント

カラーアイコン?の表示

書籍内で空のオブジェクトは「カラーアイコンをつけよう!」と記載があります。Inspector の名前の左にあるアイコンのことです。

赤のアイコンを選んでいる状態

これで空のオブジェクトもカラーアイコンで設定した色と名前が Scene ビューに表示されるとありますが、これが表示されずに詰まってしまいました。

赤い Gate という文字が表示されなかった


マニュアルを読んでもネットで検索しても解決方法がうまく見つからず、いろいろ試していたところ、Scene の右側にある球体?のアイコンがOFFになっていることが原因でした。

デフォルトがOFFということはないと思いますので、誤ってクリックしてOFFにしてしまっていたのかもしれないです。

カメラで表示される範囲がわからない

Scene ビューにカメラで表示される範囲が分からず、ゲームを実行させながら範囲を調整するという手間のかかる作業をしていました。
こちらは一つ前の問題と原因は同じでした。

Lagacy UI

UI を作成するセクションで「Button」や「Text」を作成しようとしましたが、「Button - TextMeshPro」や「Text - TextMeshPro」しか見当たらず、TextMeshPro が付いているを使えばいいのか少し悩みました。

調べたところ TextMeshPro が付いているほうが新しいUIで、基本的にはこちらを使ったほうがよさそうだと思ったので、参考書内の「Button」や「Text」は TextMeshPro 付きに置き換えて進めました。

ちなみに古いほうは「Legacy」というメニューにまとめられていました。

スクリプト上では GetComponent する際に少しはまりポイントがあり、Text を扱う場合に TextMeshPro に変えればよいと思っていたのが、TextMeshProUGUI を利用するのが正しいようです。

// 参考書内の記述
timeText.GetComponent<Text>().text = time.ToString();
// TextMeshPro を利用した場合の記述
timeText.GetComponent<TextMeshProUGUI>().text = time.ToString();

GameManager の歯車アイコン

「GameManager」という名称の「C# Script」を作成すると、通常のスクリプトのアイコンではなく歯車のアイコンになると記載がありますが、アイコンは変わりませんでした。
少し調べてみましたがよくわからず、おそらく Unity のバージョンの違いによるものだと思います。
動作上は特に問題ないので気にせず進めることにしました。

いいなと思ったら応援しよう!