2012-02-17 11 views
1

私はAndroid開発だけでなくJavaもかなり新しく、私はGoogle Skyマップとよく似た動作をするアプリケーションを作成しようとしています。私は本質的に私が既に設定して作業しているカスタムカメラビューを持っていたいと思っています。私は2D画像ファイルを描画できるカメラビューの上に透明なサーフェイスビューを配置したいと思っています。 SENSOR_ORIENTATIONを使用すると、透明なサーフェスの表示オーバーレイが動き回ることが望まれます。私は、私はそのビューに画像を描画することができ、ちょうどセンサーの変更でGLcameraの視点を変更することができると仮定して、GLsurfaceviewを使用したいと仮定しています。私はOpenGL ES 1または2 for androidを使用する必要があります

アンドロイド用のGLについてよくわかっていないのですが、これはAndroid OpenGLで自分自身を破壊する前に正しいアプローチであるかどうかを尋ねています。その中で、developer.androidリソースには、アンドロイドES 1とES 2の2種類のOpenGLがあることに気付きました。これは他のものよりも優れていますか?

Erik

+0

Android ES *のようなものはありません。 OpenGL ES 1.1とOpenGL ES 2.0があります(そして、明らかに3.0が準早急です)。 Androidが追加するものはOpenGL ESの拡張だけです。 –

答えて

2

あなたはAndroid用のOpenGL ES 2を使用する必要があります。 ES 1は、GLのFF(固定機能)のみのバージョンで、シェイダーやその他の興味深い機能やニッチな機能にアクセスすることはほとんどありません。 ES 2では完全な反対ですが、固定機能のパイプラインはなく、すべてが頂点シェーダとフラグメントシェーダです。これのメリットはより現代的であり、プログラマブルなパイプラインを使用することができます。私はかなりcertianいくつか(新しい)アンドロイドデバイスはES 1をまったくサポートしていません。それともES2でエミュレートされていても、それはずっと遅いです。あなたが自分の危険でGLバージョンコードを混在させることができるデスクトップPCとは異なり、アンドロイドではできません。 ES 1を選択した場合、ES 2を使用することはできません.ES 2を選択するとES 1を選択できません.ES 2を使用することをお勧めします。あなたがFFコードを書く背景から来ているなら、あなたは本当に奇妙で冗長なPP(プログラマブルパイプライン)のコンセプトを見つけるでしょう。

+0

私はjavaを少し見つけましたが、IMはそれに少し慣れています。ありがとう、あなたの答えは本当に役に立ちます.. – erik

関連する問題