32bit 浮動小数点数のビットレイアウトは 1.8.23 ですが、これだと指数部が1byte目と2byte目にまたがるので、byte単位で圧縮する zlib だとちょっと不利ですよね
これをあえて8.1.23 にならべなおして圧縮してみると、さらに 5%ほど小さくなるので、頂点データとか、アリやろ! と、一瞬思ったのですが、lzmaだと最初っからそれ相当の圧縮率だったので、考えるだけ無駄だった。レンジコーダー先生おみそれしました
それはそれとして、lzma。数字は出しませんけど、浮動小数点数の仮数部の下位2bitくらいをクリアしておくと、頂点の見た目なんかぜんぜん変わって見えないのにlzmaでの圧縮率はびっくりするくらい上がりますよ。おすすめ(データ作成者が丹精こめてつくったデータをプログラマが勝手にbitおとしていいのか、という哲学的な問題が残りますが)
コメントする