#armjp 圧縮ツール。事前圧縮のツールによって、品質がかわってくる。Mali用のものはフリーでダウンロードできる。Win用。http://t.co/GbOl8Xo1osから。
2014-04-25 14:58:13#armjp ブレンディング。アルファブレンディングなど。テクスチャマッピング後にブレンドすることもできる。後の隠れた色を読み出せないと計算できないので、Read Modify Writeのメモリコストの高い処理。ピクセルごとににやるとアンチエイリアスにも使える。
2014-04-25 15:00:23#armjp ステンシルテスト。型抜き。カラーバッファ以外に型情報としてステンシルバッファに入れておく。ゲームで遠景と動かない近景に。影の生成にも使われている。
2014-04-25 15:02:26#armjp 法線のもう1つの使い道。テクスチャをいろいろまとめてアトラスとして混合させる。そこに法線マップというのを色として持っておく。バンプマッピング。法線情報の色を考慮する。頂点数を増やさないで立体感を出す。
2014-04-25 15:07:38#armjp デプステスト。隠面消去に使われている。このためにZ値が残っている。デプスバッファを更新して書き戻し、カラーバッファのフィルタのように使う。省かれたものは捨てる。処理としては重い。
2014-04-25 15:07:57@kinneko kernel moduleとかuserland binaryとかの供給がSoCメーカー依存なので...
2014-04-25 15:19:51#armjp 新パイプライン。固定だった機能がプログラマブルになった。機能が増えすぎてハードでやるのはたいへんになってきた。演算ユニットが固定機能パイプラインに変わった。頂点とフラグメントがシェーダーになった。シェーダーで置き換えられる部分はAPI削除になった。
2014-04-25 15:27:38#armjp シェーダーって? プログラマブル・シェーダー。テクスチャ処理の例。シェーダー用の言語がある。GLSL。Direct3DではHDSL、nVIDIAではCg。
2014-04-25 15:30:01#armjp シェーダ言語のサンプルはMaliのサイトにサンプルがたくさんある。無料。Eclipseプラグイン。出力画面を見ながら効果を確認しつつ使える。
2014-04-25 15:33:22#armjp シェーダ言語もコンパイルが必要。GPUごとにバイナリが異なる。オンラインコンパイルで解決。オフラインコンパイラを使うこともできる。容量が小さく、コンパイルないので早く動く。
2014-04-25 15:35:22#armjp バッファ・オブジェクト。データのかたまりをオブジェクトとしてGPUに投げられるようになった。FBOフレームバッファオブジェクト(OpenGLだけで描画できるように), VBO頂点バッファ・オブジェクト。
2014-04-25 15:37:06#armjp GPU内部ブロック図。どうやってアクセラレーションしているのか。各ブロックにL1キャッシュ。L2とAXIがつながっている。パイプラインなので一箇所遅いと遅くなる。
2014-04-25 15:41:59#armjp GPU使うと速くなる? 何度も同じデータを扱うものをハード化してペナルティを低くする補完回路など。専用ロジックハード、キャッシュ、並列化。
2014-04-25 15:46:31#armjp ソフトウエアも複雑になっている。GPUもソフトウエア開発者のほうが多くなっている。デバイスドライバ(GPL版あり登録で落とせる)とDDK(ソフトウエアライブラリ。こちらは落とせない)。
2014-04-25 15:48:24