家のパソコンでも3Dやってみました。
SDKに付属のサンプルをいろいろ改造。
やりたいのはトゥーンレンダリング。
球とか円筒などの簡単なのを表示しても面白くないから、チュートリアルの最後、Xファイルからメッシュを読み込んで表示するサンプルを使ってみました。
とりあえず虎のテクスチャは要らないので表示コードをコメントアウト。
そしたら灰色一色の虎が。
テクスチャ貼ってるだけの色もライティングもない虎だから当たり前ですけど。
で、ライティングのサンプルからその辺の処理引っ張ってきたら今度はほぼ真っ黒に。
これは環境光の色そのままだから、恐らく法線ベクトルが定義されていないために直接光の成分がなくなったためだと思われます。
と、とと、まてまてまて、もうひとつ、オブジェクト側では反射のしかたにも2種類あって、そのうちのアンビエント反射、要するに入射角と反射角が一緒ってことは、「ふにゃふにゃ」のビーム反射処理にも応用できるんじゃないか?
それでもって、話は変わってDirectMusic、これまたDirectX8では良さそうな機能が追加されてたりして、全面的に8使うようにしようかなと思っていますが、DirectDrawがなくなったことを考えると思い切れないのも事実だったりします。
パズルゲームを考えています。パネポン風味のやつを。
数色に色分けされた長方形(以後これをパネルと呼ぶ)を画面の特定の範囲にルールに沿う範囲で整然と並べ、任意の2パネルを交換することによりルールによって定められた数種類のパターンのうち最低一つに一致するようパネルの配置を変更し、パターンに一致したパネル全てを消去し、それにとって得点を得る、また、パネルが消去されたことに起因してパネルの配置が換わり、それにより新たにパターンに一致する配置を作り、連続して消去すること(以後これを連鎖と呼ぶ)、そして、一度の操作でより多くの、またはより困難なパターンに一致させることにより通常より多くのパネルを消去すること(以後これを同時消しと呼ぶ)、さらに連鎖動作中にパネルを移動することにより、連鎖終了後に再びパターンに一致するように配置し、連鎖を続けること(以後これをアクティブ連鎖と呼ぶ)により通常より多くの得点を得ることのできるゲーム、ということです。
もちろん違いもありますよ。
- 縦や横に並べるわけじゃない
- これをやっちゃったらパネポンそのものでしょーが!
次世代らしく、四角形になるように並べます。 - 可愛い女の子が出ない
- 昔にも言ったことがあると思いますが、そんなもの私に期待するもんじゃありません!
そして本当に誰も期待していないんですね… - せりあがってこない
- その代わり横からプレス機が迫ってきます。
- 横長
- 横から迫ってくるので横長にします。
- マウス操作が基本
- 隣同士を入れ替えるのではありません。
好きなところ2箇所をマウスでクリックして入れ替えるんです。 - パネルが多い
- ちょっと理由があってパネル数を多くします。
多分目一杯パネルを出したら1000個超えると思います。
ほかにも、こだわりたい部分としては、BGMがあります。
パネルを消すとちょろっと短い音楽が鳴りますが、連鎖をすると短かったのがだんだん長くなって、派手になっていきます。
また、通常BGMも、得点や状況で切り替わったりします。
0点の音楽→1連鎖の音楽→1~100点の音楽→1連鎖→2連鎖→3連鎖→4連鎖の音楽→101~300点の音楽→ピンチのときの音楽→ゲームオーバー…みたいな感じで。
ゲーム音楽のインタラクティブ性というものはまだまだ挑戦できることが多そうです。