2024年7月21日日曜日

ARTマテリアル~積層

積層マテリアルの特徴

ARTマテリアルのベースの一つ「積層」は、表面にコーティングをかけた材質を表現するのにぴったりです。

左・不透明、右・積層


上の図はどちらも黄色(232-173-35)を色に指定していますが、左は不透明マテリアルを、右は積層マテリアルをベースとしています。右の積層マテリアルのほうがメタリック感が出ていますね。

Autodesk Renderingヘルプには、積層の概念が次のように示されています。

上部コート層があるのが特徴

積層マテリアルのパラメータは次のとおり対応しています。

上下2層のそれぞれの設定が可能

基準ハイライトの「粗さ」は反射の粗さを示します。

基準ハイライトの「重み」は、基準色と基準ハイライト色の比率を0~1の範囲で調整し、0ならはハイライト色は無視されます。

表面コーティングは反射率と粗さの数値のみの設定で、上図の場合は粗さを0に設定しているので、乱反射はなくまっすぐに入射光を反射することを示しています。

本磨きの花こう岩

積層マテリアルで本磨きの花こう岩のマテリアルを作成しながら、各パラメータの働きを見てみましょう。

まずは石の画像を準備しましょう。

オートデスクマテリアルライブラリより

上の図は"C:\Program Files\Common Files\Autodesk Shared\Materials\Textures\3\Mats\granite_red_color.jpg"にある赤っぽい花こう岩の画像です。

  1. 新規のマテリアルを作成し、アイデンティティタブで名前を「花崗岩1」とする。
  2. 外観タブで[このアセットを置き換えます]ボタンをクリック
  3. アセットライブラリで、外観ライブラリを選択し、検索窓に「ベース」と入力して検索。
  4. ベースマテリアル - 積層 をダブルクリックまたは右端の矢印ボタンを押して、アセットブラウザを閉じる
  5. [このアセットを複製する]ボタンをクリック、▶情報を展開して名前を花こう岩1などとする。
  6. 基準色の拡散光の色の右端の▼ボタンを押してイメージを選択して準備した画像を」選択。
    基本色にイメージを設定しただけ

まずは、画像のみ設定してレンダリングしてみます。比較のために不透明ベースを使用し他マテリアルを隣に配置しています。
左・不透明、右・積層

これでも十分に光沢感に差が付きます。基準ハイライトの設定が、色が白で重みが0.47もあるため、たくさん反射しています。重みを調整すれば、つやつや感も修正できます。
重みを0.2に変更

詳細な設定

ここまでの設定でも十分に「らしさ」は表現できているとは思いますが、より詳細に設定するならば
  • 基準ハイライト:重み
  • 基準ハイライト:レリーフパターン
  • 表面コーティング:反射率
にそれぞれ画像を用意します。幸いにオートデスクマテリアルライブラリには次のような画像があります。
基準ハイライト:重み
"C:\Program Files\Common Files\Autodesk Shared\Materials\Textures\3\Mats\granite_red_refl.jpg"

レリーフパターン:法線マップ画像
"C:\Program Files\Common Files\Autodesk Shared\Materials\Textures\3\Mats\granite_base_specks_norm.jpg"
表面コーティング:反射率

"C:\Program Files\Common Files\Autodesk Shared\Materials\Textures\3\Mats\granite_red_refl.jpg"

これらの設定を次のように行います。

各パラメータに画像を設定
レンダリング結果は次のようになります。
より質感が向上しています。

基準ハイライト:重みに画像を設定した効果は、次のレンダリング結果を見ればよくわかります。

光の「粒」に注目!

これは床に作成した花こう岩のマテリアルを設定してレンダリングした結果ですが、小さな光の粒が反射しているのが確認できます。重みに設定した画像はほとんど黒で白い点がいくつかあるものですが、この白い点だけが強く反射しているというわけです。

ここまでの詳細な設定は、CGプロフェッショナルでない限りは必要ないでしょう。しかしながらわずかの設定で、メタリックな塗装やつやつやの石の表現が可能になることはARTマテリアルの優れた点です。

