public class GLDrawer2D extends java.lang.Object implements IDrawer2dES2
| Constructor and Description |
|---|
GLDrawer2D(boolean isOES)
コンストラクタ
GLコンテキスト/EGLレンダリングコンテキストが有効な状態で呼ばないとダメ
|
GLDrawer2D(float[] vertices,
float[] texcoord,
boolean isOES)
コンストラクタ
GLコンテキスト/EGLレンダリングコンテキストが有効な状態で呼ばないとダメ
|
| Modifier and Type | Method and Description |
|---|---|
void |
deleteTex(int hTex)
テクスチャ名破棄のヘルパーメソッド
GLHelper.deleteTexを呼び出すだけ
|
void |
draw(int texId,
float[] tex_matrix,
int offset)
指定したテクスチャを指定したテクスチャ変換行列を使って描画領域全面に描画するためのヘルパーメソッド
このクラスインスタンスのモデルビュー変換行列が設定されていればそれも適用された状態で描画する
|
void |
draw(ITexture texture)
Textureオブジェクトを描画するためのヘルパーメソッド
Textureオブジェクトで管理しているテクスチャ名とテクスチャ座標変換行列を使って描画する
|
void |
draw(TextureOffscreen offscreen)
TextureOffscreenオブジェクトを描画するためのヘルパーメソッド
|
float[] |
getMvpMatrix()
モデルビュー変換行列を取得(内部配列を直接返すので変更時は要注意)
|
void |
getMvpMatrix(float[] matrix,
int offset)
モデルビュー変換行列のコピーを取得
|
int |
glGetAttribLocation(java.lang.String name)
アトリビュート変数のロケーションを取得
glUseProgramが呼ばれた状態で返る
|
int |
glGetUniformLocation(java.lang.String name)
ユニフォーム変数のロケーションを取得
glUseProgramが呼ばれた状態で返る
|
void |
glUseProgram()
glUseProgramが呼ばれた状態で返る
|
int |
initTex()
テクスチャ名生成のヘルパーメソッド
GLHelper#initTexを呼び出すだけ
|
boolean |
isOES()
外部テクスチャを使うかどうか
|
void |
release()
破棄処理。
|
void |
resetShader()
頂点シェーダー・フラグメントシェーダーをデフォルトに戻す
|
IDrawer2D |
setMvpMatrix(float[] matrix,
int offset)
モデルビュー変換行列に行列を割り当てる
|
void |
updateShader(java.lang.String fs)
フラグメントシェーダーを変更する
GLコンテキスト/EGLレンダリングコンテキスト内で呼び出さないとダメ
glUseProgramが呼ばれた状態で返る
|
void |
updateShader(java.lang.String vs,
java.lang.String fs)
頂点シェーダー・フラグメントシェーダーを変更する
GLコンテキスト/EGLレンダリングコンテキスト内で呼び出さないとダメ
glUseProgramが呼ばれた状態で返る
|
public GLDrawer2D(boolean isOES)
isOES - 外部テクスチャ(GL_TEXTURE_EXTERNAL_OES)を使う場合はtrue。通常の2Dテキスチャならfalsepublic GLDrawer2D(float[] vertices,
float[] texcoord,
boolean isOES)
vertices - 頂点座標, floatを8個 = (x,y) x 4ペアtexcoord - テクスチャ座標, floatを8個 = (s,t) x 4ペアisOES - 外部テクスチャ(GL_TEXTURE_EXTERNAL_OES)を使う場合はtrue。通常の2Dテキスチャならfalsepublic void release()
public boolean isOES()
public float[] getMvpMatrix()
getMvpMatrix in interface IDrawer2Dpublic IDrawer2D setMvpMatrix(float[] matrix, int offset)
setMvpMatrix in interface IDrawer2Dmatrix - 領域チェックしていないのでoffsetから16個以上必須offset - public void getMvpMatrix(float[] matrix,
int offset)
getMvpMatrix in interface IDrawer2Dmatrix - 領域チェックしていないのでoffsetから16個以上必須offset - public void draw(int texId,
float[] tex_matrix,
int offset)
public void draw(ITexture texture)
public void draw(TextureOffscreen offscreen)
public int initTex()
public void deleteTex(int hTex)
hTex - public void updateShader(java.lang.String vs,
java.lang.String fs)
vs - 頂点シェーダー文字列fs - フラグメントシェーダー文字列public void updateShader(java.lang.String fs)
fs - フラグメントシェーダー文字列public void resetShader()
public int glGetAttribLocation(java.lang.String name)
glGetAttribLocation in interface IDrawer2dES2name - public int glGetUniformLocation(java.lang.String name)
glGetUniformLocation in interface IDrawer2dES2name - public void glUseProgram()
glUseProgram in interface IDrawer2dES2