« 2005年02月 | メイン | 2005年04月 »

2005年03月21日

死神と二剣士/フリッツ・ライバー 浅倉久志訳 [ 読書 ]

 「二剣士」2巻。
 二人がいろんなやばいとこに首つっこんで死にそうな目に遭って逃げてくるというパターンの短編がぎっしり(笑) でもそのやばさとか、ついついそういうとこに引き込まれてしまうファファードとマウザーのキャラクターがとても魅力的。大抵はファファードのほうが率先してやばいとこに向かってくんだけど、最後の「珍異の市」ではそれが逆になってて可笑しい。
 ネーウォン世界の奇天烈描写は映像で見てみたい。各話完結でテレビシリーズにならないもんだろうか。SFXはWETAで。

投稿者 ヒロツ : 20:14 | コメント (1) | トラックバック (0)

鋼の錬金術師(10)/荒川 弘 [ マンガ ]

 9巻までに仕掛けられたネタがばたばたと動いた痛快な展開。
 でもマスタング大佐強すぎねえ? 水から水素を錬成して燃やすのがアリならなんでもアリじゃねえ? 普段からジッポー携帯したほうがよくねえ? ホムンクルスの「核」をオーバーロードさせて倒すっていうこと自体は焔の錬金術師ならではで納得なんだけど。
 僕の偏見かもしれないけど、女性の作家は世界的な力の葛藤を家族とか個人的な因縁とかで結びつけすぎて、作品の世界観を矮小にしてしまうような失敗をよくやらかすと思う。スケールのでかい家族喧嘩かよ! とか、それじゃ出来レースだろ八百長だろ! とか。ハガレンがそうならないことを祈りつつ次巻を待つ。

投稿者 ヒロツ : 20:13 | コメント (0) | トラックバック (0)

SEX(4)(5)/上條淳士 [ マンガ ]

 福生編完結。いやはや面白かった。かっこよかった。細かい事情を全然描かないというか曖昧にしたままにしちゃってるんだけど、映画だとそういうの普通だし、いいんじゃないかな。
 5巻の148ページ、今回新しく描かれたものだと思うんだけど、雰囲気が違うとかいうんじゃなく明らかに雑で下手になってる。ちょっと悲しいね。

投稿者 ヒロツ : 19:54 | コメント (0) | トラックバック (0)

げんしけん(1)〜(5)/木尾士目 [ マンガ ]

 オタク自体をネタにしてるけど、ストーリーそのものはオタクマンガではなくむしろ逆。オタク向けマンガというのは大概、主人公に特別な資質があったり脇役との間に運命的な絆があったりっていうお約束でガチガチなもんだけど(ローゼンメイデンとか)、このマンガはオタクライフを一歩退いた距離から生暖かく見守る青春群像っていうかんじ。さすがに登場人物が純粋オタクだけだと話にしにくいのか、オタクだけど天真爛漫美形とか、全然オタクじゃない美女とか、そういうキャラクターも投入されてる。
 僕が特に気に入ったのは絵の情報量が多いこと。登場人物たちの服装から髪形から部屋の様子から、周辺の設定がテキトウに決められたものでなく、キャラクターとかみ合うように描き込まれている。セリフ以外の部分から読み取れる情報が豊富なので、繰り返し読んでも楽しめる。
 一方で、オタク的じゃないところに、極端な「偏り」が見られる部分もある。大学ものなのに、講義も課題も試験も出てこない。誰もバイトしてない。家族関係も描かれていない(主人公の妹だけ出てくるがネタ的だ)。これはオタクというよりフニャモラなのかも。

投稿者 ヒロツ : 19:53 | コメント (0) | トラックバック (0)

