小学校でプログラミング授業が始まりますね。だからというわけではありませんが、自然と楽しみながらコードが書けるようになる仕組みができたらいいな。。。と思っていました。
そんなモヤモヤのイメージに具体的な絵?を与えてくれたのがライブコーディングでした。
今年の正月に書いていますね。。。もう半年も経ってしまいました。。。
ライブコーディングを知らない方は、以下をご覧ください。田所先生の動画です。カッコいいですねぇ〜。
選択されたコードが「ピカ」と光るのが見えると思いますが、そのときに選択されたコードが演奏中の音列に同期的に追加されるんですね。。。この作業を繰り返しながら音楽を演奏していく感じになります。
これは音楽を演奏するための仕組みですが、このアイデアをシューティングゲームのプレイに応用できないかな。。。と思っています。
ちなみに、このアイデアは既にたくさんの方が試していて、私が知る有名どころではRobocodeがあります。
ロボットの動作をあらかじめコーディングしておいて戦わせるものです。
これらのゲームのプレイヤーは実行後は黙って戦況を眺めるだけでコードを追加することはありません。AIプログラミングの面では面白いのですが、僕のイメージしているライブコーディングとは違います。。。
試しにp5jsで30分くらいかけて作ってみました。
シューティングもできません。ゲームにもなっていません。ただ、コードを入れてキャラクターを動かすのはどんな感じになるのか確かめたかったんですね。
うーん。。。ちょっとイメージしたのとは違います。
最初、実行したときだけコードを実行してみたのですが、ライブコーディングっぽくない。。。
ライブコーディングでは、リズムに合わせてコーディングした音列が繰り返し演奏されます。
その動作を模倣しようとすると。。。このように連続した動きになってしまい。。。自機を微妙にコントロールすることができません。
入力するタイミングも重要となるところは、もしかするとゲーム性があるのかもしれませんが。。。
これも作ってみたのでわかったことなので。。。とりあえず次を考えます。
必要な人はいないでしょうけど、とりあえずコードを以下に置きました。
https://codepen.io/ke_takahashi/pen/RzPqKb
また、時間を見つけて続けます。