裏鍵.dump

自分用備忘録。内容に脈絡を求めてはいけない。

Unity5版のヒヨコ本を読む の続き

そこまで大きく躓くこともなく、Chapter7まで読み終わった。

いくつか消化できていないところがあるものの、C#で簡単なアプリを作成したくらいのスキルでもなんとかなったので改めて良い入門書だと思う。

引っかかった点を記録に残しておく。

 

シーンの移行

テキスト内ではゲームオーバーでリスタートボタンを押したときの挙動として、Application.LoadLevel()を使用するようになっているが、その通り記述すると下記のような警告が出た。

 

'Application.LoadLevel(string)' は旧形式です ('Use SceneManager.LoadScene')

 

何のこっちゃと調べてみると、LoadLevelはObsolete(古い使い方)なので今後はSceneManager.LoadSceneを使いなさい、ということだった。つい最近の変更らしい。

Unity - スクリプトリファレンス: Application.LoadLevel

ということで、下記のように修正した。

     Application.LoadLevel(sceneName);

     ↓

     SceneManager.LoadScene(sceneName);

ソースの冒頭に「using UnityEngine.SceneManagement;」を忘れず追記すること。

 

// 2016/4/29 追記

現在読み込んでいるシーンを再読み込みするとき、以前は下記のようにしていた。

     Application.LoadLevel(Application.loadedLevel);

これは現在読み込んでいるシーンのインデックスを使用している。

同じようなことを実装する場合、今後は下記のどちらかを使用する。

     SceneManager.LoadScene(SceneManager.GetActiveScene().buildIndex); // インデックスを使用する場合

     SceneManager.LoadScene(SceneManager.GetActiveScene().name);        // シーン名を使用する場合

 // 2016/4/29 追記ここまで

 

ライティングが無効になる

 リスタート等のLoadScene()を呼び出すと、ライティングが無効になってしまうバグ?があるらしく、自分の環境(Ver.5.3.4)でも発生していた。

リスタート前、こんな色合いの背景なのに

f:id:cores0316:20160404182510p:plain

リスタート後、ライトが有効になっていないのかこんな暗さに

f:id:cores0316:20160404182618p:plain

下記で詳しく解説されているが、理解の追いつかない点が多々・・・。

シーンの読込時に"ライティングが無効になる/色が変になる"不具合の対処法 - テラシュールブログ

とにかく、ライティングのベイクとやらが自動で行われるのが原因らしい。

メニューバーのWindow→Lightingを選択すると下記のようなウィンドウが出るので、Autoのチェックボックスを外してやるとうまくいった。

f:id:cores0316:20160404183702p:plain

 

Unity5版のヒヨコ本を読む

 以前からとても興味のあったUnityの勉強に取り組むべく、Unity5入門(ヒヨコ本)を読み進めている。

 

それと並行して、昔ちょっと触っただけでそのままになっていたUnity4の環境を綺麗に削除してUnity5の環境を構築した。というより勝手に構築してくれた。

Unity+VS2015の環境をこんなに簡単に準備してくれるなんて!

どんどん便利になっているのだなぁ・・・。

 

で、ヒヨコ本なのだけど、この本は大体の操作についてスクリーンショットと説明がついているので、とても丁寧で分かりやすい。

Chapter5まで特に詰まることも無くホイホイ進んでしまった。

あ、Chapter4のクエリちゃんを動かすサンプルでDLする「Shanty Town~」の建物素材が2016年3月現在、削除されてDLできないようなので、今後読む人がいたらその点だけは要注意か。

 

次以降、本の解説はJavaScriptだけど、一番使い慣れているC#で読み進めるつもりなので、どこかで躓くかもしれない。