Javaゲーム制作記

いろいろ作ってます  

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
[ --/--/-- --:-- ] スポンサー広告 | Comment(-)

バンプマッピング

なぜかふとバンプマッピングがしたくなったので早速作りました。
時々凸凹がバグりますが気にしない。

(画像クリックで見る)
今回はどう考えてもゲームじゃなかったので、習作の方に入れときました。
即行で作ったにしてはわりと雰囲気が出たと思います。

以下、詳しいやり方

まず、表示に使う画像と、高さが白黒で記憶してある高さマップを用意します。
高さマップから法線データを作成します。
作成方法は、
隣との高さの差をXY両方で求めて(Z方向は1とする)、3Dベクトルとして正規化でOKです。
ステップ毎にピクセル単位でライティングを行います。
ライティングで得た色と表示に使う画像のピクセルの色を乗算して最終的な色を決めます。
光源の位置をマウスで操作できるようにして、完成です。
[ 2010/05/21 18:37 ] ゲーム制作 | Comment(3)
どうも。
お久しぶりです。急用でしばらく来れなかったのですが、結構ゲームが増えてますな。
今頃ですが、お疲れさまです。

このゲーム?も面白いですね。
これで30分も消費するとは思いませんでした。
では。拍手ですー。
[ 2010/05/21 22:19 ] [ 編集 ]
なんか不思議な感じがする

表現できる凹凸の深さ(高さ)の制限とかあるんですかね?

あと、毎回1ピクセルずつ計算してるってことはけっこう処理に時間がかかる?
処理時間がそれほどでもなかったらゲームにも使えそうですね。
[ 2010/05/22 22:37 ] [ 編集 ]
>>HTRE さん
お久しぶりです。
ありがとうございます。
しばらく休んでいましたが、今はちまちま作っております。
>>これで30分も消費するとは思いませんでした。
30分もやってたんですかw
たくさん遊んでもらえてうれしいです。
これからもたまにはこういう観賞系のゲームを作りたいと思います。

>>二つの、うさぎ さん
不思議な感じがしますよね。
ずっと見てると3D酔いするかもしれないので、お気をつけ下さいw
>>表現できる凹凸の深さ(高さ)の制限とかあるんですかね?
凹凸は法線ベクトル(表面の向いている方向)で管理しているので、
真平らから垂直な壁まで再現できます。
よーするに制限はありません。
>>あと、毎回1ピクセルずつ計算してるってことはけっこう処理に時間がかかる?
かかります。
このアプレットは300*300ピクセル(90000)ですが、自分のPCだと6msくらいかかりました(千分の6秒、0.006秒)。
もしゲームに使うとしたらサイズを縮めると思います。
[ 2010/05/23 17:09 ] [ 編集 ]
コメントの投稿




※URL記述の際はttp://としてください


プロフィール

saharan

Author:saharan

Twitter
検索フォーム


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。