Androidアプリ開発 OpenGL AREarthroidでハイライトを出す [Androidアプリ AREarthroid]
本日もOpenGLネタではあるが、AREarthroidの拡張を行ったので、それについての話である。AREarthroidでは、NASAからダウンロードしてきた衛星画像を加工してテクスチャマッピングしている。テクスチャマッピングすると、ハイライトが出ないことは前にも書いた。ハイライトが出せると以下のような動画にできるのでは?と思いやってみることに。
すごい。リアルタイムで動いている。androidじゃ無理かな...
えーと、まずは、テクスチャマッピングで描画した後で、テクスチャマッピングしないで、球を描いてみた。そのまま描くと上書きされてしまうので、アルファブレンドする。
アンビエントは透明にして、ディフューズとスペキュラーには色設定して、描画してみた。シャイニネスの値は、80くらいかなぁ。
とやってみると、それなりにハイライトを出せた。が、いまいち。なんか違う。
どこが違うか、というと、上記の動画では、惑星の海の部分にハイライトが出る。海の部分はつるつるだからね。陸地の部分は凹凸がついているので、もしかするとそのせいでハイライトがでていないだけかもしれないが。
でこぼこにするの大変だなぁ。もっとメッシュを細かくしないといけないし。そんなにメモリ使えないし。だいたい、高度データをどこから持ってくればいいのやら。
バンプマッピングとかすればいいのか?
で、少し考えた。
青い球を先に描いて、海部分を透明にしたテクスチャを後で描いたらよくない?
我ながら「よい思いつきではないか」といそいそとコードを描くのであった。
とりあえず、テクスチャの画像の方は、GIMPで海を選択してガサっと一気に消した。細かい部分がだめだが、まずは実験してみなければ。
日本周辺の画像からも海を消した。
これでどうだ。おお、いい線いっている。ちゃんと海の部分にだけハイライトが出ている。がしかし、消し切れていない輪郭の部分が気になる。ハイライトの出方もけっこう派手な感じなので、もう少し抑えるか。青の色ももっと暗くてよい。そんな感じの調整をしていく。
輪郭部分に線が残ってしまうのは、GIMPで「選択部分をぼかす」ときれいに透明化できることがわかった。透明化するのは、色の「色を透明度に」っていうので、海の色を選択することでできた。
さて、次は、たくさんある、詳細画像から海を消さなければならない。けっこうたくさんある。海のない画像は修正する必要はないのだが、日本のまわりはみんな海。海のない画像データは2、3枚しかなかった。はぁ疲れた。
透明データを持たせるには、png形式にしないといけない。jpgには透明がない。せっかく圧縮率がよいのでjpgにしたのだが、pngに戻ってしまった。パッケージの大きさが10Mになってしまったが、しょうがないか。
また、バージョンアップせねば。ポイントスプライトで星も出したかったんだけどなぁ...
今日は疲れたので明日にしよ。テストもしなければ。
ちょっとCGっぽくなり過ぎてしまったか?
サイト内を検索
すごい。リアルタイムで動いている。androidじゃ無理かな...
えーと、まずは、テクスチャマッピングで描画した後で、テクスチャマッピングしないで、球を描いてみた。そのまま描くと上書きされてしまうので、アルファブレンドする。
アンビエントは透明にして、ディフューズとスペキュラーには色設定して、描画してみた。シャイニネスの値は、80くらいかなぁ。
とやってみると、それなりにハイライトを出せた。が、いまいち。なんか違う。
どこが違うか、というと、上記の動画では、惑星の海の部分にハイライトが出る。海の部分はつるつるだからね。陸地の部分は凹凸がついているので、もしかするとそのせいでハイライトがでていないだけかもしれないが。
でこぼこにするの大変だなぁ。もっとメッシュを細かくしないといけないし。そんなにメモリ使えないし。だいたい、高度データをどこから持ってくればいいのやら。
バンプマッピングとかすればいいのか?
で、少し考えた。
青い球を先に描いて、海部分を透明にしたテクスチャを後で描いたらよくない?
我ながら「よい思いつきではないか」といそいそとコードを描くのであった。
とりあえず、テクスチャの画像の方は、GIMPで海を選択してガサっと一気に消した。細かい部分がだめだが、まずは実験してみなければ。
日本周辺の画像からも海を消した。
これでどうだ。おお、いい線いっている。ちゃんと海の部分にだけハイライトが出ている。がしかし、消し切れていない輪郭の部分が気になる。ハイライトの出方もけっこう派手な感じなので、もう少し抑えるか。青の色ももっと暗くてよい。そんな感じの調整をしていく。
輪郭部分に線が残ってしまうのは、GIMPで「選択部分をぼかす」ときれいに透明化できることがわかった。透明化するのは、色の「色を透明度に」っていうので、海の色を選択することでできた。
さて、次は、たくさんある、詳細画像から海を消さなければならない。けっこうたくさんある。海のない画像は修正する必要はないのだが、日本のまわりはみんな海。海のない画像データは2、3枚しかなかった。はぁ疲れた。
透明データを持たせるには、png形式にしないといけない。jpgには透明がない。せっかく圧縮率がよいのでjpgにしたのだが、pngに戻ってしまった。パッケージの大きさが10Mになってしまったが、しょうがないか。
また、バージョンアップせねば。ポイントスプライトで星も出したかったんだけどなぁ...
今日は疲れたので明日にしよ。テストもしなければ。
ちょっとCGっぽくなり過ぎてしまったか?
サイト内を検索
2012-04-19 16:49
nice!(1)
コメント(2)
Copyright Atsushi Asai Google+朝井淳
[データベースの気持ちがわかる]SQLはじめの一歩 (WEB+DB PRESS plus)
- 作者: 朝井 淳
- 出版社/メーカー: 技術評論社
- 発売日: 2015/03/03
- メディア: 単行本(ソフトカバー)
Access クエリ 徹底活用ガイド ~仕事の現場で即使える
- 作者: 朝井 淳
- 出版社/メーカー: 技術評論社
- 発売日: 2018/05/25
- メディア: 大型本
とても魅力的な記事でした!!
また遊びに来ます!!
ありがとうございます。。
by 電話のマナー (2012-05-03 15:21)
電話のマナーさん、また来て下さい。
by AREarthroid (2012-05-20 15:42)