2016年1月11日月曜日

謹賀新年(`・ω・´)ノ<コトヨロー

あけましておめでとうございます。
今年もよろしくお願いします。
年末年始で 2kg も太ってしまった SakuraCrowd です。(  ´・ω・`  )

ブログ1ヶ月くらいさぼってましたԅ( ˘ω˘ ԅ)<スマヌ
さぼってたというか、前回のブログに続くネタがなかったんです。
なんか、前回が華々し過ぎてつい無駄にプレッシャーをかけていたみたいです。

そもそもブログなんだから、
年齢をとってきてようやくお雑煮のうまさに気づくとか
もらい物のハムは絶対に加熱したほうがおいしいとか
そういうどうでもいいことでもいいと思うんですよね。

そんなこんなで、全世界推定10名くらいの何もかも不明な貴重なファンの皆様のためにお年玉を用意してみました。

お年玉1
あの「ドローン1111」が待望のブラウザゲーム化


ドローン1111は11月11日のポッキー&プリッツの日にちなんで思いついたミニゲームです。
今まではふりーむ!様のサイトからのダウンロード版だけでしたが、
今回、技術の粋を結集させて、モゲラ様のサイトから遊べるように
ブラウザ版をリリースしました。


モゲラさんのサイトにいって
ドローン1111のページにアクセスするだけでゲームができます。
これで、2016年もいろいろと捗りますね!(`・ω・´)


お年玉2
HSP3Dish 向け仮想スライドパッドを作ってみた


スマホ向けのゲームでよく見られる、押したままずらすと
ずらした方向に十字キーのように入力できるインターフェースです。

ブラウザで試したい方は、こちらのScVIrtualSlidePad ブラウザ版を使ってください。

少し長いので、ソースコードは別のページに分けておきました。
SakuraCrowd's BlogSpot: ScVirtualSlidePad.hsp (20160111)

基本的な使い方はソースコードの上のほうにある用例のとおりです。
関数名は少し長いですが、 ScVirtualSlidePad がプレフィックスになって、そのあと Update や Draw, Stick がつく形式です。

最初に、円の移動範囲、遊びの閾値、表示方法を設定します。
その後、メインループなどでマウス情報の更新、スライドパッドの描画、入力値の取得を行います。

円の移動範囲

スライドパッドの円の動く範囲を決めます。
上の動画でいうピンク色の小さな円の移動範囲です。

遊びの閾値

「遊び」と呼ばれる反応しない閾値も決められます。
たった1ドットずれただけで反応すると、誤差で意図しない方向を入力します。
それを防止するため、最初にマウス左ボタンを押した座標からどのくらい離れたら入力とみなすかを指定します。

表示方法

表示するスライドパッドの表示方法は、

  • ユーザの用意した画像を使う方法
  • 円をグラフィックで描画する方法

があります。
上の動画では半透明の画像を使っています。
今回使ったのは、以下の1枚の png 画像です。
読み込んだ画像のバッファIDと使う範囲を矩形で指定します。
SetImageBase で緑色の台座の部分、 SetImagePad でピンク色のパッドの部分を設定します。

円をグラフィックで描画する場合は、色や大きさを指定することができます。
SetCircleBase で台座の部分、SetCirclePad でパッドの部分を設定します。

ループ(マウス情報更新、描画、入力値取得)

設定し終えたら、あとは Update 関数を呼び出して、マウスの状態を更新します。
Draw 関数を呼び出すことで、スライドパッドを状態に応じて描画します。
入力がほしいときは Get や Stick 関数を使います。
Stick 関数は上下左右の方向を HSP 標準の Stick 関数と同じ下位0~3ビットの形式で取得できます。
Get関数は、ずらした量をX軸とY軸ごとに取得できます。

既知の問題

  • ブラウザで行うと、ウィンドウの外にマウスが移動するとマウス左ボタンを押している状態でも離れた状態として処理されます。


ライセンス

このソースコードは利用者自身の責任において、自由に使ってもらってかまいません。
SakuraCrowd という名前を作品紹介の素材元にでもいれてもらえればうれしいですが、
特に表記しなくても問題はありません。
ただし、このソースコードを使って生じたいかなる問題や損失にも筆者 SakuraCrowd は責任を負いません。

近況と抱負

12月は、HSPコンテストで入賞して喜んだ後、ニコニコ動画のインディゲームフェスの申し込み期限が1月3日までだったので、何とかそれまでにもう1作品エントリーしたいと頑張っていましたが、なかなかうまく進みませんでした。
システムもそうですが、画力がないので絵を練習したりしてさらに時間が減ってしまいました。
しかも経験値のためかたが下手なのかぜんぜんレベルアップしてません。
結局今回は、すでに出している2作品にとどめようと思います。

そんな風に思っていたら期限が1月末まで延長されて、年末からまたいろいろと妄想が膨らんできたのですが、現状を見るとちょっと厳しそうです。

今回はすでに「胡桃坂ハロウィンパーティ」と「ドローン1111」をエントリーしているので、今作っている作品は次の機会に向けていつもより時間をかけてみたいと思います。

ただ、時間をかけすぎると収拾がつかなくなってモチベーションが0になってフェードアウトというパターンを幾度もやってきたので、次のニコニコ動画のインディゲームフェス(おそらくGWあたり?)を期限にして頑張りたいと思います。

抱負はあまり書きすぎると後でつらくなりそうなんですが、絵をもっとうまく書けるようになりたい、3Dも勉強したい、ゲーム以外のツールなども作りたい。そんなことを思っています。
今年も一年、豆腐メンタルなりに頑張りますのでよろしくお願いします。

♪ HAPPY (,,・ω・,,) NEW YEAR

#A Happy New Year って書こうとしたけど、この場合は A をつけないのが正しいらしいよ!