インタフェース> コア インタフェース > IViewportShadingMgr |
IViewportShadingMgr コア インタフェースは、MAXScript に高度なハードウェア ビューポート シェーディング(ピクセルごとの照明と影付け)のプロパティを公開しています。
このインタフェースは、3ds Max 2008 以降で使用可能です。
3ds Max 2010 では、異なるインタフェース セットを使用して、ビューポート シェーディングに関連したその他のプロパティが公開されています(説明は別のトピックを参照)。
IViewportShadingMgr. ShadingLimits : enum : Read|Write ShadingLimits enums: { #None | #Good | #Best }
なし - 古いモード。ライトの制限は、グラフィックス ドライバに依存します。通常は頂点ライティングに対して 8 個のライトです。
良 (SM 2.0) - 影付けが有効になります。SM2.0 シェーダ モデルのみサポートするグラフィックス ハードウェアでは、旧式の頂点ごとのライティングだけが計算されます。
最良 (SM 3.0) - 影付けとピクセルごとのライティングが有効になります。64 個のライトがサポートされます。このモードは、SM 3.0 互換のグラフィックス ハードウェアに依存します。
このメソッドは、プロパティ.ActivateViewportShading および .ShadingQuality と同じです(ViewportBasicSettings インタフェースによって公開され、3ds Max 2010 以降で使用可能 )。
[ビューポート設定](Viewport Configuration)ダイアログ ボックスの[ライトとシャドウ](Lighting and Shadows)タブにある[選択したライトを自動表示](Auto Display Selected Lights)チェックボックスの状態を取得/設定します。true に設定すると、現在選択されているライトの照射および影付けが有効になり、選択されていないライトはオフになります。false に設定すると、すべてのライトがオンになります。
[ビューポート設定](Viewport Configuration)ダイアログ ボックスの[ライトとシャドウ](Lighting and Shadows)タブにある [既定値のライトを影付け](Cast Shadows for Default Light)チェックボックスの状態を取得/設定します。true に設定すると、既定値のライトが影付けを行うようになります。false に設定すると、既定値のライトは影付けを行いません。
[ビューポート設定](Viewport Configuration)ダイアログ ボックスの[ライトとシャドウ](Lighting and Shadows)タブにある[シャドウ強度を無視](Global Shadow Intensity)スピナーの値を取得/設定します。ビューポート シャドウの強度をコントロールします。0.5 に設定した場合、シャドウは 50% の密度になります。
ビューポート シャドウが透明度を考慮するかどうかを取得/設定します。
ビューポート シャドウをアクティブ ビューポートでのみ更新する(true)か、すべてのビューポートで更新するか(false、既定値)を取得/設定します。
ビューポートに表示するライトの最大数を取得/設定します。既定値は 64 です。
アンビエント オクルージョン モードが透明度を考慮するかどうかを取得/設定します。
ソフト シャドウのフィルタ サイズを取得/設定します。0.0 ~ 1.0 の範囲である必要があります。
このメソッドを呼び出すと、ビューポートで、現在、照射するよう設定されているすべてのライトが選択されます。
ライト ノードのンタフェース : INodeShadingProperties . ViewporShadowCasting プロパティの値だけが考慮され、基本オブジェクトの影付けのプロパティは考慮されません。
このメソッドを呼び出すと、ビューポートで、現在、照射するよう設定されているすべてのライトが選択されます。
ライト ノードのンタフェース : INodeShadingProperties . ViewportIllumiation プロパティの値だけが考慮され、基本オブジェクトの .on プロパティは考慮されません。
このメソッドを呼び出すと、選択されていないすべてのライトのビューポート照明が無効になり、選択されているライトだけがビューポートを照射します。
ライトが選択されていない場合、すべてのライトで照明が無効になります。
このメソッドは、ライト ノーのインタフェース : INodeShadingProperties . ViewporIllumination プロパティを適切に操作し、ノードの選択されている状態に基づいてビューポート照明をオンまたはオフにします。これはノードの . ViewportShadowCasting プロパティには影響しません。
.AutoDisplaySelLights プロパティが true に設定されている場合、選択されていないライトはシーンを照射しません。
このメソッドを引数に true を指定して使用すると、現在の選択されているライトをロックし、選択解除された後もシーンを照射した状態にすることができます。引数に false を指定して使用すると、選択したライトを再びロック解除することができます。
<void>IViewportShadingMgr.GetViewportShadingLights <&node array>nodeList <enum>lightProperty nodeList is In and Out parameter lightProperty enums: {#ShadowCasting|#Illuminating|#Locked}
ビューポート シェーディング ライトを参照配列 nodeList に返します。
lightProperty 列挙子は、影付け、照明、またはロックされたライトのどれを収集するかを指定します。
引数が true の場合、システムは選択されているライトからのみ影を生成するよう切り替えられます。引数が false の場合、すべてのライトが影を生成できるようになります。
指定されたライトがビューポート シェーディング システムによってサポートされている場合は true を返します。
<bool>IViewportShadingMgr.IsShadingLimitValid <enum>ShadingLimits ShadingLimits enums: {#None|#Good|#Best}
指定されたシェーディング モードが現在のハードウェアで有効である場合は、true を返します。
GPU 診断レポートを MAXScript リスナーに出力します。
<void>IViewportShadingMgr.SetViewportShadingLimits <enum>ShadingLimits Quiet:<bool> ShadingLimits enums: {#None|#Good|#Best} Quiet default value: true
ビューポート シェーディングの制限を指定されたモードに設定します。quiet: オプション キーワード引数を true として指定した場合、指定されたノードが現在のシステムでサポートされていない場合でもエラーは報告されません。