2011年8月18日木曜日

仮想化ソリューションさん続き


体ができてしばらく放置気味だったけど、頭に着手。こんな感じ。



レンダリングはblenderのFreestyle統合版。
最近コードベースが2.59になってよさげ。

眉忘れてたので追加。大事なメガネも忘れちゃいけない。



眉毛とメガネって印象変わるなーと実感する結果にw
髪をそろそろ真面目に作り始めないと終わりが見えない予感。

次のイメージキャラクター的なものも出てきてしまったので
ペースを上げていきたいところ。

---------------------------------------------------------------
コメントなどありましたらこちらへ->web拍手

2011年7月31日日曜日

今のところこんな感じ

前回作り始めたの、とりあえずこんな状態に。
レンダはいつもと同じFreestyle統合版blender(ver. 2.58.1)



というわけで作り始めた某M$の仮想化ソリューションさん(仮称)ですが
作業時間は1日平均30分ほど。で、ここまで2週間くらい。

今までだとこれくらいまで出来上がるのは3週目以降な感じなのでかなり早い予感。
従来は頭部から作り始めていたのを、今回あえて体からつくるようにしたのが
よかったのかも。顔から作るとどうしてもいろいろテストレンダしては、
あまり意味なく悩んで手が止まったりしてしまうので。

あとblenderのToonとFreestyleのコツがなんとなくつかめてきたのか、
イメージする結果に寄せていく際に迷走することが少しは減った気も。

昔、Lightwaveとunrealのサンプルとして見たようなセルシェーディングは
blenderじゃ無理だろなーと思っていたけれど、標準でToonシェーダがついて
Freestyle統合版なんて素敵なものができたおかげで今やかなりいい感じに。

上の画像の時点ではまだ標準のToonとFreestyleのエッジだけでノードとかは
使ってないので詳細作りこみつつ、その辺も手を加えていく感じで。

---------------------------------------------------------------
コメントなどありましたらこちらへ->web拍手

2011年7月20日水曜日

なんかまたつくりはじめた

こんな感じ。



ツイッターのTLに流れてきたのを見て突発的に作り始めちゃったけど
今月中に終わらせたいところ。
多分Freestyle向けなのは相変わらずだけど、テストも兼ねてノードで
いろいろやってみたい感じで。

---------------------------------------------------------------
コメントなどありましたらこちらへ->web拍手

2011年5月18日水曜日

CUDA対応cyclesなblenderのビルドとちょっとしたベンチ

いろいろ迷いつつどうにかCUDAなCyclesをビルドできるようになったのでメモ。
ついでにCPUとGPUを比較するためのちょっとしたベンチも。


・使用したOSとハードウェア構成

OS:Ubuntu10.04LTS 64bit
CPU:PhenomII X6 1055T
チップセット:785G
GPU:Quadro600

GPUはCUDA対応のものを。ここ2・3年のnvidiaのGPUであれば多分大丈夫。
以下は手元のUbuntuなPCで行った手順を記載していますが、おそらくOSXや、
WindowsのCygwinやMinGWでも同様の流れでできるかと。試してませんが・・。



・CUDA環境の準備

まずはCUDA対応のGPUドライバとSDK、ツールキット等の開発環境の準備。
nvidiaのホームページからダウンロードしてインストール。
ドライバはv270系、SDK・ツールキットはv4.0を選択。

今回使用したのは下記のバージョン。
ドライバ:270.40
SDKとツールキット:ver4.0.13

以上のものがインストールできたら、自分のGPUが対応するCUDAのシェーダーモデルの
バージョンを調べておくとあとで少しばかり楽ができる。
CUDA SDKのサンプルに含まれているdeviceQueryやdeviceQueryDrvを実行して
確認してもOK。



・ビルドの手順

事前にインストールしておくライブラリやビルドの手順はblender.orgの公式Wikiを参考にしていけば
基本的にOK。ただし、Ubuntu10.04ではデフォルトでインストールされるboostのバージョンが
1.40と古いためエラーが出てビルドが通らず・・・それに気づくまでかなり嵌りました。

というわけでより新しいバージョンをソースからビルドしてもいいのですが、ppaでboost1.42が
提供されているのでそれを利用させていただく感じで。

$ sudo add-apt-repository ppa:lucid-bleed/ppa
$ sudo apt-get update


