画像独自形式保存


ごろぉ:こんにちは。ごろぉです
はずな:こんにちはー 比芦美沙(ひろ はずな)でーす
 
ごろぉ:初めての作業所活動は、『画像の独自な形式での保存』です。
はずな:独自な形式って?
ごろぉ:ふむ。はずな、お前の知っている画像形式を列挙してみろ
はずな:…画像形式って?
ごろぉ:だからぁ、拡張子…あー、ええと…画像ファイルの"."以降の3、4文字の文字を言ってってみ
はずな:えっと…"bmp"、"jpg"、"gif"、"png"、"tif"…くらいかなぁ
ごろぉ:ふむ。そんだけ分かれば十分だ
ごろぉ:最初の話題に戻るが、独自な形式とは、それらに含まれない全く新しい画像形式のことだ
はずな:ということは、ペイントとかじゃ見れないし、描けないの?
ごろぉ:そのとおり
はずな:…それって何か意味あるの?
ごろぉ:ある。と思う。何に意味があるかなんて見た人の価値観だ
はずな:そういうものなの?
ごろぉ:ものなの。
 
はずな:で、どんな感じの画像形式を作るの?
ごろぉ:とりあえず今回はゲームに使えそうな画像形式を考える
はずな:どんなジャンルのゲーム?
ごろぉ:今回は、ギャルゲーノベルゲーム系かな…結構画像が重要視されるタイプだし
はずな:へぇー…
ごろぉ:それで、ただ保存するだけじゃつまらないから、『画像圧縮』もしてみようか
はずな:圧縮?
ごろぉ:ああ。どうしてもノベル系のゲームは画像のサイズが多くなるからな。容量は少ない事にこしたことは無いし
はずな:で、実際にはどうするの?
ごろぉ:そうだなぁ…はずな、ノベルゲームで一番数が多い画像は何だと思う?
はずな:ええと、う〜ん…背景かなぁ
ごろぉ:うむ。確かに背景画像も多いが、一般的に立ち絵が一番多いことになっている
はずな:立ち絵?
ごろぉ:ああ。背景の画像の上にキャラクターが表示されるあれな
はずな:うん。それは分かるよ
ごろぉ:今回は立ち絵の圧縮について考えてみるぞ?
はずな:はーい
 
ごろぉ:まず、立ち絵だから、『可逆圧縮』でいこうな
はずな:えっと、確か『完全に元に戻せる』圧縮方法の事だよね?
ごろぉ:おお、分かってるじゃないか…それと、最近はフルカラーが主流だから、減色はしないようにしたいな
はずな:ふんふん。それで?
ごろぉ:圧縮画像の定義としてはその辺だろう。表示するだけだからあまり特殊な機能もいらないし
はずな:でも、可逆でフルカラーって、他にどんな圧縮方法があるの?
ごろぉ:代表的なものに『ランレングス法』が挙げられるな。
ごろぉ:画像を横または縦にスキャンして、連続した色が幾つあるか記録していく方法だ
ごろぉ:ただ、これだと単純な画像は高い圧縮をする事が出来るが、複雑な画像だと逆にサイズが増えてしまうんだ
はずな:駄目じゃん
ごろぉ:…まぁな。他にも幾つかの方法があるが…ど忘れしたので省略する
はずな:…駄目じゃん
 
ごろぉ:さて、それでは今回使う圧縮法だが…立ち絵の特徴は?
はずな:え?う、う〜んと…切り抜かれてるみたいにキャラクターの周りは背景のままだよね
ごろぉ:そう。通常、画像は長方形がだが、ゲーム等ではキャラクターの周囲は透過している
ごろぉ:これは、『スプライト』といってキャラクター画像の周囲を一つの色で塗り潰し、その色を透明色として描画するわけだ
はずな:うん。それでキャラクターが背景に溶け込んでいるように見えるんだよね
ごろぉ:そのとおり。それで、先にも言ったとおりキャラクターの周囲は一つの色で塗り潰されているわけだから、そこの部分を綺麗さっぱり取り除いて、透明色以外の色のみ記録する方法を使用してみる
はずな:うん?良く解らないよ?
ごろぉ:まぁ、こんな感じだ
■■■■■■■■■■

■■■■■
■■■

透明色をに設定↓
ごろぉ:これで、画像自体は約半分になる
はずな:半分!思ってたより凄いねぇ
ごろぉ:しかしながら、背景色を飛ばした位置とかを記録しとかないと復元できないから、全体としてみるとあまり小さくならないんだ。
ごろぉ:それに、この方法も複雑な画像に対してはあまり効果ないし
はずな:う〜ん。都合よくは行かないねぇ
ごろぉ:まぁあれだ。塵も積もればなんとやら。少しずつ減らせば何時しか大規模な圧縮に繋がるさ
ごろぉ:それから、この形式は、背景色をあらかじめ抜いてあるので、スプライト処理も結構楽に出来るぞ
はずな:え、そうなの?
ごろぉ:ああ。通常スプライト処理は、『マスク画像』という切り抜き画像を作らなければならないが、これにはその必要が無い
はずな:へぇ…良く解らないけど便利なんだ?
ごろぉ:…と思う
 
ごろぉ:さて、今回作った画像形式の特徴をまとめるとしよう
●可逆圧縮である
●フルカラー対応
●背景透過が出来る
はずな:ねぇ、これ見て思ったんだけどさ
ごろぉ:何だ?
はずな:PNG圧縮の方が何十倍優れてるのかな…?
ごろぉ:…言うな
 
今回作った『独自圧縮形式保存』のサンプルはこちらです。(zip圧縮 100,287 バイト)

戻る
メインページ倉庫サンプル置き場