これは私がこの問題を投稿した4回目です。それは複雑な問題です、私はそれを知っています。Android NDK、OpenGL 2、VBOでレンダリングがクラッシュする
私はすべてを説明しようとしています。重要であるかどうかわからないので、この問題はコード内で愚かであり、わかりません。
私は数日前にC++ NDKのレンダリング部分でAndroidのゲームエンジンを開発していましたが、これに問題はなく、Android搭載デバイスで正しくゲームを見ることができました。その後、 Android Studioを1.5.2から2.1.3に更新しました。実験的なgradleプラグインを0.7.0から0.7.3に更新しました。私はAndroid 6を搭載したNexus 6pでアプリをテストしましたが、すべてうまくいきました。 Android 4でテストしたところ、何も表示されず、Android 5でテストしたところ、何かが表示されていましたが、正しく表示されませんでした。
今、私はVBOで描画するとレンダリングが壊れて何もレンダリングされないことがわかりました。背景だけがglClearColor
に設定された色で表示されます。
VBOを使わないで三角形を描画すると正しく描画されますが、同じ三角形やVBOで描画するとレンダリングがクラッシュし、バックグラウンドのみが表示されます。 VBOで他のものを描画すると、コードglBindBuffer
に到達するとレンダラーがクラッシュするとすぐにglDrawElements
に電話しても問題ありません。
- は1.5.2
- 格下げ実験プラグイン
- ダウングレードのGradle 2.14.1から2.10私は「
- にAndroidのメーカーに戻る:
はので、私はすでに試した、それのthatsすべてのGLerrorsを確認し、glを呼び出すたびに0を返します。
- 私はすべてのコードをゼロから作成し始めました(ちょうどC++コード)。 同じ結果を得ました
これは私を夢中にしています。私はこれで5日を無駄にし、より多くの時間が経過すると、私は眠気を感じる。
これらは私のファイルです:
私はこの問題を解決し、その些細な問題のために、愚かに感じることができると思います。
私はすべてのアイデアを感謝したり助け、感謝
EDITます:多分問題はコードではありませんが、多分、Gradleの設定で、あるいはマニフェストに、またはJavaレンダラ部にありますまたはどこでも、私は見つけることができません
スタックトレースを見ましたか?実際に 'glBindBuffer()'でクラッシュしますか? –
@この問題は、アプリケーションがクラッシュせず、コードが実行されていたが、以前のすべての入力を無効にしたため、スタックトレースに何も表示されなかったということだった – quetzalfir