2024年7月14日日曜日

ARTマテリアル~色・粗さ

金属

ARTマテリアルには様々なパラメータがあります。代表的なパラメータの働きについて理解しましょう。ベースとなるARTマテリアルのうち「金属(メタル)」は最もパラメータ数が少なく、初心者にの理解には最適です。

反射色のこと。光を当てた時その金属が何色に見えるのかを示します。例として

  • アルミニウム    R:245 G:245 B:246
  • 真鍮                R:243 G:203 B:124
  • ステンレス       R:203 G:203 B:203  
等の計測値が公開されています。
ステンレスを例としてマテリアルを作成してみましょう。

マテリアル作成手順

  1. 管理タブ>設定パネル>マテリアル でマテリアルブラウザを開き、左下の[新しいマテリアルを作成]を選択。

  2. アイデンティティタブで名前を[ステンレス1]とする
  3. 外観タブで[このアセットを置き換えます]を選択し、アセットブラウザを開く

  4. [外観ライブラリ]を選択し、検索ボックスに「ベース」と打ち込んで検索。
  5. [ベースマテリアル - メタル]をダブルクリック、または右端の矢印ボタンをクリックし、マテリアルブラウザに表示して閉じる
    ダブルクリック または 矢印ボタンをクリック

  6. マテリアルブラウザで[このアセットを複製します]ボタンをクリック
  7. 情報パネルを展開し、名前を設定。ここではマテリアルの名前と同じにします。
    アセットを複製して名前をつける

  8. パラメータパネルの色ボックスをクリックして、R:203 G:203 B:203に設定
  9. 粗さを0にする

  10. OK
これを適用し、次のような格子模様の床の上にキューブとして配置し、

レンダリング(高)をかけてみました。反射している床面の色が設定した「色」に染め上げられていることに注目してください。
反射に色が反映されている
アルミや真鍮も同様にマテリアルを作成してレンダリングみると
左からステンレス、アルミ、真鍮

色を設定する効果がわかります。

粗さ

粗さとは、表面の微妙な凹凸のことで、結果として反射の精度に現れます。ここまでは「粗さ」の値を0にしたので、床面に施された格子は正確に面に表現されています。
粗さの値は0~1の範囲で設定します。値を変えて結果を見てみます。
粗さ=0.1

粗さ=0.2


粗さ=0.5


粗さ=1.0
粗さを1にすると完全にマットな質感となりステンレスらしさが失われていますね。

粗さのテクスチャマップ

「粗さ」は数値(0~1)で全体の販社の粗さをコントロールできますが、グレースケール画像を使って粗さをマッピングすることもできます。
マテリアルブラウザの粗さの右端の矢印をクリックしてイメージを選択します。
粗さにイメージを設定する
そして、例えば次のような画像を指定します。

これは、Autodesk Materialライブラリに含まれる画像の一つです。("C:\Program Files\Common Files\Autodesk Shared\Materials\Textures\1\Mats\brush_long_bump.png")
黒のピクセルは鏡面のような仕上げを表し、白のピクセルはマット仕上げを表します。グレーのピクセルは、その中間です。
この画像を前回のテクスチャマップと同様の方法で画像調整を行います。

黒が鏡面仕上げになるのでイメージを反転させてみました。レンダリング結果はこのようになりました。


色と粗さの働きについては以下のヘルプに詳細に記載されていますので、ぜひご覧ください。

2024年7月7日日曜日

ARTマテリアル

Autodesk Ray Tracer

現在のマテリアルライブラリには「レガシーマテリアル」と「ARTマテリアル」の2種類が混在しています。ARTはAutodesk Ray Tracerの略で、現在のRevit、AutoCAD、Inventorなどに搭載されているレンダリングエンジンで、名前の通りレイトレーシングを基調としています。今回はARTマテリアルを使って画像をマッピングしたマテリアルを作ってみましょう。

ARTマテリアルのベース

