今回は OpenGL ES 3.0 以降で使えるようになった ETC2 について試してみました。アルファチャンネル入りでの圧縮形式として標準的に使えるようになった形式です。基本的な実装方針は ETC1 の拡張したイメージになっています。
データの作成は Mali Texture Compression Tool を用いて行っています。品質は最高品質を選んでいますが、待てないほどではないにしろ割と時間がかかるかなという印象です。その分画質はどうなっているか確認してみたいと思います。
左がオリジナル、右が ETC2 圧縮したものですがどうでしょうか。違いはぱっと見た感じでわかるでしょうか?
個人的には ETC1 のころと違ってよく綺麗に圧縮できているのではないかと思っています。そこで今度はこれらの一部分を拡大して確認してみたいと思います。
さすがに拡大すると ETC2 の苦手なブロックのノイズが見えてきました。斜めのラインが弱そうです。それでも等倍表示であれば、現画像を知らなければ気付かれにくいレベルにはなっているかと思いました。これならば使えるというところも多いのでは?と思いました。
その他
圧縮形式は標準的に使えるようになってきましたが、この ETC2 を格納するものがちょっと問題になるかもしれません。
今までのものは DDS ファイルイメージに格納することができましたが、 ETC2 はこれに入れることはできないようです。標準のツールでは ktx / PKM らで出力ができるようです。
コメント