トックのCG部屋-トップ別室へ

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
  1. --/--/--(--) --:--:--|
  2. スポンサー広告

自作レンダラ その21

スクリプトを修正して四角形ポリゴンを三角形に2つに分割して書き出せるようにした
スクリプト修正
なんとなく前作ったものをレンダリング
やっぱりアンチエイリアスがなぁ…
でもまぁ見比べてみたけど角度によって違う気がする
てかスクリプト完成とか言ってレンダラ自体の設定とWorldの書き出し部分まだ作ってないや

さて、なんか無理矢理一段落したということにしてこれからの方針でも
というか今回はどっちかって言うとこっちの方が書きたかったこと
これを今後どういうものにしたいかと言うことなんだけど
簡単に言うとアニメに特化したレンダラ作りたい
トゥーン独特の違和感がないような感じのやつを
あとは髪の毛の手前に目を描く機能とかつけたりして
影響させる光源を決められたりすると顔と体の陰影のつき方の違いも解決できそう
とまぁいろいろと方法も含めて考えてみたんだけど
髪の毛の手前に目をかく機能:特別なパラメータ持たせてソート時に判定すればいいだけ
影響させる光源を決める:ポリゴンにそのリスト持たせるだけ
この辺は割と簡単にできそうだけど
線やシェーディングはレイトレよりむしろZバッファの方がやりやすい気がしてきた
レイトレは1ピクセル毎に計算してくから
となりのピクセルの影響を受けてどうとかって処理がやりにくいんだよねぇ…
フィルタとかの後処理だと限界が…
んで、じゃあピクセルバッファ使ってポリゴンのIDやらZ値やら透過の過程やら全部記録して
後からそれをもとにいろんな処理をしていけばいいじゃん!とか考えたけど…
メモリが…
縦×横×サンプリング数×最大再帰回数×バッファ一つ分
個人的にHD出力までできてほしいから縦横は1920×1080
最大再帰回数はそのシーンの半透明物体や鏡の個数にもよるけど最大だと最低5回は欲しい
バッファ一つ分はintが4バイト、doubleがその倍で持たせるものを考えると32位は…
となるとアンチエイリアスをかけなかったとしても
1920×1080×1×5×32B≒320MB
さんびゃく…にじゅう…めが…ばい…と……だと…?
2×2でアンチエイリアスかけたらギガ単位じゃないか
てか書いてる途中で勘違いに気づいたけど
最初メガの存在を完全に忘れて考えてたから300ギガかと思ってかなり焦った
まぁ300MBでも十分でかすぎるんだけどね
VMの設定ちゃんとやらないとこれだけで確実に飛ぶし
ポインタのサイズ考えてないから実際はもっとでかいし
やっぱり現実的じゃないのかなぁ…
でもZバッファでやるにしてもアルファブレンディングとかしようと思ったら
結局でかいバッファ持たなきゃいけないだろうからどっちもどっちなんかなぁ
エッジの描画に関してはZバッファの方が良さそうな気はするけどね
レイトレ→Zバッファでエッジの描画→全部のバッファをもとに処理
って流れが良さそうかなぁ
やるかどうかはまだちょっとわからないけどね

それにしても本当にあの違和感って何なんだろう
某休日朝のアニメ見てると2D作画と3D作画の違いがよくわかる
一番は服のシワや髪の毛の陰影ハイライトあたりか?
後はアニメ絵独特の空気感というかなんというか…
その辺をうまく改善できるようなレンダラが作りたいなぁ
まぁレンダリングの前に勢いのある動きでも全く歪まないモデルとか
無駄に細かく動くモーションなんかも原因ではあるとは思うんだけど…
あーいやそれがほとんどなのかなぁ…

てかあのアニメは教育上どうなのよ…
いや、何とは言わんが…
  1. 2009/06/28(日) 03:25:57|
  2. 自作レンダラ
  3. | トラックバック:0
  4. | コメント:0
<<1行文を追加しただけでスピードが3倍になった | ホーム | 自作レンダラ その20>>

コメント

コメントの投稿


管理者にだけ表示を許可する

トラックバック

トラックバックURLはこちら
http://took.blog72.fc2.com/tb.php/569-5e3735f6
この記事にトラックバックする(FC2ブログユーザー)

プロフィール

Author:トック

プロフィール(仮)

twitter:elgraiv_took
└ブログ更新情報

twitter:elgraiv_take
└無駄な日常つぶやき用

FC2カウンター

コンテンツ一覧

本棚

最近の記事

カテゴリー

月別アーカイブ

ブログ内検索

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