mieki256's diary



2014/07/07(月) [n年前の日記]

#1 [cg_tools][dxruby] メカっぽいテクスチャを作るツールを書いた

全ての処理を GIMP の Script-fu で書けないかと試行錯誤していたのだけど、TinyScheme、よく分からんです。作業効率が悪過ぎる。面倒臭くなってきたので、Ruby で書いたスクリプトをそのままアップロードして、一段落しようかなと。

ということで、こういうテクスチャを作るツールを、Windows7 x64上の、Ruby + DXRuby + rcairo で書きました。

ss1.png


_mechatexgen.rb をDLして、ruby mechatexgen.rb で実行できます。

以下に、ocra で exe化した版も置いときます。こちらの版は、Ruby等をインストールしていない環境でも動くはずです。

_mechatexgen_20140707.zip (5MB)

解凍すると mechatexgen.exe が入ってますので、実行していただければと。 また、DOS窓上で、mechatexgen.exe --help と打てば、コマンドラインオプションのヘルプも表示されます。
> mechatexgen.exe --help

Usage: mechatexgen [options]
    -r, --rand VALUE                 random seed
        --width VALUE                image width [512]
        --height VALUE               image height [512]
    -o, --output VALUE               save filename [out.png]
    -h, --help                       Show this message

さて、このままでは何に使えるのかよく分からないテクスチャですけど。GIMP で少し手を加えると、以下のような見た目になってくれます。

ss2.png

上記のような見た目にする Script-fu も置いときます。

_mecha-tex-make-up.scm
  1. mecha-tex-make-up.scm をDLして、GIMP用の所定のフォルダにコピー。
  2. GIMP を再起動。(フィルタ → Script-fu → スクリプトを再読み込み、でもOK)
  3. 前述のツールで作ったテクスチャ画像 (out_0.png 等)を、GIMPで開く。
  4. メニューの Script-fu → Utils → Mecha tex make up を選ぶ。
これで、メカっぽいテクスチャになるかと。

メニューの位置は以下を参考にしてください。

ss3.png

Script-fu を GIMP に追加する方法は、ググってみたら _GIMPにスクリプト(Script-Fu)を追加する方法 が参考になりそうです。GIMP 2.8 の場合は、一般的には C:\Users\ユーザー名\.gimp-2.8\scripts\ 以下に .scm をコピーすればいいんじゃないかと。たぶん。

GIMP上でやってること。 :

GIMPでやってるのは、以下のような並びでレイヤーを重ねてるだけです。
  1. ソリッドノイズフィルタ → 着色。レイヤーは焼き込みモード。不透明度25%。
  2. ソリッドノイズフィルタ → 着色。レイヤーはスクリーンモード。不透明度25%。
  3. ソリッドノイズフィルタ → 着色 → HSVノイズ。レイヤーは焼き込みモード。不透明度25%。
  4. 元画像に輪郭抽出。レイヤーは乗算モード。
  5. 元画像にガウスぼかし。レイヤーはソフトライトモード。不透明度50%。
  6. 元画像にガウスぼかし。レイヤーは除算モード。不透明度50%。
  7. 元画像にエンボスフィルタ。レイヤーは乗算モード。
  8. 元画像。

2017/03/19追記。 :

DropboxのPublicフォルダが死んだのでファイルを置き直し。

#2 [ruby] Ruby 1.9.x と Ruby 2.x と ocra

Ruby 2.x で ocra を使って Rubyスクリプトを exe化したら、25MBぐらいになってしまってビックリ。デカすぎる…。

ところが、Ruby 1.9.x で ocra を使ったら、5MB に。

どうしてこんなに差がつくのだろう…。

#3 [prog] Windows上で動くSchemeをインストール

GIMP の Script-fu は TinyScheme なる言語?らしいのだけど。GIMP 上の Script-fuコンソールが実に使いづらくて、ちょっとした動作確認もしづらいわけで。

てなわけで、 _Racket (旧名: PLT Scheme) という、Scheme 系の環境を Windows上にインストール。以前も 5.x をインストールしてたのだけど、今現在は 6.x らしいので、せっかくだからこの際更新。

少し触ってみたけれど。乱数(srand, rand)が無い…。while が無い…。ループを再帰で書かないといかんのか…。ツライ…。

Scheme だの Lisp だの、そのあたりは数学者とか天才のためのプログラミング言語だなと再認識。自分のような凡人には厳しいです。

いっそのこと、GIMP の Python-fu (GIMP Python)で書いちゃおうかな。だけど、Python-fu は使える環境を整えるまでが面倒臭い印象があって。いや、GIMP 2.8 以降は、Windows環境でもすんなり使えるのかもしれないけど。

まあ、とりあえず、もうちょっと Scheme でジタバタしてみます。

以上、1 日分です。

過去ログ表示

Prev - 2014/07 - Next
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31

カテゴリで表示

検索機能は Namazu for hns で提供されています。(詳細指定/ヘルプ


注意: 現在使用の日記自動生成システムは Version 2.19.6 です。
公開されている日記自動生成システムは Version 2.19.5 です。

Powered by hns-2.19.6, HyperNikkiSystem Project