王の帰還 Special Extended Edition [ 映画 ]

 待望の特別版。かなりいろいろ追加されてる。「二つの塔」では、活劇調だった劇場版からSEEでは人間ドラマが増えてだいぶ印象が変わっていたが、「王の帰還」は順当に補完された感じで特に変わった感じはしない。
 特典ディスクのドキュメンタリーも相変わらず面白い。特殊効果の仕事が膨大でWETAデジタルの人たちが地獄を見たとか。技術うんぬんよりむしろ、出てくる人たちが面白い。大変な苦労があったはずだが人間的に嫌なところが見えてくるようなのがほとんどないんだけど、これはLOTR関係者がナイスガイ揃いなのか、それともヤバイところは編集で全部切ったのか(笑)

 で、三部作通しての感想。
 まず映像化されたものが原作を読んで持ってたイメージとすごく近いのに驚いた。アラン・リーやジョン・ハウの絵に似てるのは当然だけど、日本語版挿し絵ともかなり近い感じがするので、これはトールキンの描写自体がしっかりしてたせいかもしれない。原作に描写されてることは忠実に再現し、足りないところは調べたり作ったりして埋めて、あれだけの量のものをあんなに上手く作ったということがとにかくすごい。
 映画ではいろいろ原作と変えて脚色してあるとこがあるけど、最大の変更はフロドの年齢だろうか。原作ではサムより年上で結構なおっさんなんだけど、それを二十歳ぐらいにしちゃってる。結果としては全く違和感ないというか、おっさんだけど内面は無垢な青年のまんまのフロドを映像化するために必要だったんだろうなと思う。
 アルウェン関係は余計だったと思う。原作で「追補編」に分けてあったのは必然だったんじゃないかと映画を観てあらためて感じる。リヴ・タイラーがちょっとアレだったのも効いてそうだけど。エオウィン役のミランダ・オットーほど表現力があるでもなし、ガラドリエル役のケイト・ブランシェットのような神秘的な存在感を放ってるでもなし、ただのかわいこちゃんで終わってる。エルロンドもただの親バカにみえる(エルフ以外の全種族の存亡は渋い顔でスルーしておいて自分の娘が危うくなると血相変えて出動かよ)。男女や親子の間の普通の「愛」を描くのはあまり成功してない映画だと思う。人類愛とか友情とかはちゃんと見えるんだけど。まあ原作にも家族愛とか恋愛は全然ないんだけども。

 トールキンはイギリスのための神話を作りたかったんだそうだが、あらためて映像で見るとそのへん結構露骨なところがあって、「西方=白人=善/東方=有色人=悪」なんていうのがはっきり絵になってるとちょっと気になる。意図した現実世界の置き換えではないんだろうが、イギリス人が書いた以上はそうなっちゃうのが「自然」なんだろうな。あえて逆にする理由もないし。
 撮影地のニュージーランドがイギリスの植民地だというのも皮肉な話で、遥か昔に失われたイギリスの自然の代わりにイギリス人が他所で分捕った土地を使ってるわけだ。特典ディスクの映像見てるとイギリス移民とマオリの間に確執など全く無いように見えるんだけど、ほんとかなあ。マオリはすごく寛容な民族なのかもしれない。

投稿者 ヒロツ : 19:10 | コメント (0) | トラックバック (0)

屈折率 [ CINEMA 4D R9 ]

 屈折率の件をMOMOで冨士俊雄さんに教えてもらった後、自分でもいろいろとテストなどしてみたので、まとめてサイトにアップしようと思ってたのがずるずるとやらずじまいでもう一年近くになってしまった。なんでさっさと手をつけなかったかというと、3DCGの屈折率について論じる場合、いろいろとややこしいことになるんで腰が引けてた。

・屈折率についてあまり理解していない人が多い
・ソフトによって設定の仕方も再現の正確さもまちまち
・多少間違った設定をしていても絵ヅラでは意外とばれない

 こういった事情があるので、ともすると「屈折率とは何か」「正しく屈折を表現することの意義は」なんていうところから始めないとスジが通らないような気分になってしまう。
 でも今回はそういうのはなるべく無しの方向で。CINEMA 4Dで間違った設定をしたときの画像とか、他のソフトのレンダリング結果と突き合わせて検証した画像もあるんだけど、今回は出さないことにする。興味を持った人は、ソフトがどう機能してるかについては自分で実験してみればいい。屈折率そのものについての説明が不足であれば、Googleで探すなりなんなりしてくれたまえ(理数系の知識についてはWEBにいくらでもある)。

◆水の入ったグラス

 以下は「ガラス容器に水を入れた状態」の設定。オブジェクトはこんな具合。左が空のグラス、右が水(色ついてるけど)の入ったグラス。

050320_IOR_1.gif

 どちらも回転NURBSだが、水が入ってるほうは3個に分けている。わかりやすいように断面のスプラインだけを表示したのが下の図。

050320_IOR_2.gif

 オブジェクトは、サーフェスが境界になっている物質の組み合わせごとに分割する。この場合だと、「空気と水」「水とガラス」「空気とガラス」の3個になる。
 片側が空気であればマニュアルにあるとおりに絶対屈折率をそのまま設定すればいい(厳密にいうと空気との相対屈折率だが値の差は無視できる)。問題になるのは「水とガラス」の境界になるオブジェクトだ。大抵のソフト(maxとか)では、面の両側にある2種類の物質の絶対屈折率から算出した相対屈折率(この場合1.6/1.33=1.20)を持つ単一のマテリアルを設定し、裏表は面の法線の向きで決定する。ところがCINEMA 4Dの場合は、表と裏にそれぞれ別のマテリアルで、両側の物質の絶対屈折率を設定することになる(マニュアルにはそんなことひとことも書いてない)。
 
