承前。
作戦は困難を極める。
しかし、泣き言を言っている場合ではない。
我々はやると決めたのだ。
やるしか、ない。
状況確認。
容量の大部分を占めている大きなファイルは以下の3種類。
この内、ライブラリだけはサイズを減らすことが出来ない。 (編:減らしてました)
つまりモデルデータ、3つのテクスチャデータ、この二箇所の攻略が本作戦の要となる。
まずは210KBも占めているテクスチャデータから攻略を開始する。
テクスチャデータはアルファチャンネル(透明部分)を保持した.png形式のファイルである。
普段は品質を重視するため、ほとんど圧縮を行わない。
だが今回は事情が異なる。品質は極力維持しつつ、しかし限界まで圧縮をかける。
我々が目をつけたのは、TinyPNGというサイトだ。
https://tinypng.com/
.pngファイルに非可逆圧縮を行うことで、品質をほとんど落とさず、かつ最大70%も圧縮をしてくれるというサービスである。
さらにアルファチャンネルにも対応しているとのこと。
まるで今の我々ために用意されたようなサービスだ。
早速圧縮をかける。
圧倒的ではないか!
それぞれおよそ80KBもあったテクスチャが、18KB程にまで圧縮された。
しかし、まだ足りない。
500KBが340KB近くまで大きく圧縮された、だが標的はあくまで200KB。
これから、さらに140KB以上の圧縮が必要なのだ。
約500KB → 約344KB
次に、テクスチャのファイル自体の数を減らす。
当時のテクスチャは、それぞれかなり贅沢にスペースを使って配置されたものだった。
これを間隔を詰めて配置しなおせば、一つの.pngファイルにまとめることが可能だろう。
テクスチャの配置を変更したためにモデルにも手を加えたが、ファイルサイズに影響しない変更のため削減は見込めない。
しかし、テクスチャデータを一つまとめること自体には成功した。
結果、18KB×3が18KBに削減できた。(勿論TinyPNGでの圧縮も施してある)
約344KB → 約308KB
ここまで、テクスチャに対して圧縮とファイル数削減を行った。
品質維持のため、画像自体の解像度を下げるのは最後の手段にしたい。
潮時だ。
これをもってテクスチャデータ攻略作戦は完了とする。
引き続き、モデルデータの攻略を開始する。
続く
作戦は困難を極める。
- 目的 :pixivに掲載する広告用Flashファイルに、インタラクティブに反応するLive2Dモデルの実装。
- 勝利条件 :広告のファイルサイズを本日中に200KB以内に収める。
- 現状 :広告のサイズは500KBオーバー。
しかし、泣き言を言っている場合ではない。
我々はやると決めたのだ。
やるしか、ない。
状況確認。
容量の大部分を占めている大きなファイルは以下の3種類。
- Live2Dライブラリ(配布中の最新版) 約 120KB
- イプシロンモデルデータ(公式配布のもの) 約 170KB
- テクスチャデータ(256サイズ) 約 70KB x 3
つまりモデルデータ、3つのテクスチャデータ、この二箇所の攻略が本作戦の要となる。
まずは210KBも占めているテクスチャデータから攻略を開始する。
テクスチャデータはアルファチャンネル(透明部分)を保持した.png形式のファイルである。
普段は品質を重視するため、ほとんど圧縮を行わない。
だが今回は事情が異なる。品質は極力維持しつつ、しかし限界まで圧縮をかける。
我々が目をつけたのは、TinyPNGというサイトだ。
https://tinypng.com/
.pngファイルに非可逆圧縮を行うことで、品質をほとんど落とさず、かつ最大70%も圧縮をしてくれるというサービスである。
さらにアルファチャンネルにも対応しているとのこと。
まるで今の我々ために用意されたようなサービスだ。
早速圧縮をかける。
圧倒的ではないか!
それぞれおよそ80KBもあったテクスチャが、18KB程にまで圧縮された。
しかし、まだ足りない。
500KBが340KB近くまで大きく圧縮された、だが標的はあくまで200KB。
これから、さらに140KB以上の圧縮が必要なのだ。
約500KB → 約344KB
次に、テクスチャのファイル自体の数を減らす。
当時のテクスチャは、それぞれかなり贅沢にスペースを使って配置されたものだった。
これを間隔を詰めて配置しなおせば、一つの.pngファイルにまとめることが可能だろう。
テクスチャの配置を変更したためにモデルにも手を加えたが、ファイルサイズに影響しない変更のため削減は見込めない。
しかし、テクスチャデータを一つまとめること自体には成功した。
結果、18KB×3が18KBに削減できた。(勿論TinyPNGでの圧縮も施してある)
約344KB → 約308KB
ここまで、テクスチャに対して圧縮とファイル数削減を行った。
品質維持のため、画像自体の解像度を下げるのは最後の手段にしたい。
潮時だ。
これをもってテクスチャデータ攻略作戦は完了とする。
引き続き、モデルデータの攻略を開始する。
続く