質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
OpenGL ES

携帯電話のような組込み機器のためにデザインされたOpenGLのサブセットです。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

Q&A

0回答

1246閲覧

OpenGLを用いたARカメラアプリ

xYashinoki

総合スコア10

OpenGL ES

携帯電話のような組込み機器のためにデザインされたOpenGLのサブセットです。

Android

Androidは、Google社が開発したスマートフォンやタブレットなど携帯端末向けのプラットフォームです。 カーネル・ミドルウェア・ユーザーインターフェイス・ウェブブラウザ・電話帳などのアプリケーションやソフトウェアをひとつにまとめて構成。 カーネル・ライブラリ・ランタイムはほとんどがC言語/C++、アプリケーションなどはJavaSEのサブセットとAndroid環境で書かれています。

0グッド

0クリップ

投稿2019/05/17 01:34

前提・実現したいこと

Android (APIlevel 28)を使って、カメラ映像の上に画像を重ねて表示する (ARのような) カメラアプリを作成しています。
画面上にプレビューするだけでなく、映像をファイルとして出力もしたいので、OpenGLESを用いてカメラ映像の上に画像を表示してそれをエンコーダに流しています。

参考にしたサンプルソースは以下です。
https://github.com/shimoda-tomoaki/CameraTestProject/blob/master/app/src/main/java/ueda/cameratestproject/Renderer.java

発生している問題・エラーメッセージ

OpenGLのテクスチャの扱い方がわからないため、ご教示ください。
自分が理解しているテクスチャの扱い方の流れは下記です。

① テクスチャを生成する。(glGenTextures)
② bindする (glBindTexture)
③ 設定する(glTexParameteri)
---ここまで初期化---
---ここからonDraw内---
④ 使用するシェーダプログラムを指定する (glUseProgram)
⑤ bindする (複数枚テクスチャがある場合はここで指定する)
⑥ テクスチャ変数や頂点変数を設定する (glVertexAttribPointer)
⑦ 描画する (glDrawArrays)
⑧ 複数枚テクスチャがある場合は④-⑦を繰り返す

適当なBitmap画像をテクスチャとして描画する場合には、上記の流れでいいようなのですが、
カメラ映像の場合に、なぜか上記の⑤をしなくても表示できてしまいます。
⑤をしないと、どのテクスチャを表示するか指定していない為、前回のBind対象を描画してしまうと思うのですが、
その認識で正しいですか?

補足情報(FW/ツールのバージョンなど)

初質問なので、勝手がわからなくて申し訳ございません。
何か必要な情報などありましたら、お知らせください。
ソースは諸事情により乗せることができません。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問