今回はNintendo Switchから大好評発売中の「ナビつき!つくってわかる はじめてゲームプログラミング(以下はじプロと略します)」から、「Bダッシュ」の作り方を公開していきます。
このゲームをやる上で、答えをただ示すことは実は面白さは半減してしまうと思います。
私と子どもとの”試行錯誤”の生の過程(間違いも含めて)を示していくことで、はじめてゲームプログラミングの「ノードン」たちのことを、もっともっと深く理解することが出来ると思います。
ちなみに、何が起きているかを理解しやすくするために、動画ではヒトノードンに最終的に入力されている数値をカウンターノードンで「見える化」しています。
では始めて行きましょう!
今までの投稿はこちらへ
-
パパと子どもの「はじめてゲームプログラミング」のまとめ
2021年6月11日にNintendo Switchで発売された「ナビつき!つくってわかる はじめてゲームプログラミング(以下、はじプロと略します)」の話をしようと思います。 ナビつき! つくってわか ...
続きを見る
目次
はじめに「Bダッシュ」とは?
Bダッシュとは、マリオブラザーズの時代からあるゲームのテクニックですね。このページを読んでくれるような方には説明はいらないような気がしますが…念のため。
Bダッシュ(ビーダッシュ)は、コンピュータゲームのコントローラの特定のボタンを押しながら移動することで、通常よりも速い「ダッシュ」状態で移動できること、およびその操作を表す。
wikipediaより
ただスピーディに動けるだけではなくて、Bダッシュ中にジャンプすることでジャンプの最高到達点が高くなったり、Bダッシュ中にジャンプする事でジャンプの飛距離が延びたりするため、Bダッシュによりゲームのアクション性がよりアップします。
※ただしBダッシュ中のジャンプの高さを上げるのは、はじプロでは別でプログラミングする必要があります( ノД`)シクシク…
「Bダッシュ」ボタンをLスティックにつなげるだけではダメな理由
解説:
はじプロの世界では、右側がX軸のプラス方向、左側がX軸のマイナス方向になっています。
ヒトノードンの左右ににLスティックをつないでいた場合、
Lスティックを右に倒すと「+1」という入力がされ、ヒトは右に1のパワーで走ります。
逆にLスティックを左に倒すと「-1」と入力がされ、ヒトは左に1のパワーで走ります。
何も入力されていない=言い換えれば0が入力されているとき、ヒトノードンは動きません。
どうすれば「Bダッシュ」を作ることができるか、改めて考えてみよう
Bボタンを押してLスティックを右に倒した時は2がでて
Bボタンを押してLスティックを左に倒した時には-2が出るようにしたい。
さらにいえば、Bボタンを押してヒトノードンが動いてしまったら困るわけだから、
Bボタンを押した時は0になっていないといけないわけだ
かけ算だけでも、まだ「Bダッシュ」はできない そのカギは「マッピングノードン」
Bボタンを押しているときは常にBボタンから1が出ていて、それをLスティックから出てくる数字にかけ算してるから、結局入力は変わらないってことだよね。つまりBボタンを押してるときは、ただ普通にLスティックだけ動かしている動きになってるわけだ
そしてBダッシュの完成へ!
解説:
Lスティックから出てくる数字は-1~+1です。
Bボタンから出てくる数字は普通は0 か +1のところを、マッピングノードンで変換して+1 か +2が出るように調整しています。
+1はBボタンを押していない時、+2はBボタンを押している時なので、
Lスティックの入力×Bボタンの入力をすると、
Bボタンを押していない時は、Lスティックからは-1~+1の入力が、Bボタンを押しているときは、Lスティックからは-2~+2の入力がでることになります。これで「Bダッシュ」が完成したことになります。
まとめ
最後に、思考の過程を整理してみようと思います。
・そもそもLスティックを動かすことは、はじめてゲームプログラミングの世界ではどういう数字で表現されているのか
・Bダッシュを作るというのはプログラミングの上では、Lスティックから出てくる数字をどう変化させればいいのか
・そのためには、Bボタンから出てくる数字をマッピングノードンで”へんかん”して、Lスティックから出てくる数字と”かけ算”してあげることが必要
というようなことを考えながら、試行錯誤してようやく正しいBダッシュを作ることが出来ました。
はじプロは、子どもと楽しみながらゲームを作ることができるだけではなく、ゲーム作りを通じて論理的な考え方・問題解決能力を育てることができそうですね!
以上となります。