としてaptリポジトリに追加したら、aptitudeでいつものようにインストールすればOK。

あとはOpenImageIOとcyclesなblenderのソースをそれぞれダウンロードしてビルド。
この辺は先ほどの公式wikiに記載のとおり。

CUDA対応でビルドする場合のcmakeのオプションは手元の環境だとこんな感じ。

$ cmake ../blender
-DCMAKE_BUILD_TYPE=Release
-DCYCLES_OIIO=../oiio/dist/linux64
-DCMAKE_EXE_LINKER_FLAGS=-lGLEW
-DCMAKE_EXE_LINKER_FLAGS_RELEASE=-lGLEW
-DWITH_CYCLES_CUDA=ON
-DCUDA_INCLUDES=/usr/local/cuda/include
-DCUDA_LIBRARIES=/usr/local/cuda/lib64


CPUなどのスペックによってはcubinのビルドに時間がかかるので、始めに調べておいた
自分のGPUが対応しているシェーダーモデルのバージョンだけビルドしてもOK。

でcmakeが終わったら、あとはmake、make installすれば完成。



・実行

無事にビルドがエラー無く済んだら
$ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:../oiio/dist/linux64/lib
という感じにライブラリのパスを設定して
$ ./bin/blender
で起動。

いつものblenderが起動したらレンダラを"Blender Render"から"Cycles"に変更して、
プロパティウィンドウの"Render"タブに以下のようなレンダリングデバイスを選択する項目が
表示されているか確認




上の図のようにCPUとGPUが選べるようになっていればCUDAに対応したCyclesが
正しくビルドされてblenderから利用できる状態になっている。

ちなみに何か問題があってうまく行ってないと下の図のような感じ。




ここまで無事に完了したら先程のライブラリパスの設定を
~/.bashrcに書いたり、起動用のシェルスクリプトを作成しておくとよさげ。



・CPUとGPUでベンチ

で、せっかくビルドが完成したのでGPUでのレンダがどれだけ早いかちょっとテスト。
下図のデフォルトのシーンをパス256、解像度1280x720に設定してCPUとGPUでレンダ



その結果、およそCPUで2分だったものがGPUで1分30秒という具合に。
解像度やシーンを替えてレンダしてみましたが、やはり平均で25%ほどGPUの方が早い感じです。

ところで、今回使用したGPUのQuadro600のGPUコアはGF108相当。
GeforceでいえばGT430相当のローエンドなスペックです。
それでもドライバの最適化等によりOpenGLアプリでディスプレイデバイスとしての
利用であればGeforceのハイエンドモデル以上(Nvidiaの発表によればGTX580以上)の
フレームレートが出るというのが面白いところ。

しかし、CUDAやOpenCLなどGPGPU用途での演算能力としてはコアが持っているシェーダー数と
動作クロックに準じたものとなり、コアが同等なGeforceローエンド相当の性能しかでません。
ひとつ上のQuadro2000でもコアはGF106相当なのでミドルレンジのGeforce GTS450程度です。

そんなGPUでもこれだけの差が付くのであれば、安価に購入できるミドルレンジのGeforceを
GPGPU用に追加するというのもよさそうです。GTS450の2倍のシェーダーを備えるGTX560Tiでも
20k円なのでCyclesだけでなくLuxRender等でのレンダも考えるとコストパフォーマンスの点で
かなり魅力的です。


Cycles自体もまだ開発の初期なので、これから効率が改善されていく可能性も十分にあります。
また現状インテグレータはパストレーサーのみですが、それ以外のアルゴリズムを実装する
予定もあるそうなのでそれによってもレンダリングの高速化が期待できるかと思います。

ただ、Cyclesのプロジェクトの予定としては今後1〜2年の間に既存のblender内蔵レンダラを
置き換えられるものにするのが目標とのことなので、しばらく気長に追いかけてくのがよさそうです。



---------------------------------------------------------------
コメントなどありましたらこちらへ->web拍手

2011年5月17日火曜日

Face Bone Toolを使ってみた

前回製作中だったやつ一応完成。レンダリングはいつもどおりblender2.57系Freestyle統合版。



最初は男性素体つくろうかなっていうのと、モーション練習用になんかキャラクタデータ欲しいなと思い
作り始めたもの。ただ作ってくうちにのっぺらぼうはつまらないので顔つくって、せっかくだから髪も・・
という具合になっていってこんな感じに。

