部屋が見えるように屋根が見えない家の3Dモデルがあります(ここのように)
しかし(今のところ)テクスチャはなく、各サーフェスは同じ色です。たとえば、
var myMaterial = new DiffuseMaterial (new SolidColorBrush(myColor))
WPF Viewport3D で表示する場合、サーフェスを区別できるようにしたいと考えています。たとえば、いつ床が終わり壁が始まるかを見たいとします。
これは、オブジェクトを照らすことで可能になるはずです。私はすでに試しました:
すべての表面が同じ色に見えるため、環境光は機能しません。
myViewport3D.Children.Add(new ModelVisual3D(){Content = new AmbientLight(Colors.White)})
また、ディレクショナル ライトを使用してその位置を移動するカメラに固定すると、一部のサーフェス法線がカメラ/ライトに対してほぼ垂直になり、ほぼ黒になり、さらに不自然に見えます。
では、WPF Viewport3D で単一色の 3DObject の表面を区別する良い方法は何でしょうか?
ユーザー「jdv」がコメントを書いた後に編集