solve_picx.jpg


ピクセルクロスパズル

 縦/横にその列/行内のピクセル数が表示された表から、枠内に隠されたドット絵を解いていく、お馴染みのパズルが有ります(先頭に表示した図)。

 暇つぶしには「もってこい」、なのですが、ドット絵のサイズが大きすぎると、時間がかかりすぎるし、小さすぎると「暇つぶし」にすら、ならないほど短時間で解けてしまって、がっかりです。10分前後でサクッと解くことのできる、15×15ドットサイズ程のデータがお勧めです(1^^;)。

 さて、とあるPCゲームで、自分でドット絵を作成して、パズルを作成できるソフトウェアが有り、自分で作ってみました。
 すると、どんなドット絵でもOK、という訳ではなく、全体に占める黒と白のドットの比率(数)や、縦/横のドットの並び方によって、解けるデータと、解けないデータが存在することが判りました。そりゃあ、そうだよね〜。そうやって作成したパズルが先頭に示した図だった訳です。

 今回は、自作のパズルを解いていく様子をレイトレーシングしてみたいと思います。

データの変換

 まず、作成したデータをテキストデータに落とします(手動)。

 これが元データとなります。元データのサンプルは、こちら(solve_picx_pos.txt)です。

 変換スクリプト(solve_picx_pos.olv)を通して、もう少し扱い易いデータ(solve_picx.txt)に変換して使います。

※変換スクリプトは、Olive+の拡張子になっていますが、Xi-TRACEに読み込ませても実行することが可能です。

モデリング

 解き方の手順に沿って、だんだんパズルが完成して行く様子を表現するため、ピクセルを表す物体の形状を工夫しました。

 この条件を満たす、四角錐をピクセルの形状に採用しました(下図)。

solve_picx.png


  四面の三角形が正三角形となる場合:

 最初に示したパズルがどんなドット絵だったのか?は、後ほどの動画でご確認ください。


 ちゃんと解けるデータになっていますので、動画で答え合わせする前に、Excel等を使って、ご自身で解いてみるのも、一興です。パズルのCSVファイルを以下にリンクしておきます。

  パズルデータ:solve_picx.csv

 カンマ(,)区切りのCSVファイルですので、Excel等の表計算ソフトで読み込んでお楽しみください。


完成データ

 完成したデータをリンクしておきます。

1) Xi-TRACEデータ solve_picx.xitr
2) 手順データ solve_picx.txt
3) マッピングデータ solve_picx_ques.xpic
4) 手順作成スクリプト solve_picx_pos.olv
5) 出題データ solve_picx_pos.txt

 1)〜3)でレイトレーシングを実行します。4)5)は、手順データを作成するためのスクリプトと元データです。

 完成した動画を以下にリンクしておきます。



 これ、レイトレーシングで描画させる必要あった(1^^;)っ?。パズルを解いていく様子をじっくり見ていられる様に、真上からの視点で描画してしまったので、ほぼ二次元データになってしまいました……。少し俯瞰するような視点にしておいた方が、レイトレーシングらしくなったかも?


home

download

gallery