Unity ドット絵がシーンで変色・ぼやけてしまう問題の対策

Unity では、ドット絵のような小さい画像を扱う際に下図のように変色して表示される場合があります。

Unity ドット絵の画像と、シーン内の変色したドット絵

この場合の変色の原因は、テクスチャ(画像)の Unity へのインポート設定で、非可逆圧縮を設定したからでした。
大きな画像ならばあまり気にならないかもしれませんが、ドット絵は 1 ピクセル単位で色が目立ちます。

今回は、スプライト画像の変色を避けるために圧縮を行わせない設定手順を紹介します。
また、同じテクスチャのインポート設定の中の、画像をぼやけさせてしまう項目についても紹介します。

※ Unity のバージョン 2021.3.25f1、 TopDown Engine のバージョンは 3.2 です。
※サンプルは、見下ろし型ゲームの作成支援アセット「TopDown Engine」のサンプル KoalaDungeon を用いています。

スプライト画像の Compression (圧縮) の設定

圧縮の設定を変更するスプライト画像を Project ウィンドウで選択して、 Inspector ウィンドウで表示します。

このときの Inspector ウィンドウは、テクスチャのインポート設定の項目が表示されていて、その画像ファイルを実際のゲームのデータとしてどのように扱うかを設定します。

Inspector ウィンドウの下側に タブがついているフィールドがあるので、左側の Default を選択してください。
そうすると、 Compression プロパティが表示されるので、 None に変更して、右下の Apply ボタンで変更を適用します。

テクスチャの圧縮タイプを選択します。これによって、Unity が、適切なテクスチャの圧縮形式を選択できます。プラットフォームや圧縮形式の使用可否によって、異なる設定でも、結果的に内部的に同じ形式になる場合があります。例えば、 Low Quality Compression はモバイルプラットフォームに効果的ですが、デスクトッププラットフォームには効果がありません。

テクスチャのインポート設定 – Unity マニュアル
Unity スプライト画像の変色を防ぐために Default の Compression を None へ変更します.

その後、このスプライト画像を用いているプレハブなどをシーンで表示して確認すると、変色されずにドット絵が表示されました。

Unity スプライト画像の変色を防ぐために Default の Compression を None へ変更した結果のスプライト画像.

今回のスプライトでは、Compression の変更だけで対処できましたが、変色が直らなかったりぼやける場合は、以降の項目も確認してください。

スプライト画像の Filter Mode の設定

スプライトの画像ファイルを選択して Inspector ウィンドウにテクスチャのインポート設定を表示した状態で、 Filter Mode を確認してください。

3D 変形で伸長される際に、テクスチャをどのようにフィルタリングするかを選択します。デフォルトは Bilinear です。

テクスチャのインポート設定 – Unity マニュアル

Filter Mode が Point 以外の場合はぼやけてしまいます。

Unity 画像ファイルの Import Settings の Filter Mode が Point 以外の場合はぼやけます.

Filter Mode が Point (no filter) の場合はぼやけません。

Unity 画像ファイルの Import Settings の Filter Mode が Point の場合はぼやけません.

スプライト画像の Max Size の設定

スプライトの画像ファイルを選択して Inspector ウィンドウにテクスチャのインポート設定を表示した状態で、下側の Default タブ内の Max Size を確認してください。

インポートしたテクスチャの最大サイズをピクセル単位で設定します。多くの場合、アーティストは巨大な寸法のテクスチャでの作業を好みますが、テクスチャを適切な寸法に縮小することができます。

テクスチャのインポート設定 – Unity マニュアル

Max Size はスプライト画像の画像ファイルの縦・横の幅以上でないと、縮小された画像データになるため、画面に表示する際に拡大されてぼやけてしまいます。

スプライトの画像ファイルの縦横の幅が 64×64 pixel の場合、Max Size を画像の縦横の幅未満である 32 にすると、小さい画像を拡大するためぼやけてしまいます。

Unity 画像ファイルのサイズが Default タブの Max Size 未満だとぼやけてしまいます.

Max Size を画像ファイルの縦横の幅 (64×64 pixel) 以上の 64 以上にするとくっきり表示されます。

Unity 画像ファイルのサイズが Default タブの Max Size 以上ならばぼやけません.

まとめ

今回は、Unity のドット絵を Scene ウィンドウで表示した際に変色してしまう際の対処法と、そのほかのテクスチャのインポート設定によりぼやけてしまう例と対処法を紹介しました。

Unity では画像ファイルのアセットごとに非可逆圧縮を設定することができ、既定値ではそれを行う設定になっていること、それを無効にすることで圧縮による変色が起きなくなることを設定前後の比較画像で説明しました。

参照サイト Thank You!

記事一覧 → Compota-Soft-Press

コメント

Ads Blocker Image Powered by Code Help Pro

お願い - Ads Blocker Detected

このサイトは広告を掲載して運営しています。

ポップアップを閉じて閲覧できますが、よろしければ

このサイト内の広告を非表示にする拡張機能をオフにしていただけませんか?

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

We have detected that you are using extensions to block ads. Please support us by disabling these ads blocker.

タイトルとURLをコピーしました