050320_IOR_3.gif

 わかりにくいのがどっちの面にどっちの屈折率を使うかだけど、「その面の向こうにある物質の屈折率」を使うことになる。奥の部屋の表札がついたドアをイメージするとわかりやすいかもしれない。この面の向こうがガラスならガラスの屈折率を貼る、という具合。

 しかしここでひとつ疑問が生じる。「空気と水」と「空気とガラス」の境界のオブジェクトでも、内側の面は向こうが空気だから、その面には空気の屈折率「1.0」をを設定する必要があるんではないのか?

050320_IOR_5.gif

 さらに考えてみると、最も一般的な屈折オブジェクト、一種類の物質だけでできているもの(中身の入っていないグラス等)の場合、裏表で屈折率を変えなくても何の問題もないが、どうなっているのか?

 実はそのケースでは、「例外的な処理」がされている。

050320_IOR_6.gif

 上図の「ガラスに入ってガラスを出る」「水に入って水を出る」のように、同じ物質を出入りして「空気」(カメラがある空間と同じ物質)に戻る場合に限り、「出る」ほうの面が「入る」ほうの面と同じマテリアル=同じ屈折率のままでも正しい屈折になるよう処理されている。透明オブジェクトは単一の物質だけで閉じているケースが大半なので、大半がこの「例外」に該当することになる。「裏面」の屈折のためにマテリアルを貼り分ける手間が省けるということを考えれば合理的かもしれない。

 では、この「例外的な処理」をあてにせず、空気に向かって出て行く面に頑固に屈折率「1.0」を設定してみるとどうなるか。

050320_IOR_7.gif

 結果は、水−ガラス面のみ裏表を貼り分けたものと全く同じになる。

050320_IOR_9.jpg

050320_IOR_8.jpg

 単一の物質だけでできたオブジェクトで両面貼り分けをしなくて済むのはたしかにラクチンだが、こういう「違う設定なのに同じ結果」という仕組みに弊害はないのだろうか?


◆水に沈んだ透明シート

 板ガラスやビニールシートのようにごく薄い透明オブジェクトの場合、面は一枚だけで体積を持たせず、屈折率は「1.0」のままにするのが普通だ。屈折しなければレンダリングが速いし、屈折による透過像のズレは無視できる程度でしかない。モデリングのほうでは(板ガラスならまだしも)くちゃくちゃのビニールシートに数分の一ミリの厚みを持たせるような作業は煩雑このうえない。

 しかし、この「屈折率1.0の一枚板」が存在する場所が「空気中」でなかった場合、ちょっとややこしいことになる。
 
050320_IOR_10.gif

050320_IOR_20.gif

 上図は、鉢に水を満たして薄いシート(赤い正方形)を沈めたものだ。シートは平面オブジェクトで厚みはない。

 まず試しに、アルファで切り抜いてみる。

050320_IOR_11.gif

 アルファは問題ない。アルファがあっても透過がなければ屈折率もないので当然といえば当然。

 次はシートを透明にしてみる。
 大抵のソフトではこういうときは単に屈折率を「1.0」にしておくだけでいい。屈折率「1.0」の面で屈折は起こらない。ためしにこのシートの屈折率を「1.0」にしてみる。

050320_IOR_15.gif

 ところがこの場合、透過像が屈折してしまう。なぜかというと、「面の向こうの物質の屈折率を設定する」というルールによって、屈折率「1.0」の面の向こうは「空気」ということになり、このシートは「水と空気の境界」とみなされるからだ。

 そこで「向こう」ルールに従い、屈折率は水と同じ「1.33」にしてみる。

050320_IOR_13.gif

 やっぱり同じように屈折してしまう。
 シートの屈折率がすぐ手前にある水面の屈折率と同じなので、「同じ物質に入って出る」ことになり、前述の「例外的な処理」が行われるからだ。シートの向こうは「空気」とみなされ、「1.0」のときと同じ屈折像になる。「違う設定で同じ結果」が悪い方向に転んでしまった。

 で、この場合どうやって解決するか。

 シートが単純な平面なら厚みを持たせて通過する面を2枚にするのもいいかもしれない。厚み数分の一ミリでビニールの屈折率、杓子定規な正攻法だ。
 透過はやめて、表示タグの「可視性」で見え具合を薄くすることもできる。しかし、背後との合成が乗算でなく加算になり、影に色がつかなくなるのでイマイチだ(クラゲみたいなものにはいいかもしれない)。

 マテリアルで解決する場合は、少々ウラワザ気味な方法になる。