レガシーマテリアルにはベースとなるマテリアルが存在します。アセットブラウザで、外観ライブラリ>規定 を選択すればレガシーマテリアルの14のベースマテリアルが表示されます。

レガシーマテリアルのベースマテリアル
同様にARTマテリアルにもベースマテリアルが存在します。アセットブラウザで外観ライブラリを選択した状態で、検索窓に「ベース」と打ち込んで検索します。
5種類のベースマテリアル
v2025では6つのアセットが表示されますが、タイプ列を見ると

  • ガラス
  • メタル
  • 積層
  • 透明
  • 不透明

の5種類のベースマテリアルが見つかります。それぞれの内容については以下のヘルプにに詳細に記述されていますので、ぜひ参考にしてください。

Autodesk Rendering ヘルプ | 概要 - マテリアル | Autodesk

Autodesk Rendering ヘルプのホームページ

金属(強い反射)でも透過性(屈折)でもない、一般的なマテリアルは「ベースマテリアル-不透明」を複製して使用します。

テクスチャ画像の準備

前回同様にINAXのホームページから画像をダウンロードして使用します。

CG用画像をダウンロード
ダウンロードした画像を任意のフォルダに保存します。
ダウンロードした画像ファイル
この画像ファイルにはタイルが18段あります。目地寸法は247x70ですから画像の高さは70×22=1260mm、幅はタイル6枚なので、247×6=1482mmになります。

テクスチャマッピングマテリアルの作成

  1. 管理タブ>設定パネル>マテリアル
  2. マテリアルブラウザダイアログボックスの左下の[新しいマテリアルを作成]を選択

  3. アイデンティティタブをクリックし、任意の名前を設定
    アイデンティティタブで名前を設定

  4. 外観タブで、[このマテリアルを置き換えます]をクリック
    このアセットを置き換えます

  5. アセットブラウザで外観ライブラリを選択して、検索窓に「ベース」と打ち込み検索。
  6. ベースマテリアル - 不透明を選択し、右端の矢印ボタンをクリック
    ベースマテリアル - 不透明 で置き換え

  7. マテリアルブラウザで[このアセットを複製します]をクリック
  8. 情報パネルを展開し、名前を設定。
    アセットを複製し、名前を設定

  9. パラメータパネルを展開し、色の右の▼をクリックして、イメージをクリック
    イメージをクリック

  10. ダウンロードした画像ファイルを指定
  11. イメージをクリックしてテクスチャエディタダイアログボックスを開く
  12. 変換>尺度 でリンクアイコンをオフにし、幅を1482 、高さを1260に設定

  13. 終了
これでテクスチャ画像を設定したマテリアルができました。

プレビューをみると、悪くはありませんが、なんだかちょっと平坦ですね。。。こんなときはバンプを設定してみましょう。バンプはARTではレリーフパターンといいます。

レリーフパターン(バンプ)

レリーフパターンを設定するにはまず白黒画像を準備します。画像の白黒化は簡単で、元の画像をペイントで開いて、ファイル>名前を付けて保存>その他の形式 でモノクロビットマップを選択して保存します。もう一度開いてJPGで保存すればファイルサイズの節約になるでしょう。

  1. マテリアルブラウザの外観タブで、レリーフパターン(バンプ)に✔し、作成したモノクロ画像を選択。
  2. テクスチャエディタの尺度で、リンクボタンを解除し、幅と高さに同じ値を設定する。
    幅1482 高さ1260

  3. 詳細を展開すると、高さマップと法線マップが選択できますが、とても大雑把に言うと高さマップはグレースケール画像、法線マップはRGBイメージです。今回は高さマップを選択します。
  4. 終了
プレビューをみると、少し凹凸が出たようにも見えますがはっきりとはわかりませんね。
凹凸があるようには見えるが…
それでは実際に二つのマテリアルをプロジェクトに配して、リアリスティック表示で比較してみます。
左:レリーフパターンあり、右:レリーフパターン無し
レリーフパターンの有無で、大分表現が違いますね。
拡大

