Unity:初心者がやりがちなミス

私が絶賛初心者なので重ねに重ねまくった初歩的なミスからまとめていきます。

初心者の華麗なるミス一覧

プログラム名が変わってない

スクリプトを組もうとしてフォルダの中にC#ファイルを作成した際、即座に名前を思った通りに変えなければ(何か他のタブで作業したりなどはご法度)その後自分で名前を変えたとしてもプログラム名自体が変わっていなくてテンパる

解決策:テキストエディタ側でプログラム名を変えるしかない。もしくは固い意志でスクリプトを作成した際には名前を即座に変更する癖をつけておく

スクリプトを組んだのに反映されない

スクリプト組んだよ!さあ反映して!!!再生ボタンポチッとな。
……あれ?あれれ?ボタンが反応しないんですがぁ…。

それ、エディタ側でちゃんと上書き保存しましたか?もしかして保存し忘れてないですか?
そうでなければ、ゲーム再生モードになってないですか?

ゲーム再生モードにしていたら、何を変更しようがすべてなかったことになりますからね!!血の涙を流しても遅いんですからねぇ…(経験者は語る)

解決策:スクリプト組んで様子を見たいなら上書き保存ctrl+Sを忘れない様に!
解決策:再生モードから元に戻るにはもう一度再生ボタンを押すとOK!

同じようにやってんのにお手本と違うんですけど!?

youtubeで勉強しながら必死に喰らいついて作業していて
画面の向こうの人「はい。これで画面がこのようになりましたね!」
私「…ん???なってないんですけど???

このような時、あなたが見ているのはもしかしてゲームビューじゃありませんか
そういうとき多分、画面の向こうの人が見ているのはシーンビューです。

そうでなければ逆パターンです。

解決策:「おかしいな?」と思ったら、その人が表示しているウインドウ名を一旦確認してみましょう。

ifで変数の中身を入れ替えているのに処理が上手く行かない!

変数の中身によって処理が変わるif文を書いている際、なぜかうまく動作しない…。
こんな時、同じ変数を宣言しまくっている!?可能性があります!↓は例題です。

string Hensuumei = "syokiti";

if  (Hensuumei == "syokiti"){
string Hensuumei = "syokiti2";
}

このif文の中の変数…また宣言してる!!この変数使います!!ってもう一回言ってる!!
はいこれで動作不良を起こします(経験者は語る)

正しくはこう

string Hensuumei = "syokiti";

if  (Hensuumei == "syokiti"){
Hensuumei = "syokiti2";
}

もう型とか宣言する必要ないんだよね…あとは入れるだけなんだから。でも初心者だから気が付かないんだ…。(´・ω・`)

コメント

タイトルとURLをコピーしました