R12モデリングに近道なし。次に背面カメラを作ります。図105-1図面(PDF)完成した部品ファイル背面カメラの本体は、前面カメラを複製して作ります。基準面からのオフセットを変更し、レンズフードの断面スプラインを少し変えるだけで簡単にできます。2背面カメラ、フィルタ次に、カメラの前に付いているフィルタとそのフレームを作ります。図105-3フィルタのフレームは、レンズフードを複製し、断面スプラインを変えて作ります。細かいですが、外側に「0.05」のフィレットを付けました。回転NURBSの分割数を「48」に上げています。次に、フィルタ本体は「円錐」オブジェクトで作ります。円錐オブジェクトは「円錐台(上端を切った円錐)」も作れます。半径の値を少しだけ小さくしています。理由は、透明なオブジェクトの場合、面が重なっているとその部分を正しくレンダリングできないからです。図面通りに作ると、フィルタフレームの内側とフィルタの外側は完全に面が一致してしまいます。3背面カメラのマテリアルとテクスチャオブジェクトができたら、マテリアルを作成します。背面カメラ本体のマテリアルは前面カメラのマテリアルと全く同じなので省略します。フィルタは反射防止コーティングがされたガラスということで、前面ガラスの裏側に使ったマテリアルをそのまま使います。次に、フィルタフレームのマテリアルについてですが、これの制作には今回一番苦労しました。小さい部品ですが、円周方向にヘアラインが入っています。このようなヘアラインは特殊な旋盤加工をすることによって生じ、「異方性スペキュラ」という特殊効果を発生させます。図105-4に示したように、通常の面(つまり異方性のない面)では、ライトが映り込む方向に円形のスペキュラが生じます。異方性のある面では、ヘアラインに垂直な方向に長く伸びた特殊なスペキュラが生じます。図105-4左が通常のスペキュラ、右は異方性スペキュラ。図105-5がiPodTouchの背面カメラのフィルタフレームに生じている異方性スペキュラです。前面カメラの制作でも説明した通り、カメラのレンズというのは「目」ですから、とても目立ちます。Appleもそれを知った上で、デザインの一部としてヘアラインを付けているのです。したがって、省略するわけにはいきません。4Dの標準マテリアルには「異方性スペキュラ」がありません。照明と異方性」というシェーダを使ってこれを表現します。図105-6「照明と異方性」シェーダは、発光チャンネルに入れて使います。今回は「スペキュラ1」チャンネルだけ使用し、他のチャンネルは全て切ってしまいます。ヘアラインの投影法は「自動的に同心円パターン」にします。この投影法は原理がよくわからないので、実際に試して決定して下さい。異方性スペキュラを設定するのは簡単ですが、この段階ではまだ金属部品のようには見えません。理由は、スペキュラがライトにしか働かないからです。これは標準のスペキュラでも異方性スペキュラでも同じ原理的な制約です。したがって、周囲に明るいオブジェクトがあってもそれが映り込みません。そこで、「鏡面反射」チャンネルと「バンプ」チャンネルを追加します。鏡面反射で金属を、バンプでヘアラインを実際に表現するわけで、より現実に近い方法だと言えます。実際、拡大して見た場合はこれで十分に異方性スペキュラを表現できます。遠くから見ると、バンプチャンネルの効果がなくなり、同時に異方性スペキュラも消えてしまいます。いうわけで、いろいろ試行錯誤した結果、近くから見た場合は鏡面反射とバンプによる異方性スペキュラが表現され、遠目には照明と異方性シェーダによる異方性スペキュラが表現されるように、うまくバランスを取ることにしました。非常に難しい表現であり、これが一番いい方法なのかどうかはわかりませんが、参考にして下さい。図105-7最後に、「コンポジット」タグについて簡単に説明します。フィルタフレームには鏡面反射と細かいバンプがついているため、「ベスト」のアンチエイリアスを強めにかける必要があります(例えば4*4)。レンダリング設定を開いてシーン全体のアンチエイリアスを強くすると、当然レンダリング時間は長くなります(4*4の場合は16倍遅くなる)。このような場合、シーン全体のアンチエイリアスは最低(「1*1」)に下げ、必要なオブジェクトにだけコンポジットタグを追加し、「AAの精度を指定」オプションを使ってアンチエイリアスの値を大きくすると、レンダリング時間を大幅に短縮できます。4背面カメラをボディに組み込む背面カメラとフィルタができたら、それらが収まる穴をボディに開けます。図105-9図面(PDF)まず、図105-10のような「穴あけ」オブジェクトを作成し、ブールオブジェクトを使って穴を開けます。図105-10ただし、この作業は簡単ではありません。この部分はボディーの角の曲面部分にかかっていて、背面カメラのフィルタが斜めに収まっているからです。その形状は作った人ごとに違っているはずで、もちろん数値で指定することはできません。目分量で調整することになります。実物を見ても、平面のフィルタを曲面に無理矢理納めているので、多少の段差が生じています。背面カメラが収まる穴は円柱オブジェクトで作成します。その少し右の照度センサが収まっている小さな穴は、フィルタフレームを複製し、断面スプラインを修正して作ります。次に、図面を参考にして背面カメラの位置を合わせます。図105-11ただし、この作業は簡単ではありません。この部分はボディーの角の曲面部分にかかっていて、背面カメラのフィルタが斜めに収まっているからです。その形状は作った人ごとに違っているはずで、もちろん数値で指定することはできません。目分量で調整することになります。実物を見ても、平面のフィルタを曲面に無理矢理納めているので、多少の段差が生じています。位置合わせができたら、2個の穴あけオブジェクトをボディの下の階層に移動し、ブールオブジェクトを使って穴をあけます。ヌルオブジェクトを使ってグループ化しておけば、複数の穴あけオブジェクトを使って簡単にボディに穴を開けることができます。