今までは口を作るのが苦手でテクスチャで済ませていたけれど今回とりあえずモデリングできた。
時間もこれくらいなら以前に比べるとそれほどかけずにできるようになってきたのもよさげ。


で、せっかくなので顔の表情をつけてみたくなったのでFace Bone Toolを試してみたり。
2.56で動作するらしいけど、2.57ではどうだろう?と思いつつ試してみたらたまにエラーが出たりする。
けれどめげずにしばらくいじってたらこんな感じにボーンとウェイトのセットアップが自動で完了してた。



とりあえずちょっと表情をいじってみた。



おもしろい。これがボタン数回押すだけでセットアップ完了するなんてありがたすぎます。
ちゃんと位置やサイズの調整をすれば適切な場所にボーンが追加できそうなので調べていく感じで。


---------------------------------------------------------------
コメントなどありましたらこちらへ->web拍手

2011年5月12日木曜日

4月に作ったものとか5月に作る(予定の)ものなど

最近作ってたくろいこはぎりぎり4月中に完成してこんな感じ。



CG-SNSに投稿したのは眼鏡とゴルフクラブ装備のほむら(弱)バージョンだけど
改めて見るとこっちもなかなか。どちらも捨てがたい。


GW中はblenderが2.57に移行したのに伴いFreestyle統合版も2.57系になったので、
まとめサイトのチュートリアルの方もそちらに準拠するかたちで更新。
Python Scripting Modeについての簡単な解説も追加。


で、そのあとに作り始めたのは今こんな感じ。



パキっとしたいかにもトゥーンシェーダーってのはまだ作ってなかった気がするので
そんな感じで。あと男キャラの素体も作ったことなかったのでそんな感じで。

---------------------------------------------------------------
コメントなどありましたらこちらへ->web拍手

2011年4月18日月曜日

LuxRender v0.8RC3がリリースされた模様。

フォーラムでv08RC3のリリースノートがでてました。めでたい。

v0.8RC2からの変更点は・・・

・GPU支援によるパストレーサー関連のバグフィックス多数
・カメラレスポンスがプリセットに内蔵されました。別途CRFファイルを用意する必要はもうありません。
・IPv6ベースのネットワークをサポート
・マイクロディスプレイスメントの処理速度が向上しました
・IESファイルを使用したエリアライトに関するの問題を修正しました
・ファイル名の扱いに関する処理を改善しました。(パスの区切り文字、\と/に関する問題です。)
・STL形式のメッシュデータの読み込みに対応しました。
・GUIに"advanced"タブを追加。レンダラの設定に関する詳細な情報はこのタブに表示されます。
・blender互換、およびPBRTテクスチャを使用する場合、マッピング座標としてローカル座標、
 UV座標、ノーマル座標を利用出来るようになりました。
・エリアライトのテクスチャにimagemapもしくはbilerpを指定していた場合に光の強度が
 おかしくなっていた問題を修正しました。
・GUIにレンダリングの停止ボタンが追加されました。
 これによりレンダリングを一時停止することも、完全な停止もできるようになりました。
・LuxRenderのネイティブ形式のファイルにデータの埋め込みができるようになりました。
・EXR出力を選択した際にRGBに対してアルファチャンネルの乗算を行わない状態での出力も
 選択できるようになりました。(アルファチャンネルの乗算が行われる動作が一般的です。)
・トーンマッピングとポストエフェクトの設定をファイルへセーブ/ロードできるようになりました。
・多数の修正と改善を行いました。

といった感じ。
公式wikiにもv0.8の新機能についてのまとめがあるので、そちらも参考にするとよさげ。


予定としてはv0.8のRCは今回で最後となるようです。順調に行けば次がfinalということでしょう。
また、先日blender2.57がリリースされたことに合わせて、luxblend25の動作の安定化をblender2.57を
対象としてすすめていくそうです。

RC3がリリースされたばかりで次の話をするのは気が早過ぎるかもしれませんが、v0.8finalの
スプラッシュスクリーンのコンテストが現在行われており、その締切りが5月12日になっています。
おそらくv0.8finalは5月中旬あたりにリリースされるのではないか?という感じです。

しばらくはblender2.57とLuxRender v0.8の組み合わせが安定かつ標準的な環境になりそうです。

---------------------------------------------------------------
コメントなどありましたらこちらへ->web拍手