【発掘王】ゲームの仕組み解説(1)

| トラックバック(0)

どうも、ケイ・プロジェクトの中の人 あ〜る です。
このブログは一体なんのブログなんだ?という状態なので...
久しぶりにアプリの話をしようかと。
 
発掘王の地面から少しずつ顔を出すアイテムの
仕組みについての解説です。
 
まず、全てのピクセルに対して個別に深さが表せるように
配列を用意します。
exking_blog_00.png
図は10x10になっていますが、
実際にはこれが 1200x800 になっています。
初期値は0。即ち何も掘られていないという状態。
 
タッチされたとき、ドリルの形に深さレベルを変更します。
深さ1だけ掘れるワイドドリルを使った時には
このような感じになります。
exking_blog_01.png
実際にはもっと広い範囲が掘れる訳ですが、
ここでは説明の便宜上、4x4となっています。
 
さらに、深さ2が掘れるノーマルドリルを
少しずらした部分に使うとこんな感じ。
exking_blog_02.png
ここでは3x3の範囲ということにしておきます。
既に1掘っているところでは深さが3になっています。
 
と、このように、1ピクセルずつ深さを決定していっています。
 
また、この深さの配列とは別に
同じ大きさの Image を用意しておきます。
そして、初期状態は地面表面の画像。
つまり、地面表面画像の png データを元に
image を作っておくということですね。
 
そして、深さ配列で更新があった場合、
そこに該当するピクセルのカラーを変更します。
 
image.buffer[x][y] = color[depth[x][y]];
というような感じの処理ですね。
※あくまでイメージなので超適当な記述です。雰囲気だけ。
 
色は、深さごとにあらかじめ決めておき
深くなればなるほど濃い色になるように
しておけばよいでしょう。
 
ちなみに、実際のゲーム画面をよく見ると掘った部分が
まだらになっているのがわかるかと思います。
実際には各深さのカラー値は微妙に違う2種類が用意してあり
ランダムにどちらかを選ぶようになっているんです。
完全に一色だとのっぺりしすぎるかと思い、
微妙に柄が出るような工夫です。
ディスプレイの発色・色域によってはほとんどわからないので
もう少しちゃんと調整をした方がよいかもしれませんね...。
 
ともあれ、これで地面を掘ると色が変わるという部分ができました。
次回はアイテムが出て来た時の処理についての予定です。

トラックバック(0)

トラックバックURL: http://kei-prj.com/mt/mt-tb.cgi/102