050320_IOR_17.gif

 同じ屈折率の面が連続したときの「例外的な処理」を回避するため、シートの屈折率を0.01だけ下げて「1.329」とする(「1.331」でも「1.3299」でもいいが)。

 これでシートの透過像は屈折しなくなる(厳密にはほんのわずかに屈折しているはずだが)。もちろんアルファと併用しても問題なし。

 サンプルファイル(要R8.5以上)


 透明オブジェクト関係ではほかに、アルファチャンネルに鏡面反射やスペキュラーの明度、後ろに見えてる背景オブジェクトや空オブジェクトの明度が影響するとか、解せない仕様がある。単純に合成できなくなるようなアルファを出して何の役に立つのかわからないが、何か合理性があるのだろうか。もしかしたら「単に誰もつっこまないから放置されてる」類いのことなのかもしれない。たとえば、「選択されているオブジェクトのワイヤーフレームを白くハイライトする」というようなごくあたりまえの機能が実現したのがこないだのR9だったりするぐらいなので、ユーザーからのフィードバックが量的に少ないとか質的に偏ってるとかで、すごく「抜けてる」ところがあったりするのかも。

投稿者 ヒロツ : 18:27 | コメント (3) | トラックバック (0)

2005年03月12日

HyperNURBSのこまかい話 [ CINEMA 4D R9 ]

 ヘッドホン作ってて気がついたHyperNURBS(以下HNと略)のこまかいことについて。

(1)HNウェイトはビューに表示できる

050312_HN_1.gif

 我ながらマヌケな話だけど、こないだ気付いて非常にびっくりした。HNウェイトタグを選択かつHNオフまたは表示分割0でないとこの表示にならないので、知らずにいじってたらなかなか気付かないよねえ。なんかマニュアルに書いてないような気がするんですが。HNウェイトタグでHNの分割数を変えられるのとかも書いてないような。

(2)カットマル・クラーク(N-Gons)の省略表示(ISOライン)

 ビューのワイヤーフレーム表示を「省略表示(Isoperms)」にしてるのに、表示される線が分割されてる。

050312_HN_2.gif

 別に害はないんだけどなんか気になるのであちこちいじくってようやくわかった。R9.1でHNのオプションがちょっと変わって、分割のタイプが三種類から選べるようになったんだけど、そのうちR9.1で新登場かつデフォルトになった「カットマル・クラーク(N-Gons)」だと、省略表示が一段分割される。

050312_HN_3.gif

 属性でタイプをN-Gonsじゃないやつに変えると、

050312_HN_4.gif

 おなじみの、元ポリゴンのエッジと同じ密度の省略表示になる。

 ところが「カットマル・クラーク(N-Gons)」だからといって常に省略表示が分割されるわけでもなくて、そのポリゴンオブジェクトに実際にN-Gonが存在してなければ分割されない。

 たとえばこのポリゴン。

050312_HN_5.gif

 選択されてる部分はN-Gonでフタをしてあるんだけど、「カットマル・クラーク(N-Gons)」ではN-Gon線(暗い青色、N-Gonをふさぐために内部的に分割しているポリゴンの線)とHNの分割が違っていて、元のポリゴンでポイントがないところからISOラインが出ている。

 で、このフタしてるN-Gonを削除すると、

050312_HN_6.gif

 途端に省略表示が分割されなくなる。なにやら不可解な仕様なんだけど、よく見るとそれなりに合理性があるようだ。

(3)「カットマル・クラーク(N-Gons)」の正体

 「カットマル・クラーク(N-Gons)」の分割方法はN-Gonに最適なフタをするために、(1)元のポリゴンを一段階分割(2)N-Gon部分を最適な四角ポリゴンに再構成(3)分割数が高ければそこからさらに細分化していく、という方法を採っているらしい。

050312_HN_9.gif

 上図、「カットマル・クラーク」の場合、元のポリゴンが持っている頂点を元にN-Gon線で表示されているとおりに分割している。

 いっぽう、「カットマル・クラーク(N-Gons)」の場合、N-Gon線と違う分割をする。

