background

スポンサーサイト

--年--月--日(--)

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


アウトライン。

2017年10月18日(Wed)

ここにGR-700があるじゃろ?

171018-01

これがこうなって

171018-02

あとこうして

171018-03

こうじゃ。

171018-04

って、ちょうど一年ぐらい前にも同じネタやってるし。ファンアートだから載せないとか言ってた舌の根も乾かないうちにこれだし。まあ、枡久田マスクさんのR-707に合わせる絵がやっとできたから、自分で自分を大目に見ることにする。

足元に置くものの絵を作ろうと思ったら、どうしても俯瞰にならざるを得ないというか。すると今度は人物の頭しか見えないし、ギターも見せようと思ったら構図もありそうなシチュエーションも限られてくるし。案外楽器絵って厳しい。というか、無知だけに何か間違えてそうで怖い(笑)。

人物とケーブルは手描き、右の椅子に載ってるマニュアルは公式のものを貼り込んじゃった。

で、一枚の絵を作るのにSuperflyとFireflyとプレビューと手描きを合成したわけだけども。Fireflyとプレビューは輪郭線だけを描画するためにレンダリングしたわけで、このFIreflyの輪郭線がちょっとめんどくさかった。

171018-05

Fireflyレンダリングオプションのトゥーンの輪郭(Toon outline)はマテリアルのToon IDごとに、ノイズは入るけれどもなかなかいい感じで輪郭線を引いてくれる機能だ。たとえば頭と胴体でマテリアルが分かれているけれど、境界線を区切りたくないという場合には、同じIDを振っておけば線が描画されない。

ところがまあ、Superfly用にマテリアルを調整したり、色々やっているとこのToon IDがどうなっているかなんてまったく把握できないわけだ。同じ材質っぽいところは同じマテリアルファイルを適用してるけど、そうすると逆に線を引きたい箇所なのに描画されない、なんてことが起こる。そもそも物理サーフェイスノードを使っていたらIDそのものが定義されてない。万全を期すなら、すべてのマテリアルグループごとにPoserサーフェイスノードを作成して、個別のIDを振っておきたい。

そこでシーンに並べたアイテムを眺めて暗澹とするわけだ。なにせ自分で作ったターナーだけでも20近いマテリアルグループがある。

171018-06

誰か、そういうPythonスクリプト作ってー!><

と絶叫しながら、とりあえずその場は手作業で乗り切った。だってモデリング脳からようやく絵作り脳になって、次はお絵描き脳にならないといけないのに、プログラミング脳に切り替える余裕なんてないしー。

でも次は手作業ではやりたくない。じゃあ絵が完成した今やるしかないよね。

細かく書くとややこしくなるから省略するけど、とりあえずPoserサーフェイスノードは新しく作成された時、必ず重複しないToon IDを持っている。ということは、全部のマテリアルグループに新しくルートノードを作成する、というスクリプトがあればいい。全部のマテリアルグループにアクセスするのは難しそうだから、WacroのShiftキーを押したら全部に適用される機能、あれを使おう。

というような感じでマニュアルと既存のスクリプトをコピーしながらPythonスクリプトを書く。リファレンスマニュアル、引数の記述が間違ってたんだけど……勘弁して。

171018-07

でもって作ったスクリプトをアプリケーションフォルダのRuntime>Python>poserScripts>Wacros>UserDefinedフォルダに放り込む。

171018-08

Poserを再起動すると、マテリアルルームのWacroの下にスクリプトが表示される。ところが、これはShiftキーを押下しながら起動しても、残念ながら全部のマテリアルグループに適用されることはないみたい。

仕方ないので、元からあるWacroボタンを書き換えることにする。どうせ元からあるやつ、古いものばかりでRemove Detached Node(未接続のノードを消すやつ)しか使ってないし。

171018-09

WacrosフォルダにあるmainWacors.pyというファイルがWacroボタンを定義していて、毎回起動時に実行されている。これの適当な行を自分の作ったスクリプトを参照するように書き換える。

171018-10

するとこうなる。

171018-11

