2

私はstackoverflowの解決策に目を通しましたが、どれも私の問題を解決していないようです. マニフェスト ファイルに API を含めました。

<uses-sdk android:minSdkVersion="10" />
<uses-feature android:required="true" android:glEsVersion="0x00020000"/>
<application
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name" >
    <activity
        android:name=".HidderActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>

私のラッパーコードは次のとおりです。

class GLSurface extends GLSurfaceView
{
  final renderer r;
  public GLSurface(Context context)

  {
      super(context);

      setEGLContextClientVersion(2);
      r = new renderer();
      setRenderer(r);
      setRenderMode(GLSurfaceView.RENDERMODE_CONTINUOUSLY);
  }
}

これがエラーです。

未実装の OpenGL ES API の呼び出し

4

3 に答える 3

3

かわった:

mGLView.setEGLContextClientVersion(2); -> mGLView.setEGLContextClientVersion(1);

そしてそれは私のために働いた。

于 2013-01-27T15:03:32.387 に答える
1

Android の 2.0 バージョンの OpenGL ES を使用する機能には、デバイスでの動作を妨げるものがいくつかあるようです。この問題を解決するために、コメントを外しました

setEGLContextClientVersion(2);

ラインとそれは働いた。ただし、これはそのバージョンを (1.1?) にするようです。やりたいことにもよりますが、これは良い解決策ではないかもしれませんが、2D ゲームを作成する私にとっては、それほど重要ではありません。

于 2012-07-02T00:00:09.837 に答える
0

Renderer 実装の onSurfaceCreated()、onSurfaceChanged()、および onDrawFrame() でパラメーターとして取得している GL10 インスタンスを使用していることが原因である可能性があります。OpenGL ES 2.0 を使用する予定であるため、インスタンスを使用することはできず、おそらく使用せず、代わりに代替を使用します。代替手段があります!これが、ネット上でこれらのパラメーター名と未使用または類似のコードが見られる理由です!

可能な限り最善の方法で文書化されていないことは確かです!

このようにして、3D ベースの OpenGL をさらに探索できる可能性があります。

OpenGL ES 2.0 を使い始める方法の良い例を次に示します。

http://androidbook.com/item/4254

于 2014-12-27T17:30:50.603 に答える