素人プログラマーの日常

効率の良いコード、美しいコードなんて書けません。

javascript はゲームと相性が悪い

javascript も多少慣れてきました。


でもやっぱり動きのあるものや場面が多いものは非常に作りにくい。ウェイト関連の使いやすい関数が無いのと、マウスやキーボードからの入力が一か所に集中してしまってそこから各場面に振り分けないとならないのはゲーム制作にとっては致命的ともいえます。それに加えてスマホからの入力もPCとは違う挙動を示すので操作にかなりの制限があります。スマホで操作できるようにするにはタップのみを想定するのが良さそうですが、それだとどうしてもゲーム性の幅が狭くなってしまうんですよね。

 

例えばこれ http://gensproducts.com/products/js/018_delinger/main.html

f:id:dgen:20181007162929p:plain

平行法という立体視を利用して奥行きがあるように見えるゲームを作りましたがスマホだとまともにプレイできません。自機がマウスカーソルを追うように動くのですが、スマホだとカーソルが無く画面をなぞるとページ全体がスクロールしてしまいます。完成してからそこに気付いて多少はあれやこれやと試してみましたが、どうもうまくいかず早々に諦めました。(※上の画像は平行法で左右が重なるように見てください。これがぬるぬる動くとそこそこ迫力あります。今PCをお使いでしたら是非プレイしてみてください)

 

次にこれ http://gensproducts.com/products/c/001_truecircle/main.html

f:id:dgen:20181007163616p:plain

以前作った真円プロジェクトのweb版として作り始めたのですが、ペンタブの操作もスマホ同様にスクロールになってしまいます。なのでペンタブで動作確認ができるくらいまで作ってから頓挫状態となり、途中から急遽C++に移植しました。ちなみ旧真円プロジェクトではペンタブでの動作確認はとれていませんでしたが、その後ペンタブは購入し今回の新真円プロジェクトではしっかり動作確認しています。

 

それとスマホの操作を考慮してタップするだけの単純なゲームを作ろうとしたのがこれ
http://gensproducts.com/products/js/019_wall/main.html

f:id:dgen:20181007163043p:plain

壁を叩いて(タップして)壊すだけのシンプルな内容なんですが、スマホだと連打ができない!1回ずつ落ち着いてぽちぽちやるんじゃこのゲームの楽しさは伝わらないんですよね(いや、連打できたところで楽しくないとは自分でもわかってるけど…)。

 

ということで javascript ってスマホと相性悪い、というかゲームと相性悪いということにつくづく気付かされたわけです。でも何とかしてスマホでもプレイ可能なそれなりのゲームも作りたいと一念発起した作品がこちら
http://gensproducts.com/products/js/021_tenshin/main.html

f:id:dgen:20181007163101p:plain

これはちょっと今までと方向性を少し変え、自分で全部作らずに画像とBGM素材をお借りしています。これまで自分ですべて手掛けることに多少のプライドを持っていましたが、画像や音声は頑張ってもショボいものしかできないんですよね。いくつも作っている内に上達はしていくだろうけど、一定の評価を得られるようになるにはかなり時間のかかる道のりでもあります。そこで今回はそんなプライドに拘るよりもとにかくパッと見で、あるいはちょっと触れた感じで惹き付けられるようにクオリティの高い素材をお借りしたわけです。

 

あとはその素材を活かすも殺すも私次第ということになります。そういうところはプライドを捨てずに拘っていくべきだと思ってます。麻雀牌意外の画像は自分で用意しましたがどうにか高級感を醸し出すことに成功しました。それとアニメーションが面倒臭い javascript でのちょっとしたエフェクト(麻雀牌の動き)とか見てもらえると嬉しい限りです。

 

今後なんですけど、あまり javascript に本腰を入れて創作していこうとは考えていません。とはいえ、カジュアルゲーム的なものはちょくちょく作っていく可能性はあります。制限のある中で作っていくのも楽しいかもしれませんが、どちらかというとそんな枠なんて取っ払って自由にやりたい人です。もっと簡単で自由に作れてプラットフォームを選ばない言語ってないですかね~。自分で作るかな?今の私には無理だから勉強しなきゃだな(笑

 

 

 

ついでに、前回の記事の後に作ったものを紹介しておきます。

 

どんな発想でこんなのができたのか作った本人もわからない。「斉藤選手権」
http://gensproducts.com/products/js/014_saitou/main.html

f:id:dgen:20181007163133p:plain

 

自分が持っている好きな画像を使ってパズルができる。
これのために美しい景色の画像を数多く拾ってきました。
http://gensproducts.com/products/js/015_puz/main.html

f:id:dgen:20181007163153p:plain