eaglesakuraの技術ブログ

技術的な話題とか、メモとか。

2013-01-01から1年間の記事一覧

複数スレッドでGLの処理が可能なGLSurfaceView作りました

複数スレッドでGLの処理が可能なGLSurfaceView作りました Githubで配布しています https://github.com/eaglesakura/multicontextglsurfaceview 何が出来るのか GLSurfaceViewを継承したクラスです。動作には互換性があり、GLSurfaceViewをMultiContextGLSurf…

Mac OSでPerfHUD ESを利用してNexus7のOpenGL ES負荷を測定する

Mac OSでPerfHUD ESを利用してNexus7のOpenGL ES負荷を測定する いろいろあってヨドバシポイントを2万円分手に入れたので、検証機としてNexus7を購入しました。Nexus7はTegraを搭載していて、便利なツールがMacでも使えるので、そのメモです。 標準ツールで…

Android NDKで"Unknown Application ABI:" エラーが発生した場合の対症療法

Android NDKのデバッグは容易になった・・・はずなのに Androidアプリは基本的にSDKを利用し、Java言語で記述します。ですが、Android NDKを利用することでC/C++言語でもアプリを記述できるのは周知のとおりです。 最初は「できるやつだけついてこい」的にほ…

Galaxy NexusでETC1テクスチャを利用する場合の注意

ETC1とGalaxy Nexus AndroidのOpenGL ES実装はETC1をサポートするようになっています。 ETC1テクスチャは4x4のピクセルブロックを基本とした圧縮を行うため、利用するには次のような制限があります。 縦横のピクセル数が4の倍数であること そのため、Android…

SurfaceTextureでMediaPlayerやカメラ映像をOpenGLテクスチャとして使う場合の注意点

SurfaceTextureによるテクスチャへのマルチメディアレンダリング Android 3.xからSurfaceTextureクラスが導入されて、OpenGLとカメラ・ビデオ等のマルチメディア連携が楽になりました。 具体的には、テクスチャとしてビデオやカメラの映像を取り込めるように…

特定のAnnotationが付いたクラスやメソッドだけをProguard対象から外す

Android NDKとProguardは相性が悪い Proguardとは 今更説明することも無いかと思いますが、ProguardといえばAndroiderにとっては欠かせないお友達です。 Javaのコードは容易に逆コンパイルされて、簡単に内容を解析されてしまいます。 逆コンパイル自体を防…

GLTextureViewを公開しました

Android 4.0(API Level 14)からTextureViewというViewが登場し、OpenGL ESの応用範囲が格段に広くなりましたが、GLSurfaceViewに相当する補助クラスが未だに登場していません。 Google的には必要ないという考えかもしれませんが、SurfaceViewよりもTexture…

日経ソフトウエア4月号にTextureViewの記事が掲載されました

「TextureViewで作ろう!」という記事が掲載されました 日経ソフトウエア 2013年 4月号に私が執筆したTextureViewを使った記事が掲載されました。 記事内容 Android 4.0(ICS)から追加された"TextureView"というViewの簡単な解説記事です。 API自体は一年以…

JenkinsにBGMを付ける

弊社Jenkinsビルド開始時にFF5の戦闘音楽 -> ビルド成功でファンファーレという流れをつけた— 川峠さん (@eaglesakura) 2013年2月13日 Jenkinsを使った開発を楽しくしようとして、BGMをつけたら案外話題になったからそのまとめ。 事の始まり iOSアプリの開発…