2014年11月01日

ご無沙汰してます。

前回の更新から約1年になります。
まだ何とかHSPを続けてます。
HSPコンテストがあること。
それに皆勤で参加しつづけることが、作品づくりのモチベーションみたいになっていて、
ここ数年はそれが良いのかどうか悩むこともあります。

やはり所帯を持って、子供がいて、家族サービスも考えたりすると
自分の時間がどんどん削られる現実があり、
アイデアがあってもそれを形にするのにかかる時間を考えると、
埋もれていくアイデアばかりが増えていきます。・・・


晴れまぁグチグチ言っていても仕方がありません。晴れ

この1年に何があったか時系列を追っていくと。

昨年11月20日 Holdallの最後のアップデート。
今年の1月    PC復旧中にHoldall ver.1.58より新しいバージョンをロスト。
今年の3月    Holdall2の制作をスタート・・・その二日後に転勤の内示。
   4月〜8月 新しい職場で七転八倒。
   8月    コンテストに向けてパズルゲーム制作
  10月28日 作品提出完了。


んで、今に至ります。
新しい職場環境にも慣れてきたので、今後はHoldall2の開発に入っていきたいと考えています。
今後も変わらずマイペースでやっていきますので、たまに気にかけてもらえたら幸いです。
posted by Taddi at 00:11| Comment(1) | 覚書

2012年11月26日

クォータービュー

Taddiのこのサイト内で最もDL数が多いのは
クォータービューサンプルです。
しかし、このサンプルはTaddiがメモリーキューブを製作した際の
スクリプトをもとにしており、
Taddiの試行錯誤で「とりあえずクォータービューで動くぞ」
という状態のものを公開してきました。

公開から時間もたっており、
なおかつ今見ると汎用性は乏しく、実用に耐えない作りで
とてもサンプルという名前を付けておくのはおこがましい
出来映えでしたので、完全リメイクすることにしました。

サンプルは公開作品からダウンロードしてください。

サンプルの中身を簡単に説明すると
MapToQua_*
QuaToMAP_*という自作関数がポイントになります。

MapToQua_*関数は、
二次元のmap(x,y)を、クォータービューでチップを配置するための座標に変換します。
この関数で座標を求めることで、マップを描画できます。

注意しなければならない点は、
この変換は、座標を45度傾けるだけで、
描画順序までは変換されないということです。

Y座標は影響ないけれど、
X座標は逆順に描画しなければならないので、
描画処理のループ内で「xr=6-cnt」と逆さまになるように処理しています。

一方、QuaToMAP_*関数は、
クォータービュー上のある点をマップ座標に変換します。

マウスを動かすとその意味がわかると思います。
この関数は、マップ上のキャラクターの描画順序の決定に使用します。

注意しなければならない点は、
左上座標で判定するということです。
HSPではgcopyなどの標準描画命令は、左上が起点のため、このようになります。

今回はキャラクターの移動途中で、描画順序が変わるので
ppxに+24、ppyに+60することで、判定がずれないようにしています。

今回のサンプルは、改良次第で複数のキャラクターが歩き回るマップや、
高低差のあるマップを移動するなど応用できます。

ただし、いずれもかなりの部分で経験則に基づいて制作しているので
バグが存在する可能性もあります。

より、効率的で汎用性のあるスクリプトに改善できる
アイデアなどございましたら、ぜひコメントください。
posted by Taddi at 00:00| Comment(0) | 覚書