2024/03/11(月) [n年前の日記]
#1 [cg_tools] ドット絵を拡大するツールを試用
ドット絵(Pixelart)を拡大したい。拡大と言っても、最近傍法(Nearest neighbor)や線形補間(Linear Interpolation)といった一般的に使われるアルゴリズムではなく、ドット絵に特化した scale2x、hqx、xbr、xbrz 等のアルゴリズムを使ってみたい。
英語版 Wikipedia の記事を眺めると、様々なアルゴリズムが存在していることが分かる。
_Pixel-art scaling algorithms - Wikipedia
特に、各アルゴリズムの変換結果を一覧にしたサンプル画像が分かりやすかった。
_File:Pixel-Art Scaling Comparison.png - Wikimedia Commons
以下のページも参考になりそう。
_Pixel Scalers
とりあえず関連ツールを探して試用してみたのでメモしておく。環境は Windows10 x64 22H2。
英語版 Wikipedia の記事を眺めると、様々なアルゴリズムが存在していることが分かる。
_Pixel-art scaling algorithms - Wikipedia
特に、各アルゴリズムの変換結果を一覧にしたサンプル画像が分かりやすかった。
_File:Pixel-Art Scaling Comparison.png - Wikimedia Commons
以下のページも参考になりそう。
_Pixel Scalers
とりあえず関連ツールを探して試用してみたのでメモしておく。環境は Windows10 x64 22H2。
◎ gimp-plugin-pixel-art-scalers :
_bbbbbr/gimp-plugin-pixel-art-scalers: Gimp plugin for scaling / rescaling images with Pixel Art Scaler algorithms such as hqx, xbr and scalex
画像編集ソフト GIMP に追加すれば使えるようになるプラグイン。実行形式の形で配布されてる。
それらしい変換結果が得られた。
画像編集ソフト GIMP に追加すれば使えるようになるプラグイン。実行形式の形で配布されてる。
- Windowsの場合、Windows_plugin-pixel-art-scalers.exe を入手して、GIMPのプラグインフォルダにコピーする。
- フィルター → 下塗り → Pixel Art Scalers ... というメニュー項目が追加される。
- hqx、xbr、scale2x 等、複数のアルゴリズムの中から選択できる。
- Windows10 x64 22H2 + GIMP 2.10.34 Portable で動作確認した。
それらしい変換結果が得られた。
◎ G'MIC :
G'MICというフィルタ集にも、関連するフィルタが用意されてる。
- フィルター → G'MIC-Qt を選択。
- 1つは、「xbr2x」 というフィルタ名で用意されてる。
- 1つは、「Upscale [Scale2x]」 というフィルタ名で用意されてる。
- GIMP 2.10.34 Portable + G'MIC-Qt 3.2.4 で動作確認した。
◎ Image Filter Collection :
_Salmakis/ImageFilterCollection: Collection of ImageFilters for Pixel Art resizing. (HQ, XBR, etc)
_new ImageFilter tool (scale Pixel Art with XBR/XBRz or HQ) | RPG Maker Forums
スタンドアローンで動作する拡大ツール。このツールだけ入手すればそれだけで利用できる。
_new ImageFilter tool (scale Pixel Art with XBR/XBRz or HQ) | RPG Maker Forums
スタンドアローンで動作する拡大ツール。このツールだけ入手すればそれだけで利用できる。
- ImageFilterCollection_2.zip を入手。
- 解凍して任意のフォルダに置いて、ImageFilter.exe を実行。
- HQ, LQ, XBR, XBRz が選べる。
- スタンドアローンで動作するので導入しやすい。
- Windows10 x64 22H2 上で動作確認した。
◎ 2dimagefilter :
_2dimagefilter by Hawkynt
_Hawkynt/2dimagefilter: A collection of image filters, some especially suited to scale-up low res computer graphics.
スタンドアローンで動作する拡大ツール。Paint.NET版もあるように見える。
_Hawkynt/2dimagefilter: A collection of image filters, some especially suited to scale-up low res computer graphics.
スタンドアローンで動作する拡大ツール。Paint.NET版もあるように見える。
- Standalone.zip を入手して解凍。
- ImageResizer.exe を実行。
- Windows10 x64 22H2上で動作確認した。
- 膨大な数のフィルタが用意されてる。
◎ gimp-superxBR :
_abelbriggs1/gimp-superxBR: A GIMP plugin for scaling pixel art using Hyllian's Super-xBR algorithm
画像編集ソフト GIMP に追加する Python-Fuスクリプト。
注意点。Windows上で使う時は、superxBR.py の1行目を、#!/usr/bin/env python から #!python に変更しておいたほうがいいかもしれない。GIMP側は .pyファイルの1行目を見て、そのスクリプトを何のプログラムで動かすべきなのか判断するけれど、#!/usr/bin/env python と書いてあると、/usr/bin/env を呼んで使うスクリプトなのだと判定されてしまって、Python-Fuスクリプトとしては認識されない。*NIX上では件の記述でも問題無いらしいのだけど…。
さておき。superxBR.py の結果だけど、以下のような結果になってしまって…。
ここまでメモしておいてなんだけど、これはちょっと使えない感じだなと…。
画像編集ソフト GIMP に追加する Python-Fuスクリプト。
- superxBR.py を入手して、GIMPのプラグインフォルダにコピーする。
- フィルター → 強調 → Super-xBR(py) というメニュー項目が追加される。
- Windows10 x64 22H2 + GIMP 2.10.34 Portable で動作確認した。
注意点。Windows上で使う時は、superxBR.py の1行目を、#!/usr/bin/env python から #!python に変更しておいたほうがいいかもしれない。GIMP側は .pyファイルの1行目を見て、そのスクリプトを何のプログラムで動かすべきなのか判断するけれど、#!/usr/bin/env python と書いてあると、/usr/bin/env を呼んで使うスクリプトなのだと判定されてしまって、Python-Fuスクリプトとしては認識されない。*NIX上では件の記述でも問題無いらしいのだけど…。
さておき。superxBR.py の結果だけど、以下のような結果になってしまって…。
ここまでメモしておいてなんだけど、これはちょっと使えない感じだなと…。
◎ xbrzscale :
_atheros/xbrzscale: Image upscaling commandline tool using xBRZ algorithm
xbrzscale というツールもあるらしい。ただ、ビルドしないと実行形式が得られないようだなと…。
xbrzscale というツールもあるらしい。ただ、ビルドしないと実行形式が得られないようだなと…。
[ ツッコむ ]
2024/03/10(日) [n年前の日記]
#1 [python] Python + glfwで疑似3D道路の描画実験中。その8
Windows10 x64 22H2上で、Python 3.10.10 64bit + glfw 2.7.0 + PyOpenGL 3.1.6 + Pillow (PIL) 10.2.0 を使って実験中。疑似3D道路を描画してみたい。
テクスチャ画像を修正中。もっとフラットな絵柄にできないものかなと…。
before。HSPで実装してた頃の見た目。
after。今回の修正後の見た目。
たいして違いがないような…。一応、8x8ドット単位を意識しつつ、昔のMZ-700のキャラグラ風を目指したものの、木の部分がどうにも…。どういう絵柄を自分は求めてるのか、そこからして分からない…。
「フラットデザイン 木」で画像検索して、ヒントになりそうなスタイルがないかと眺めてるけど、この手の画面に出したら合わない感じのスタイルが多くて、あまり参考にならず…。
テクスチャ画像を修正中。もっとフラットな絵柄にできないものかなと…。
before。HSPで実装してた頃の見た目。
after。今回の修正後の見た目。
たいして違いがないような…。一応、8x8ドット単位を意識しつつ、昔のMZ-700のキャラグラ風を目指したものの、木の部分がどうにも…。どういう絵柄を自分は求めてるのか、そこからして分からない…。
「フラットデザイン 木」で画像検索して、ヒントになりそうなスタイルがないかと眺めてるけど、この手の画面に出したら合わない感じのスタイルが多くて、あまり参考にならず…。
[ ツッコむ ]
2024/03/09(土) [n年前の日記]
#1 [python] Python + glfwで疑似3D道路の描画実験中。その7
Windows10 x64 22H2上で、Python 3.10.10 64bit + glfw 2.7.0 + PyOpenGL 3.1.6 + Pillow (PIL) 10.2.0 を使って実験中。疑似3D道路を描画してみたい。
ビルボードとして表示してる画像をちょっと変えてみたくなってきた。ドットエディタ EDGE2 1.19 dev010 や画像処理ソフト GIMP 2.10.34 Portable を使って画像を修正してみたけど、これが上手く行かない。
テクスチャのサイズを小さくしたら、不透明部分と透明部分の境界に黒い線がうっすらと載ってしまう状態になってしまった。OpenGL側のテクスチャ補間指定を、GL_LINEAR から GL_NEAREST にしてみたら、黒い線は無くなってくれたけど、今度は拡大縮小がガクガクした感じになってしまって…。GL_LINEAR を使って滑らかな見た目の拡大縮小にしたいのだけどな…。
矩形塗り潰しだけを使った、フラットでシンプルな絵柄にしてみたかったけど、スクーター、車、家はともかく、木と草むらが全然ダメダメな見た目で…。横長矩形のみ、縦長矩形のみで描いてみたけど、実際に画面に出してみると酷い見た目になってしまう。まだ実写風のテクスチャのほうがいいかな…。
ビルボードとして表示してる画像をちょっと変えてみたくなってきた。ドットエディタ EDGE2 1.19 dev010 や画像処理ソフト GIMP 2.10.34 Portable を使って画像を修正してみたけど、これが上手く行かない。
テクスチャのサイズを小さくしたら、不透明部分と透明部分の境界に黒い線がうっすらと載ってしまう状態になってしまった。OpenGL側のテクスチャ補間指定を、GL_LINEAR から GL_NEAREST にしてみたら、黒い線は無くなってくれたけど、今度は拡大縮小がガクガクした感じになってしまって…。GL_LINEAR を使って滑らかな見た目の拡大縮小にしたいのだけどな…。
矩形塗り潰しだけを使った、フラットでシンプルな絵柄にしてみたかったけど、スクーター、車、家はともかく、木と草むらが全然ダメダメな見た目で…。横長矩形のみ、縦長矩形のみで描いてみたけど、実際に画面に出してみると酷い見た目になってしまう。まだ実写風のテクスチャのほうがいいかな…。
[ ツッコむ ]
以上、3 日分です。