CGTextures - NormalMapScript - PSScriptPS7
久しぶりの更新になりました。
現在再びモデルを作っております。もう少し見られるようになってから公開してゆきたいと思います。
今回はタイトルにもあるとおりにノーマルマップに関することです。
ノーマルマップの取得の仕方は色々あるのですが、
最も手軽なのはフォトショップで作ることです。
nvidiaのページにフォトショップ用のプラグインがあります。フリーライセンスのようです。
以前仕事で使っていたのですが、思ったほどでこぼこ感が出てくれません。
何かの時にノーマルマップについて調べていたらそのプラグインを使ってよりでこぼこ感を出す方法が書いてありました。
しかし、そのページのトップページはすでに自分のブックマークに保存してあったので
ふーん、という感じにほっておいたのですが、ちょっと必要そうだったので改めて探しました。
いざ探すと見つからないものです。数時間費やしました。
それで見つけて思い出したのがこのページです。[CG Textures]
テクスチャサイトとしても有名なのではないでしょうか?
一度もテクスチャを落としたことはありませんが、うわさでは一日にダウンロードできる枚数を制限しているようです。
そして、このページの上にある「TUTORIALS」が今回探していたページです。
下のほうにある「Recovering detailed normalmaps from photo textures」がそれです。
英語なので不確かですが、プラグインを適用した後、そのレイヤーをコピーしてガウスでぼかしを適度にかけ、
オーバレイで重ねてゆくらしいです。
どうも実際にやってみると、ぼかしのを増やすと形があまくなりますが、でこぼこ感は出ます。
逆に減らすと、くっきりしますがでこぼこ感はあまり出ません。
しかし、そのままよりはよっぽどましです。
そこで、レイヤーをコピーしてぼかしをかけて、オーバレイに変更の単純作業をスクリプトほ方ででやってもらいました。
それがこれです。
n = 0; var docRef = activeDocument; var ActLayer = docRef.activeLayer; lsObj = docRef.layerSets.add(); lsObj.name = "オーバーレイ"; for (i=1; i<=20; i++) { ActLayer.duplicate(); ActLayer.applyGaussianBlur(1.0); ActLayer.name = "blur"; ActLayer.blendMode = BlendMode.OVERLAY; ActLayer.moveToEnd(lsObj); n = n + i; }
しかし、これを使うにあたり、注意点があります。
ぼかしのフィルタをかけるということは画像の切れ端がぼかされて出てきてしまいます。
切れ端にかからないUVであれば問題ないのですが、タイリングさせている場合は一手間必要となります。
それは長くなるので次に回します。
このスクリプトを作る時に色々と調べていてこんなものも見つけました。
Adobe – Photoshop : For Windows : Photoshop 7.0 Scripting plug-in v.1.0.2a
英語のページですが、要するにフォトショップ7でスクリプトを使うプラグインだそうです。
今更そんな古いバージョンを使っている人もいないのかもしれませんが、自分が使っているので載せておきます。
これで会社だけではなく家でも試すことが出来ます。
09.09.08 @ 12:32 AM
[...] 前回書いたノーマルマップ作成の補助スクリプトですが、シームレステクスチャに適用する際の注意点を書いておきます。 [...]