連休ということで
さて、休日と言えばもちろんゲームです。
あつ森とリングフィットアドベンチャーで忙しい今日この頃ですけど、ニンテンドーラボでだって遊びたいんです。
というわけで、今回はニンテンドーラボで「砂時計」を作ってみることにしました。
なぜ砂時計か
なぜ、砂時計を作ろうと思ったかというと、Nintendo Switch本体やJoy-Conに入っているいろんなセンサーを使えるのが面白いので、そういったセンサーを使いたいなと思ったのがまず一つです。
また、先日バトルドームのゲームを作ったときにボール(球)がたくさん出るゲーム(Toy-Con?)もまた結構楽しいなと思いました。
というわけで、本体のセンサー使いつつ球がいっぱい出るものを作ろうと考えてみたところ、球を砂にみたてて砂時計を作れるかな?と思ったのでした。
できました
で、いろいろあってできました。
ただの砂時計でも割と個人的にはずっと見ていられるほうなのですけど、ゲーム要素も入れてみようかなと思いまして、できあがったゲームの説明の動画が以下です。
面白いかどうかは別として、ステイホームな連休ということで長時間遊べる(遊ばなければいけない)ルールにしました。
かなり不毛な感じのいいゲームができたと思います。
私はやりません。
なお、Switch本体の画面がピカピカでいろいろと反射してしまうので部屋を真っ暗にして撮影したのですが、こうすると画面だけぼんやり浮かんでいるような映像になるのですね。
これはこれで何か使えそうです。
砂時計の仕組みについて
今回、紆余曲折ありましたが、どうにか砂時計の動きを作ることができたので楽しかったです。
悩んだポイントは、本体の向きをどうやって画面の砂時計に反映させるかというところです。
本体の向き自体は、ニンテンドーラボのToy-ConガレージVR内に初めからあるセンサーのノードを1個置くだけで簡単に取得できます。
問題になったのが砂時計をひっくり返したときに、どうやって重力の向きを変えるかということでした。
重力の設定としては、通常時より重くしたり逆に無重力にしたりできるのですが、さすがに天地さかさまにするといった設定はなさそうです。
じゃあ、画面内の砂時計をくるっと回せばよいのでは?と思ったのですが、今回はSwitch本体を回す、なんというかインタラクティブな感じの操作にしたかったので、本体を回して画面内の砂時計も回すとわけわかんなくなっちゃうのです。
(画面を固定したままTVモードで砂時計を作るならこれでOK)
というわけで、今回はちょっとの角度だけ動くシーソーみたいな台の上に砂時計の枠を作って、それを上空から真下に向いたカメラで見るということにしてみました。
つまり、重力は画面の奥の方に働いているような感じです。
後は「ヒンジ」のノードで、Switch本体の傾きをシーソーに反映しました。
また、シーソーが動いたときに球がビヨーンと跳ねるのを避けるために、上に透明な直方体でフタしています。
あとは「モノを発射」ノードで、ゲームスタート時に球を100個流し込んで出来上がりです。
これでSwitchを立てて見てみたら、思ったよりも砂時計感が出ていたので満足しました。
なお、はじめにとりあえず作ってみたところ、球をいっぱい出したところでシーソーがとんでもなくブルブルガタガタ振動し始めて球をまき散らし始めました。
これはあちこちで球と球、そして球とシーソーとがぶつかることで、その跳ね返りがなんか共鳴したような感じになってしまったということっぽいです。
対策としてとりあえずシーソーの厚みを大きくしてみたら安定しました。
なお、完成版でもまだ名残があって、砂時計の底に落ちた球が少しばかりブルブルしています。
まとめ
というわけで、やっぱりニンテンドーラボVRなどやっていると楽しいですね。
作成したゲームのデータがインターネットとかで共有できると、他の方のがいろいろ遊べてかなり面白いと思うのですが、今後に期待しています。
おわり。
コメント