他にも細かな設定はありますが、まずは大筋このやり方でOKです。テクスチャマッピングもARTではかなり高速にレンダリングできるので、レガシーマテリアルをお使いの場合は、早めにARTマテリアルに乗り換えてみてはいかがでしょうか。

2024年6月30日日曜日

単位の話

パラメータの単位

Revitでは単位は厳密に管理されています。パラメータの型は特殊な例を除き

  • Double(倍精度浮動小数点)
  • Integer(整数)
  • ElementID(要素ID)
  • String(文字)

の4つの型で保持されますが、このうちDoubleについては、保持されている数値を指定した単位に変換してUIに表示するようになっています。

管理タブ>設定パネル>プロジェクトで使う単位

単位換算は不要

指定した単位にRevitが換算してくれるので、ユーザーは単位換算のための式を設定する必要は一切ありません。例えば、3000mmと3mは同じ値ですが、m表示するために3000÷1000のような式を設定する必要はない、ということです。

表示される単位がことなるだけ

計算式では単位に注意

このような単純な例はわかりやすいのですが、パラメータの値に式を設定するときはしばしばこの「単位換算不要」の考え方を忘れがちになります。例えば速さを距離と時間のパラメータの値から求める場合は、単純に「速さ=距離÷時間」とだけ考えます。

例として壁の長さを時間で割り算する集計表を作ってみます。時間を表すフィールドをデータ型「時間」で作成します。このとき時間の単位は指定しません。

データ型「時間」
そして計算式のフィールドをデータ型「速さ」で作成します。ここでも早さの単位の指定は不要です。
データ型「速さ」
集計表で時間の値入力すると例えば次の図のようになり、速さが求められます。
長さはミリ、時間は秒、速さはkm/h
長さ、時間、速さの単位はそれぞれミリ、秒、時速となっています。ミリをキロに換算したり、秒を時間に換算する式は不要であることがわかります。

単位を補う機能

このように単位コンシャスなRevitですが、単位が合致しない式を立てると、式に含まれる数字に適切な単位の補正を施してくれます。例えば、次のような式があります。

三菱電機HPより引用

この式では、単位が一致していないのですが、この式にある「20」がポイントです。スペースの集計表で次のような式のフィールドを作ってみます。

明らかに単位は一致していないが・・・
このフィールドの単位は

  • 必要換気表:㎥/h
  • 面積:㎡
  • 一人当たりの面積:㎡

で計算式側に ㎥/h が不足しています。しかし、OKを押すとそのまま受け入れられます。もう一度計算式フィールドを編集すると

係数20に不足していた単位が補充されている

20に㎥/hが補充されています。

単位がない場合は換算式必要

もう一つの例を見てみます。

換気回数(回/h)=1時間の換気量(㎡/h) / 室の容積(㎡)

回/hという単位はRevitにはないので、これを実数で求めてみます。同じようにスペースの集計表で、次のような計算式を作成します。

このままだと単位が一致せずエラーになる

指定した換気風量は㎥/hで、容積が㎥なので、結果は 1/hとなるため単位が一致せずエラーとなります。そこで、× [h] と補充してくれることを期待して先頭に「1*」を設定すると、エラーにはなりません。

1*を追加し、単位補充を期待する
しかし出来上がった集計表をみると、値が変ですね。
換気回数は108÷57.36=1.88…のはずでは???

計算フィールドを再度編集してみます。

「1秒」が補充されている!

すると、先頭に追加した1*が1s*となって、1hではなく1s(1秒)が補充されていることがわかります。Revitからしてみればデータタイプ「時間」が不足しているのだと考えて、データ型時間の基本単位(Revitが内部的に保持している数値の単位)である秒を補充した、ということです。

修正方法は簡単で、1sを「3600s」 または「1h」とするだけです。

1s→3600sに
こうすることで正しく表示されます。
正しく計算される

Revitの単位補充はRevitがもつ単位であればうまくいくのですが、計算の単位がRevitのもつ単位に含まれていない場合は要注意です。値がおかしいなと思ったら、計算式を編集して単位を確かめてください。