ついでにレンダラやレンダリングオプションを書き換えるように記述を追加して、とりあえず適当なフィギュアを選択してShift+クリック。で、そのままレンダリング。

171018-12

これが

171018-13

こうなる。らくちーん。

Python、書いているうちにちょっと思い出してきて、別にWacro機能使わなくても作れるような気がしてきたんだけど。まあいいかな、需要もなさそうな気がするし……。

スポンサーサイト


踏んじゃった。

2017年10月10日(Tue)

そんなわけで「踏み踏みするやつ」ことGR-700をこしらえてみた。

171010-1

なんかね、ギターシンセってギター(コントローラ)だけじゃギターの音しか出なくて、ほわほわした変な音を出すにはこんなお弁当箱を接続しなきゃいけないんだって。ってそんな程度の知識なんだけども。

こんなカッチリしたものにどんだけ日数かけてんだってツッコミはありそうな気がするけど、色々間違えたり落書きしたり動画を漁ったり、タイムロスは致し方ないというかまあ自業自得。

171010-2

無駄にゴチャっとした背面はもはや自己満足。一応電源スイッチとかプロテクトスイッチとか、あと肝心のフットスイッチあたりは可動するようにフィギュア化。そして先っぽだけのギターケーブルを着用できるようにコネクタ部分にも骨を仕込んだり。

っていうか電源ケーブルを作っていないことに今気がついた。

マテリアルはSuperfly基準で、もうFirefly要らないよね~などと言いつつ一応Fireflyも設定しておいた。とはいえもうFireflyでリアル系レンダするノウハウが忘却の彼方というか、ひたすら面倒くさかったので適当に片付ける。

171010-3

その代わり一応トゥーンマテリアルを別に作ったり。(ケーブルは先っぽだけしかないんだってば)

171010-4

あとプレビューレンダ用の白塗りマテリアルとか。影が真っ赤なのはシーンファイルの設定で、その方がPhotoshopで抽出する時に楽だから。

Superflyでは基本的にPhysicalSurfaceノードを使用。金属の上に塗装されている部分では、レイヤー機能を使ってもいいんだけど簡略化のためにメタルマップを作成。

171010-5

変にサビたり曇ったりしてないなら、金属かそうでないかは白黒で書き分けられるのでとても単純。間の赤い数字はウィンドウ部分に使用する発光マップで、色を使ってるということはガンマ値は2.2(レダリング設定を使用)にしないといけないんだけど。ところがバンプマップやトランスマップなどモノクロのマップは通常ガンマ値1.0を使わなきゃいけない。まあ、値が1と0しかないから、ガンマ値がいくらでも影響ない(1と0はガンマ値によって変化しない)ということでマップを共用。ちなみにどうしてもマテリアルごとにガンマ値を変えたい時は、数値演算ノードかガンマノードを挟むといいと思う。

良い子はマネしないで素直にマップを分けようね、みたいな。

171010-6

環境マップはこんな感じで、先に拡散色マップを作ってから分離。数字が書き込まれているということは、値を変えようと思ったらマップそのものを変えなきゃいけないわけで……。

本当はデジタル表示をダイヤルで動かす仕組みとか考えていたんだけど。

Rolandから落としてきたユーザーマニュアル読んだら、どうも単純に0から9まで表示させればいいというものでもないようだったので、考えているうちに「手で描きゃいいだろ!」みたいなキモチになって諦めた。

そんなことより次は立てるやつを作るんだ。ていうかその前に、せっかく作ったんだから一枚絵を作っておきたい。おきたいんだ。

実はもうひと月ぐらい、足元が見える構図で悩んでいたりして(笑)。





Menu

Profile

Kyotaro

確定名:Kyotaro
ネタを探しているらしい。

Categories

Calendar

09 | 2017/10 | 11
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 - - - -

Comments

Archives

Track back

RSS feed

Links

Search

※2011年4月6日のサーバ障害の為、エントリのアドレスが以前のものからズレています。当Blogのエントリにリンクを張っておられた方は、お手数ですがアドレスのご確認をお願い致します。

※Internet Explorer非推奨。


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。