050312_HN_8.gif

 どうやらN-Gon部分を放射状に割るようになってるらしい。元のポリゴンが持ってるポイントそのものではなく、一段階分割された後のポイントを使わないとこういう分割にできないので、省略表示でも一段階分割しないとワイヤーフレームが描けないということになる。

 上図の例だと、エッジにウェイトがかかっててN-Gon部分が平面になっちゃってるので、レンダリング結果はどっちだって同じなのだが、曲面になると結果が変わってくる。僕は非平面のN-Gonは使わないようにしてたのだが(内部的にどう分割されるかわからなくて危険なので)、「カットマル・クラーク(N-Gons)」を使えばある程度は曲面部分でもN-Gonオッケーらしい。

 上図の六角形のフタの部分、「カットマル・クラーク」ではN-Gonの分割が「(1)三角・四角・三角に分割(2)さらに二段階分割」となっているため、分割に偏りが生じ、三角の部分が少し尖ってしまっている。いっぽう「カットマル・クラーク(N-Gons)」では「(1)放射状に6個の四角ポリゴンに分割して(2)さらに一段分割」となっているので、分割に偏りがなくきれいな曲面になっている。もちろんHNを適用する前に手作業でN-Gonを上手く分割しておくというような従来の職人的対応もできるが、「カットマル・クラーク(N-Gons)」のほうがラクチンだ。

(4)やっぱりSketch and Toonはちょっと微妙

 R9.0の時点からSketch and Toonでエッジの線を描かせるとN-Gon線まで描いてしまったりしてたのだが、ISOラインでも似たようなことになっている。上記のように「カットマル・クラーク(N-Gons)」でISOラインが分割表示される状態だと、Sketch and ToonでもISOラインが分割されてしまう。

 まあSketch and Toonでレンダリングする直前にHNを全部「カットマル・クラーク」にしちゃえばいいんだけど(選択メニュー>選択フィルタ>選択ツールでシーンにあるHNを全部選択できるので、属性マネージャから一発で変更できる)、こういうユーザーが気付かずにはまってしまう落とし穴みたいな仕様はなるべく埋めておいたほうが親切なんじゃないかなあとか思ったりするよね。

投稿者 ヒロツ : 20:28 | コメント (2) | トラックバック (0)

2005年03月10日

ヘッドホン(3) [ CG・制作進行中 ]

 横から。

 パンチングメタル越しに何やらメカメカしいものが。メカものの場合、こういう「見えるか見えないか」のディテールを作り込んでおくと、見てる人間の目はそのさらに先のディテールも「ありそう」に感じて、リアリティにつながる。ような気がする。逆に、あるはずのものが省略されてるのが一見してわかるとリアリティが損なわれる。ような気がする。

050310_psd.gif それから、この手の意図的に作ったライティングの場合、マルチパスレンダリングが本領発揮する。
 これは、普通のレンダリング画像(レイヤー0)の上から、マルチパスのチャンネルを使って、ライトごとのスペキュラを足したり、鏡面反射を足したりしてる。ハイライトの飛び具合は本番レンダリングで一発で決めようとすると結構難しい。試行錯誤する度にレンダリングしないといけないし、最終的な背景とのバランスを見ないとなんともいえないこともある。そこで、とりあえずハイライトが飛ばない程度にやや暗めでレンダリングしておいて、Photoshopに持って行ってから調整する。ギリギリの飛び加減を探るのもレイヤーの不透明度をいじるだけだから効率が良い。
 逆に、飛ばしたつもりはなかったのにうっかり飛んでたなんていうとこがあっても、各チャンネルで飛んでなければレベル補正で下げて階調が戻せることもある。

 あと、まえも書いたけど、やっぱ被写界深度はPhotoshopで後処理のほうが断然有利。試行錯誤が秒単位でできるもんね。

投稿者 ヒロツ : 00:43 | コメント (9) | トラックバック (0)

2005年03月09日

ヘッドホン(2) [ CG・制作進行中 ]

 こんなもんかなあ……。

 GIは使わず、地味に三点照明で。映り込みに空と地面のHDRIの彩度を殺したやつ。

投稿者 ヒロツ : 21:35 | コメント (0) | トラックバック (0)

2005年03月08日

ヘッドホン(1) [ CG・制作進行中 ]

 愛用のヘッドホンをCINEMA 4Dで作ってみた。こういうやつこそRhinoで作れって感じだが、今回はCINEMA 4Dで作りたかったので。

 オーディオテクニカの製品ページ

 ここのサイトの写真で見るとフレームは無色のシルバーだけど、実物はちょっとゴールドがかってる。あと、いま気付いたけど、パンチングメタルの穴ピッチと角度が間違ってた。

投稿者 ヒロツ : 23:57 | コメント (3) | トラックバック (0)