斜め45度から差す光の下で、3Dの積み木がつくる影の形を3択から当てるパズルです。ルールはたった1つ。積み木が1段高くなるごとに、その影は光の向きへ1マスずつずれていきます。浮いているブロックでも影はできます。10問を通して、頭の中で「光→高さ→影の位置」を組み立てる力を鍛えます。
コツは、影を一気に想像しようとせず、いちばん高いブロックから順に「これは何マスずれるか」を1つずつ足していくことです。光の向き(東西南北の斜め45度)を最初に確認し、その方向へ高さの分だけスライドさせた位置を塗りつぶす——この分解ができると、複雑な形でも崩れずに当てられます。ハズレの選択肢は1マスだけ違うように作ってあるので、全体の輪郭ではなく1マス単位で照合するのが正解への近道です。
3Dの空間把握を鍛えるゲームは英語圏には多いのですが、日本語で気軽に遊べるものが意外と空いていました。光と影という誰もが直感的に知っている現象を、厳密なルール1つに落とし込めば、説明ゼロで遊べて、しかも脳の同じ部位を使う——そこに面白さの余地があると考えて作りました。
影の位置は乱数ではなく、光線ベクトルと各ブロックの高さから幾何学的に厳密計算しています。だからハズレの選択肢も「惜しいけれど物理的にありえない影」を狙って生成でき、運ではなく理解で解けるパズルになっています。表示は three.js による軽量な3D描画で、すべてブラウザ内で完結します。
覚えることは実質1行です——1段登るごとに、影は光の向きへ1マスずれる。光は東西南北のいずれかから斜め45度に差します。積み木が1段高くなるほど影は光の向きに伸び、浮いているブロックにも影はできます。3D表示はドラッグで回せるので、裏側や隠れているブロックを確認してから答えて構いません。
方位で迷わないように、赤=+X側/青=+Y側の目印を、3D表示と影グリッドの両方に共通で置いてあります。どちらが手前かわからなくなったら、この色を基準にしてください。全10問・約3分です。
このゲームの影は、見栄えのためにスタイル化したものではありません。斜め45度の平行光による厳密な平行投影(せん断投影)として計算しています(shadow.js の shadowGrid)。
だから「立方体1個の影は1×2マスのドミノ型になる」「2段積むと1×3マスに伸びる」という結果は、作者が決めた恣意的なルールではなく幾何学的に導出された厳密解です(shadow.test.js のT1・T2で検証しています)。1問目で違和感があっても、この1×2から数え上げていけば必ず答えは出ます。
3択パズルでいちばん興ざめなのは、ハズレが正解と見分けられない、あるいは消去法だけで解けてしまうことです。shadow.test.js では次を全PASSで保証しています。
ひとつめ、距離のある2つのハズレグリッドは、正解グリッドに対しても互いに対しても必ず異なること。同一問題の中で3択が実質同じになることはありません。ふたつめ、姉妹作の空間認識偏差値テストの俯瞰問題で起きた「方位の基準がないと、回転した盤面も正解になってしまう」というバグは、ここでは構造的に発生しません——光の向きも物体の向きも問題ごとに固定されているため、単一マスの反転は常に一意に誤りになります。みっつめ、積み木は必ず高さ方向に2段以上使います。真っ平らな配置だと影が単なる足跡と同じになってしまい、投影を学ぶ意味がなくなるからです。
逆方向の出題——影のグリッドだけを見せて、3つの3D候補からどれが元の形かを当てる——は面白いアイデアとして検討しましたが、候補ごとに独立したインタラクティブな3Dビューアが必要になるため、今回は見送っています。次サイクルの候補として残っている、というのが現状です。
3D表示にはthree.js(r128・MIT)を同梱しており、計算はすべてブラウザ内で完結します。回答内容が外部へ送信されることはありません。