レス数が1スレッドの最大レス数(1000件)を超えています。残念ながら投稿することができません。
おちゃめくらぶ掲示板
-
プチコンでタッチパネルを使ったゲームを作ろう
プチコンでゲームを作ってみてやはりいいところはBASICの割りに速いというだけではなく
ゲーム用のユーザーインターフェイスに優れているということにょ。
これはDSがゲーム機なのだから当然だけど作ったゲームが十字キーやAボタン、Bボタンと
いったハードウェアによる操作が可能であることが大きいにょ。(昔、P/ECE用のアプリを
作ろうとしていたけど後述のようにスタンドアローンで開発できないためすぐにやめて
しまった。場所も確保してたのに http://ww5.tiki.ne.jp/~ochame/P/ECE.htm )
これによって特にアクション系のゲームは快適な操作が可能になるにょ。
しかし、せっかくDSで作るのならばタッチパネルを使ったゲームも作ってみたいと思う
人もいることだと思うにょ。
タッチパネルだとハードウェアボタンの制約がない自由な操作のゲーム、直感的操作が
できるゲームを作ることも可能になってくるにょ。
プチコンでもタッチパネルを操作するための専用命令が備わっているにょ。
下記の3つを覚えておけば問題ないにょ。
TCHX タッチされたX座標
YCHY タッチされたY座標
TCHST タッチ状態を調べる(TCHST=1ならばタッチ状態にある)
《サンプルプログラム》
VISIBLE ,1,,,,1
PNLTYPE "OFF"
GPAGE 1
@LOOP
GCLS
X=RND(256)
Y=RND(192)
GCIRCLE X,Y,10
VSYNC 20
A=TCHX-X
B=TXHY-Y
IF A*A+B*B>100THEN @LOOP
BEEP
END
これは下画面にランダムに表示される○をうまくタッチできたら終了という単純なものにょ。
ここで注意しなくてはならないのがVISIBLE、PNLTYPE、GPAGEの3つにょ。
VISIBLEは2番目のパラメータ(下画面表示)、6番目のパラメータ(グラフィック画面表示)
ともに「1」に設定しなくてはならないにょ。
とはいえ、これはデフォで1になっているので他のゲームを実行して0になって無ければ
問題はないにょ。
GPAGEは下画面を示すGPAGE 1にしなくてはならないにょ。
そして最も重要なのはソフトウェアキーボードを使わない設定(PNLTYPE "OFF")にする
必要があるにょ。
これが完了して初めて下画面が表示に使えるようになるにょ。
あとは、下画面をタッチするごとになるシステム音が気になるならばSYSBEEP=0を設定
しておくといいにょ。(元に戻すにはSYSBEEP=1とする)
それとこのプログラムに限ったことではないけどスタートするとき(RUNするとき)は
[START]ボタン、停止する時は[SELECT]ボタンで出来るにょ。
タッチパネルを使用する場合ソフトウェアキーの[停止]ボタンは使えないためにこれは
覚えておかなくてはならないにょ。(まぁ知っている人が大半だろうけど)
さて、これでタッチパネルをフルに使ったゲームが作れると思いきや実はそんなに甘くは
無かったりするにょ。
プチコンでは下画面では表示にかなりの制約があるからね。
コンソール・・・PRINTとは別命令となるPNLSTR命令で可能
BG画面・・・・・使用不可
スプライト・・・下画面専用のプリセットのもののみ使用可能
グラフィック・・すべて使用可能
こうしてみると、グラフィック(GLINEやGFILLなど)は全く制限なく使えるものの
BG画面表示ができないためスクロールタイプのゲームを作ることは困難にょ。
そして、スプライトもあらかじめ下画面用にプリセットされたものだけだから自作キャラを
どうしても表示したいのならばPCGを使ってコンソールで行う必要があるにょ。
下画面は補助用に使うならば問題ないけど、これをメイン画面にするならば作れるゲームに
かなり制限がありそうにょ。
というわけで、タッチパネルを使ったゲームを作ってみようと思ったものの1画面で
出来そうなものは浮かばなかったためポケコン用に作った2LINEピョンコを移植してみる
ことにしたにょ。
この2LINEピョンコは穴を飛び越えながら右端まで行けばクリアという某雑誌で出された
アイデアを元に作られたゲームであり、私が作った2LINE版はアナログ的なキー入力に
よって操作するものになっているにょ。
これならば操作部分だけをタッチパネルに置き換えれば全く問題なく実現可能にょ。
というわけでできたのがこちらにょ。
http://www.youtube.com/watch?v=MMmXf5JYsgM
http://ww5.tiki.ne.jp/~ochame/petitcom/1page.htm#pyonko
何とか強引に1画面に収めることに成功したにょ(笑)
こする速度の測定方法はポケコン版のピョンコと同じく移動距離÷時間で単純計算を
行っているにょ。
下画面をタッチした時の座標と離した時の座標を元に計算しているため途中で曲線になって
いようが始点と終点の差分しか見てないにょ。
ポケコンの場合はX軸方向の速度しか計算できなかったのだけどこのプチコン版ではY軸
方向の速度も計算しているためジャンプする角度も自由に調整可能となっているにょ。
X軸方向の当たり判定はシビアだけどY軸方向は甘めになっているので小さな隙間を
小ジャンプ連発で乗り越えるということも可能となっており、慣れればなかなか楽しい
操作になっているにょ。
というわけでは元々の独特の操作方法だったためタッチパネルとの相性は抜群にょ。
まぁタッチパネルをフルに使ったゲームというわけではないけどね。
確かに表示制約があるとはいえ、パズルゲームやテーブルゲームはタッチパネルとの相性は
いいのでそういうのが作りたい人はいいかもしれないにょ。
もっとも、タッチパネルをふんだんに使ったゲームであればそれこそDSである必要性はなく
より多くの人がプレイ可能であると思われるiOS用やAndroid用の方がいいと思うにょ。
それでも、すでに本体を持っている人ならば金銭的負担はわずが800円だし、ハードルの
低いBASICだし、スタンドアローンで開発可能ということでプチコンのアドバンテージは
十分にありそうにょ。
不特定多数にプレイしてもらうならばプログラムリストの形で公開することになるため
余り大きなサイズのものは作ることはできないけどね。
|
|
|
掲示板管理者へ連絡
無料レンタル掲示板