スポンサーサイト

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

続・頂点AOベイク

たくさんメッシュがあるのに一つ一つベイクの設定するの手間だよ~という話をしていたところ
親切にもまとめてベイク設定をできるスクリプトを提供していただけた方が!
ymt3Dさんどうもありがとうございます!おかげさまでとっかかりがつかめました!

・というわけでブロック街に適用したら効果てきめん!
150113BG_a.jpg
・比較対象としてベイクなしの頃のもの
1401012c_SSAO.jpg

比べると一目瞭然で、接地感が出て、なじみの良い絵面になりました!
これでさらにUNITY上でリアルタイムシャドウを落とせればひとまず目指した絵作りの目標は達成できそうです。

しかし、これはスクリプトが無ければとてもやる気にならない処理だったのでそういう意味でもymt3Dさんに感謝。
なんとか自力でICEの適用なども追加できたので自分のスキルアップにもつながりました。ありがとうございます!
便利ですね!スクリプト!(いまさら)

これでさらにいろいろな可能性が広がってきた感じ。ますます面白くなってきた!
スポンサーサイト

頂点AOベイクの威力

昨日一日背景のビジュアル向上のためにいろいろ試した結果、
自分の背景フォーマット的には頂点カラーによるAOの焼きこみが一番効果的という結論。

頂点ではなくテクスチャにベイクしたほうが上等ではあるのだけど、
タイリングテクスチャ用とは別にUVを編集しなくてはならなかったり、
管理するテクスチャの枚数が増えたりするのは作業コスト的に嬉しくない。
反面、頂点カラーならUVもテクスチャも触らずに好きなだけいじれるし修正も容易。
なにより3Dツールの中で完結してくれるのでありがたい。

今まで問題だったのは頂点カラーによるテクスチャブレンディングとどう両立させるかというところで、
それが今回解決したので良かったという話。

・いつもの背景with頂点カラーAOベイク
150111BG_a2.jpg
・岩肌のテクスチャを変えてみた
150111BG_a.jpg
・もちょいアップで
150111BG_b.jpg
全体に絵にぐっとしまりが出た印象。やっぱ暗くなるべきところが暗く描写されてると単純に説得力が上がっていいね。

今作ってる背景シェーダーは頂点カラーRGBAのうち、RGBを使って3枚のテクスチャのブレンドを調整していて、
残ったAチャンネルで陰影の調整を行う仕様にしている。
問題は、SIの頂点ベイクはRGBAの全部に対してベイクをしてしまうため、せっかく塗り分けたRGBが失われてしまうこと。
で、これを回避するために今回思いついたのが別の頂点カラーセットにベイクして、
そのベイク結果をICEをつかって最初の頂点カラーのAチャンネルに転送してあげるということ。
これが意外と簡単に実現できたのでちょっと感激。もっとはやくやればよかった。

というわけでちょっといい感じの結果が得られそうな頂点AOベイクだけど、唯一の問題点は
ステージ上にある全てのメッシュに対して一個一個rendermapとICEツリーを設定するのが地味に手間だということ。
一個に付きベイク時間込みで1分かからないんだけど、メッシュが大量かつ繰り返し作業なので地味にめんどくさい。
全部まとめてガーッとやれたらいいんだけどな…。
そんなときにスクリプトの出番だと思うんだけど…。難しい。
スクリプトのログのコピペだと、そのログのメッシュに対してしか有効ではないので、
他のメッシュに対しても同じ処理を繰り返したいときにどう書けばいいのかが分からず詰まってしまう。
「selection」とかを使えば良さそうなのだけど…。保留!

ひとまず今日はここまで!

SSAO悪あがき

昨日の続きで何とかしてsoftimageのビューポート内でもう少しリッチに見せられないか、接地感をなんとかできないか、
というのがどうしても諦めきれず、いろいろと試行錯誤。

●SSAO
その一つに、softimageのハイクオリティービューポートの機能を応用できないか、という方向があったんだけど、
どうもハイクオリティービューポートではcgfxシェーダーを適用したマテリアルではcgfxシェーダーが優先されてしまい、
そのマテリアルにはシャドウマップもSSAOも無効になってしまう様子。
(MSAAとかはちゃんとかかってくれるから非常に使えるオプションではあるんだけど!)
これは前から分かってたことではあるんだけど、もし仮に合成できたらどんな見た目になるかな、ってなことで
フォトショで試しに合成。

↓元の画像
1401012c_SSAO.jpg
↓白いconstantマテリアルに置き換えてハイクオリティービューポートでSSAOを適用>その後フォトショでややぼかし
1401012b_SSAO.jpg
↓上記二つを乗算した結果
1401012a_SSAO.jpg
あ~、良い。見やすい。SSAOやっぱり良いなぁ。接地感が段違い。まさにこれが欲しい。

