スクラッチプログラミング - レースゲームのつくりかた
車のスピードをリアルにかんじられるカーレースゲームをつくってみましょう。変数(へんすう)をつかってプログラミングすることで、3Dのような遠近感(えんきんかん)を出す方法(ほうほう)をしょうかいします。
サンプルさくひんであそんでみよう
今回(こんかい)しょうかいするのは、画面(がめん)におくゆきをかんじられるレースゲームのつくりかたです。
スプライトのそうさほうほう
- パソコン:左右のやじるしキー
- タッチスクリーン:画面(がめん)をゆびでさわって左右にうごかす
みどりのはたをおして、スタートです。プロジェクトは、ScratchのPyxofyページでもごらんになれます。
このきじをよむとわかること
- 遠近感(えんきんかん)を出すほうほう
- 変数(へんすう)のつかいかた
えんきんかんを出すほうほう
まずは、スプライトとはいけいを用意(ようい)してください。はいけいでつかう道路(どうろ)は、三角形(さんかくけい)でえがくと、おくゆきをあらわすことができますよ。
車が画面(がめん)のおくへはしっていくようなプロジェクトをつくっていきましょう。3Dのような遠近感(えんきんかん)を出すためには、変数(へんすう) をつかって、スプライトの大きさやうごきのはやさをかえるところがポイントになります。
- 遠くにあるもの…小さく見える。ゆっくりうごく。
- 近くにあるもの…大きく見える。はやくうごく。
へんすうで大きさとはやさをかえる
今回(こんかい)のレースゲームでつかう変数(へんすう)は、つぎの3つです。
- 「x (エックス)」
- 「y (ワイ)」
- 「大きさ」
この3つは、これからプログラミングするスプライトでつかいまわします。複数(ふくすう)のスプライトやクローンで、おなじなまえの変数(へんすう)をつかうときは、「このスプライトのみ」をえらんで、変数(へんすう)をつくってくださいね。
じぶん以外(いがいの)「車」と「木」のスプライトそれぞれに、変数(へんすう)「x」「y」「大きさ」をつくっておきましょう。
木をプログラミングしよう
さいしょに、木のスプライトをプログラミングしていきます。道路(どうろ)のよこに木を表示(ひょうじ)してうごかすことで、車が画面(がめん)のおくへはしっていくようすをあらわしますよ。
さいしょは小さくひょうじする
とおくにあるものは、小さく見えますよね。なので、さいしょは木を小さく表示(ひょうじ)しましょう。
- さいしょの位置(いち)と大きさをきめる
ステージのはしまでうごかす
道路(どうろ)にそって、木をステージのはしまでうごかしていきます。
- ステージの右はしまでくりかえす
ちかづくにつれて、スピードをはやくする
木をうごかすときに、変数(へんすう)をつかってだんだんはやくうごくようにします。yざひょうをへらすことで、ちかづいてくるようすをあらわしましょう。
値(あたい)のかわる変数(へんすう)は、つかうまえに、さいしょのじょうたいにしておく、つまり初期化(しょきか)しておくことをわすれずに!
- 変数(へんすう)「y」を初期化(しょきか)する
- 「y」をすこしずつへらして、だんだんはやくうごかす
どうろにそって、ななめにうごかす
道路(どうろ)にそってうごかすためには、xざひょうもかえる必要(ひつよう)がありますね。変数(へんすう)をつかって、ななめにうごかしましょう。
- 変数(へんすう)「x」を初期化(しょきか)する
- 「x」をすこしずつふやして、右下へうごかす
ちかづくにつれて、だんだん大きくする
うごくのと同時(どうじ)に、木をすこしずつ大きくしていきますよ。
- 変数(へんすう)「大きさ」を初期化(しょきか)する
- 「大きさ」をすこしずつふやして、だんだん大きくする
クローンをつくって、たくさんひょうじする
木はたくさん表示(ひょうじ)したいので、 クローン をつくりましょう。
- 0.1びょうかんかくで、クローンをつくる
- ステージのはしまでうごかしたら、クローンを削除(さくじょ)する
道路(どうろ)のよこにたくさんの木が表示(ひょうじ)されて、うごきつづけるようになりました!
ふくせいして、どうろのはんたいがわにもひょうじする
ここまでプログラミングした木をコピーして、左がわにも木を表示(ひょうじ)しましょう。
コピーした木は左へうごかしたいので、xの値(あたい)をマイナスにかえることを、わすれずに!
大きさとスピードをかえながら木をうごかすことで、画面(がめん)におくゆきをかんじられるようになりました!
車をプログラミングしよう
つぎに、じぶん以外(いがいの)車をプログラミングします。画面(がめん)のおくから手前(てまえ)にうごいてくるようにしましょう。
大きさとはやさをかえながらうごかす
木とおなじように、さいしょは小さく表示(ひょうじ)して、大きさとはやさをかえながらステージの下までうごかします。車はたくさん表示(ひょうじ)しないので、クローンはつくりません。
変数(へんすう)の値(あたい)をきめるときは、ためしに車をうごかしてみましょう。ちょうど道路(どうろ)の上をはしるように、値(あたい)を調整(ちょうせい)してくださいね。
いつ出てくるかわからないようにする
さいしょは車をかくしておいて、どのタイミングで出てくるかわからないようにします。乱数(らんすう)びょうまってから表示(ひょうじ)することを、ずっとくりかえしましょう。
もう一つの車も、おなじようにうごかしてくださいね。
じぶんの車をプログラミングしよう
さいごに、じぶんの車をプログラミングしておわりです。ほかの車にぶつからないように、操作(そうさ)できるようにしましょう。
やじるしキーでそうさする
左右にうごかすために、やじるしキー をつかいます。
あたりはんてい
道路(どうろ)からはみ出して木にぶつかったら、はねかえるようにしましょう。木にふれたときのxざひょうをきめておくと、車がはねかえりますよ。
ほかの車にぶつかったらゲームオーバーです。すべてのプログラムをとめましょう。
プログラムかんせい
レースゲームのかんせいです!
Pyxofy (著)「きょうからはじめるスクラッチプログラミング入門」
Pyxofy が Scratch の電子書籍を出版しました!Kindle・Apple Books からご購入ください。
まとめ
ここまで、画面(がめん)におくゆきをかんじられるレースゲームのつくりかたをしょうかいしました。
遠近感(えんきんかん)を出すポイントは、ちかくにあるときと、とおくにあるときで、ものの大きさやうごくスピードをかえるところでしたね。
最後まで読んでいただき、ありがとうございます。この記事をシェアしてくれると嬉しいです!