月別アーカイブ: 2013年11月

Android 4.4 Adreno 320 の OpenGL ES 3.0 と Version 判定

Android 4.3 で OpenGL ES 3.0 が導入されましたが、Adreno 320 では
一部動作に問題がありました。
具体的には Uniform Block を使用すると glLinkProgram でエラーが発生します。
Android 4.4 ではこの問題が直っており、正しく動作することが確認できました。
GPU のドライバが更新されたためだと考えられます。

以前の症状について詳しくは こちら

# Nexus 7 (2013) Android 4.3
GL_VERSION: OpenGL ES 3.0 V@14.0
GL_RENDERER: Adreno (TM) 320
GL_VENDOR: Qualcomm
GL_SHADING_LANGUAGE_VERSION: OpenGL ES GLSL ES 3.00
# Nexus 7 (2013) Android 4.4
GL_VERSION: OpenGL ES 3.0 V@53.0 AU@  (CL@3776187)
GL_RENDERER: Adreno (TM) 320
GL_VENDOR: Qualcomm
GL_SHADING_LANGUAGE_VERSION: OpenGL ES GLSL ES 3.00

他にも glIntergerv() (Query) の値など修正が入っているようです。

CPU/GPU OpenGL ES Extension (Mobile GPU)

OpenGL ES 3.0 が動くデバイスもかなり増えてきました。
Android 4.4 なら Nexus 7 (2013) が使えるので、動作確認は比較的容易に
なったのではないかと思います。

ただ実際のアプリケーションでは、確実に OS が更新されるとわかっている
Nexus 以外で利用するのは正直厳しいと言えます。

他にも OpenGL ES 3.0 が使えるかどうかの判定がうまくいかないことがあります。

OpenGL ES : Checking OpenGL ES Version

GPU によっては 3.0 を渡して Context を作ってもエラーにならず、
OpenGL ES 1.1 の Context を返すものがあります。
(おそらくドライバが 2.0 かそれ以外で判別している)

2番目の Version 番号を使う方法は Android ではうまくいきます。
Nexus 10, Nexus 7 (2013) ともに 2.0 context を作っても GL_VERSION は
3.0 を返すためです。
ただし iOS や PC では作成した context と同じバージョン文字列を返すので
少々不自然な気もします。

関連エントリ
iPhone 5s の Apple A7 GPU
Adreno 320 の OpenGL ES 3.0 と Uniform Block
Nexus 7 (2013) の Adreno 320 と OpenGL ES 3.0 (Android 4.3)

Android SmartWatch SmartQ ZWatch (4) アプリの管理

壁紙も貼れます。

zwatch11.png zwatch12.png

LiveWallpaper は無理っぽい。
PDF も開けるのでドキュメントを入れておくことも一応出来ます。

zwatch13.png

画面は小さいけどマルチタッチ使えました。
拡大縮小操作が可能で、とりあえずプログラムで 4点まで取れることは確認。

ES File Explorer が動きました。
(壁紙の設定も ES File Explorer から)

これで PC につないで adb コマンドを打たなくても
アプリの管理 (主に uninstall) ができるようになります。

左上のアイコンからスライドメニューを開いて、
Tools の中の AppManager を選ぶと下記の通り。

zwatch14.png zwatch15.png

これでアプリの削除が簡単です。

Home 画面はセンターが時計 Widget (上下で face 切り替え)、
右側がアプリ一覧、左側が Widget です。
Wedget はサイズによらず、画面いっぱいに引き伸ばされるようです。

zwatch16.png

関連エントリ
Android SmartWatch SmartQ ZWatch (3) 腕に関数電卓
Android SmartWatch SmartQ ZWatch (2)
Android 4.1 SmartWatch SmartQ Z Watch

Android SmartWatch SmartQ ZWatch (2)

大きさ (下:Z Watch、上:iPod nano 6G)

zwatch05.jpg

画面サイズ、解像度は同じです。1.54inch 240×240 (220dpi)
当時 iPod nano (6G) で動くアプリを作りたいと思っていました。
LiveView はレスポンスに難がありましたが、単独でアプリを走らせられる
SmartWatch ならいろいろ出来そうです。

SmartQ Z Watch

SmartWatch は 2種類あります。

(1) サブモニタ型
・一般の Smartphone や Tablet のサブモニタとして利用する
・単体ではアプリケーションが動作せず Dumb Terminal に近い
・キー入力をサーバーに送り、画面出力だけ Bluetooth で受け取る
・もっと単純なものは特定の通知だけを受け取ることができる

(2) 単独動作可能
・一般の Smartphone や Tablet を小さくして腕時計形状にしたもの
・Android 等の OS がそのまま乗っておりアプリを走らせられる
・アプリを使って (1) のような使い方もできるが、データはローカルに蓄積される
 (1画面ごとに通信するわけではない)

Sony の LiveView/MN2 系は (1) で、ZWatch は (2) に相当します。

Z Watch は右側面に電源ボタンと Back ボタンがあります。
Back ボタンは長押しで Home 相当。
左側はヘットホン端子のみで、USB&充電を兼ねています。

時計画面は Home の Widget に相当するようです。
デザインは切り替え可能。

普段はバックライトが消えていて時刻を確認できませんが、
腕のアクションで一時的に画面を点灯させることができます。
水平状態から手前に傾けるイメージ。
知らないうちに点灯してる場合結構あります。
角度をつけて机に置いた状態でも反応してしまうのが難点。

Home には他にも画面単位で Widget を追加できます。

アプリの追加や削除には PC が必要。(adb 接続方法はこちら)
Mac OS X でも adb でつながります。
adb shell では su 可能。

Android 4.1 + 1GHz single core CPU + RAM 512MB + ROM 4GB なので、
安価な Android 端末としては十分な性能。
ただし画面が小さいので、通常アプリは表示や操作に制限があります。
UI は専用に作らないと厳しいでしょう。

ソフトキーボードは入っていません。
マニュアルを読む限り、同期用に Android 端末を登録すれば
リモートキーボードとして使えるようです。

AKIBA PC Hotline: SmartDevices(智器) Z Watch
AKIBA PC Hotline: 中華な腕時計型デバイスがまた登場、Android 4.3ベースで1万5千円

設定の言語選択に日本語はありませんが、上記ページを見ると
日本語も表示されていることが確認できます。
公式サイトや上のページでは Android 4.3 と書かれていますが、
API Level は 16 を返します。つまり Android 4.1 相当。

ZWatch の JZ4775 は Paladin の JZ4770 と違い 3D GPU が搭載されていません。
OpenGL ES 2.0 を使ったアプリケーションは起動できませんでした。

↓レイアウトを調整してみました。使ってみるとこれでもまだボタンが小さく感じます。

zwatch04.png

関連エントリ
Android 4.1 SmartWatch SmartQ Z Watch