Orange ブランチ(Windows/Linux/OSX/Solaris)+bf-blender
投稿日時 2005年12月31日 | カテゴリ: テストビルド
|
Auralis氏: Orange CVS 26.12.2005 Solaris 10 US3 rcas氏: 2005-12-27 01-00 GMT # Windows + Linux # Orange + bf-blender gabio氏: bf-Blender - Orange - Windows - Linux (2005-12-28) jtuttle氏: Orange for OS X 12-29-05 5-04pm jms氏: Orange Blender - Windows (2005-12-30) MSVC (update) BrianH氏: Orange Branch Build for OSX
最近は完全に Tuhopuu の代替となってしまった感のある、Orange プロジェクト用ブランチですが、今回は Material 関係に二つの新機能が追加されています。 ひとつは Material のリストボックスに、その Material のプレビューがアイコンとして表示されるようになったことです。 そしてもうひとつは、待望のノードベースの Material 編集です。ただし、こちらの機能は28日以降のみです(上記のリンクではgabio氏のビルド以降。Solaris版は残念ながら無理なようです)。
以下はgabio氏の記事からの引用です。
クリスマスコーディングワーク!
********* ノードエディタ:
- MaterialButtons の "Nodes" パネルもしくは Node Editor のヘッダアイコンを選択することにより使用可能になります。これは Material Layer とは共存できません。
- ノードは現在、Material("シェーダ")を実行しますが、現在はプレビューレンダーコードのみ使用しています。(訳注:レンダリングには反映されません)
- ノードは(オプションで)レンダリング画像のプレビュー機能を持っています。
- 各ノードのヘッダでは、ボタンやプレビュー画像を隠すことができます。
- ノードはドラッグで拡大縮小できます。(右下の隅)
- ノードは[H]キーで最小化できます。
- 入力ソケット(訳注:ノードの左側に表示されている "Color"など)上の[ctrl]+クリックで、デフォルトの値がポップアップ表示されます。
- Material/Texture もしくは Mix ノードの変更は、ノードタイトルの will adjust Node title.
- ノード外でドラッグするとカーソルがナイフに変わり、矩形内に入ったリンクのラインをカットできます。
- 新しいノードタイプ、RGBtoBW、Texture、In/Output、ColorRamp を追加。 (訳注:複数のコミットを固めて掲載されているようです)
- Material ノードには、ディフューズもしくはスペキュラの出力、または、negative normal(負の Normal)を使用するオプションがあります。インプットソケット "Normal" は、その Material に、強制的にその入力からの Normal を使用させるようにし、そうでない場合は、ノードツリーを持つ Material 本来の Normal を使用させるようにします。
- 二つのマッチしないソケット間のリンクの描画時、Blender はコンバートノード(現在は Value と RGB の組み合わせのみ)を間に挿入します。
- すでに使用されているインプットソケットへのリンク描画時、古いリンクは消えるか、他の使用されていないソケットに代えられます。
- Material ノードをクリックすると、アクティブになり、その設定がすべて MaterialButtons に表示されます。アクティブな Material ノードの Material アイコンは、赤で表示されます。
- ノードのクリックで、MaterialButtons の Node パネル内にそのオプションが表示されます。
- ツリーの内容のサンプルとして、複数の Output ノードを使用できますが、実際には違う色と赤い Material アイコンで表示される、一つの Output のみが有効となります。
- ノードタイプに ThemeColor を追加。
- [Alt]+[C]で、既存の Material-Layer をノードに変換します…現在、Material/mix ノードを追加し、つなぐだけです。完全にするために多くのコーディングを行う価値があるのかどうかは不明です。
- [C]で、新たな "Solve order" を呼び出すことができます。これにより、すべての循環による衝突の可能性を(あれば)見ることができます。
- 技術情報:ノードは "Type" 構造体を使用しており、Node の構造と in/output ソケットを定義しています。Type 構造体はすべての決められた情報とコールバックを格納し、Blender によって要求された物と適合させるため、保存されたノードを再構築することを可能にしています。
- 現在の(新しい)ノードの定義はシンプルで、決められた Type 構造体を埋め、いくつかのコールバックのコードを追加するだけです。ドキュメントを作成する予定です!
- ノードのプレビュー画像は、デフォルトでは float です。
********* アイコン描画:
- 旧アイコンの実装方法を新しいシステムでクリーンアップし、16x16にし、センタリングと大きさを修正しました。
- アイコンの描画を、浮動小数点数の位置情報を使用するように。
- BIF_calcpreview_image() を interface_icons.c に移動し、icon_from_image()にリネーム。多くの不必要な Imbuf のマジックナンバーをここから削除しました!
- アイコンが正しいサイズであるとき、大きさ変更と imbuf のコピーをスキップしていました。
********* プレビューレンダー:
- コードを大幅にクリーンアップ…。
- 内部でのみ使用されていた BIF_xxx コールをリネーム。
- BIF_previewrender() がレンダリング方法の引数を受け入れるようになりました。そのおかげで、アイコンや ButtonsWindow のプレビューレンダー、Node Editor をサポートするようになりました。
- BIF_preview_changed() コールのみ存在するようになり、ボタンと Node Editor に必要なすべての信号をサポートします。
********* その他:
- glutil.c、glaDrawPixelsSafe()、glaDrawPixelsTex() が GL_FLOAT 矩形形式の引数を受け入れるように。
- ColorBand を、interface.c のビルトインボタンにしました。 buttons_shading.c 内のクリーンアップ作業の一環です…。
- 不必要な glBlendFunc() コールを大量削除。
- ボタン用の文字列の長さの計算のバグを修正(骨董品!)
|
|