この合成をなんとかリアルタイムでできないか。
だが今のところ有望そうな手段は思いつかず。
問題点としては
・ハイクオリティービューポートでcgfxとSSAOを両立できない
・SSAOの結果をcgfx上から取得できない。(これができればかなりいいのだが!!)
・そもそもSIのSSAOはそのままだと汚くて上記のようにガウスぽかしを後処理でかけないと見れたものじゃない。
というところでやはり実現はむずかしそう。逆に言うと上記の問題が解決できればまだやりようが出てくる。
もうちょっと調べてみるか…。

●ステンシルシャドウバッファ
ずっとシェーダーの研究を続けていたおかげで昔よりはステンシルシャドウについての理解はちょっと深まったので、
softimageのcgfxシェーダーでもなんとか再現できるんじゃないのか?と思っていろいろ試した…
んだけど結論から言うと今のところ成果ゼロ。
改めていろいろ調べたのでstencil bufferについての理解はちょっと深まったはずなんだけど、
SIのRTビューポート内にどうしても結果を反映できない。まさにうんともすんとも言わない。
そもそもSIのRTビューポートはstencil bufferへのアクセスを許可してないっぽい?
アクセスできるならどこかで誰かがすでにやっていそうな気もするし、そういう話を聞かないということはやはりできないということか?
とはいえなにぶんstencil buffer関連はまじめに触るのは初めてなのでこちらのコードが間違っている可能性も高い。
これももう少し調べてみるか。


落ち影もSSAOもunity上では問題なく表現できるのは分かっているんだけど、可能な限りsoftimage上で
完成品に近い形でプレビューしながら作成したい、というのがあるんだよね。
できれば一つのツール上でアート系の作業を完結させたいというか。
贅沢な悩みではあるんだろうけど、個人的にはそこが大事なのです。

復帰&街のようなもの&頂点ライト

やっとこさ仕事が山を越えたのでしばらくぶりにブログ解禁。

とはいえちょこちょこ隙を見つけては実験、研究、試作は続けていたのでいくつか蔵出し。

●モジュラーアプローチで街のようなもの
1401011b_city.jpg
1401011a_city.jpg
積み木やレゴブロックのように基礎形状のブロックだけを用意して組み合わせでマップをつくるという手法にチャレンジ。
ぜんぜんパーツは足りてないけどローカロリーにそれなりのものが作れそうな手ごたえ。
タイリングテクスチャーと頂点カラーのみで、基本的にはUV展開を工夫する感じ。
softimage上のプレビューじゃあ接地感が足りないけど、unityに持っていってシャドウマップを適用すればもう少し見れるようになるかな。
いつも言っているがsoftimageのプレビュー上でもうすこしなんとかならんもんか。
焼付けとかは手間も時間もかかるし結果がスタティックだからあまり好きじゃないんだよなー。
softimage上でポストプロセス的なものを走らせる裏技とかないだろうか。fabric engineさんお願いします!

●頂点ライトの改良
1401011d_plight.jpg
1401011c_plight.jpg
ポイントライトをいろいろ最適化。処理の軽さと表現力を天秤にかけて今はこんな感じ。
頂点ごとのライトの当たり具合を頂点シェーダー内で算出してその結果をフラグメントシェーダーに渡してからテクスチャと掛け合わせたりしてリッチに見せかける手法。
ライトの減衰が今まではリニアだったのを、ちゃんと距離の二条に反比例するように。
洞窟とか屋内の密閉空間で雰囲気を出していくには必須。
1401008a_hunter_201410120106315e7.jpg
キャラのシェーダーにも同様の修正を施したので、リムライトとあいまってアメコミみたいなドラマチックなライティングも。
unity上に持っていけば最大4つまでのポイントライトを頂点シェーダーで扱える見込みなので、よりリッチな見た目が期待できそう。

久しぶりの連休、やりたいことがいっぱい溜まっているので時間を有効活用しなくては。
主にモデリングしたり、シェーダー描いたり、コード書いたりして満喫したいぜ!!
(=いつもとかわらないぜ!)

背景:川岸さらにさらに続き

遠景に森っぽいものを表示してみた。多少は変化が出たかな。
ものとしては近景と同じ木を引き伸ばしただけのものだけど、思ったよりは悪くないか。近づくと見れたものじゃないけど。
余裕があればもっとちゃんとしたアセットに切り替えよう。現段階ではこれで進めちゃおう。
140506a_BG.jpg
あと空気感がそっけなかったのでフォグがもうちょっと強く出るように調整。
ライティングもちょっと変化をつけてみた。のっぺり感は薄れたかな。

今週末でUNITYに出して見たい。本来はもっと早くゲーム中の視点で確認しながら作るべきだったか。
どうも作ってると夢中になって、「もうちょっと形になってから」と思っちゃってイカン。
途中でもいいからとっととゲーム画面に出して問題点を洗い出しつつイテレーションを重ねていかないと。
次からはそうしよう。
プロフィール

JNY

Author:JNY
某ゲーム会社勤務
趣味と修行をかねて個人製作中
Softimage & Cgfx & Unity

最新記事
最新コメント
月別アーカイブ
カテゴリ
カウンター
twitter

Twitter Updates

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