Radiosity : RadiosityEffect

Radiosity - superclass: RadiosityEffect; super-superclass:MAXWrapper - classID: #(2036089192, 1721374773) 
 

   

ライティングとレンダリング - クイック ナビゲーション

この RadiosityEffect は Autodesk VIZ 4 で初めて実装され、3ds Max 5 以降で使用できます。

3ds Max コンストラクタ

Radiosity... 	 
Discreet_Radiosity ... 

Autodesk VIZ コンストラクタ

Discreet_Radiosity ... VIZ_Radiosity... 
注: Discreet_Radiosity コンストラクタは、互換性を保つためにスクリプト内で使用します。

   

プロパティ

<Radiosity>.lightUnitsUsed Integer default: 0 -- integer; Light_Units_in_Use 

ラジオシティで使用されるライト単位を取得/設定します。

有効な値は次のとおりです。

0 - International

1 - American

注:

[カスタマイズ](Customize) > [単位設定](Units Setup)ダイアログ ボックスでライト単位を変更すると、現在割り当てられている RadiosityEffect に影響を与えます。MAXScript を使用して値を設定すると、現在割り当てられている RadiosityEffect が使用する単位が変更されますが、[カスタマイズ](Customize)/[単位設定](Units Setup)ダイアログ ボックスには影響しません。

   

<Radiosity>.radProcessInRenderOnly Boolean default: false -- boolean; Process_in_Radiosity_Only 

[ラジオシティ処理パラメータ](Radiosity Processing Parameters)ダイアログ ボックスの[開始](Start)ボタンの状態を取得/設定します。この値を true に設定すると、このボタンは無効になり、ラジオシティ処理がレンダラーのみによって開始されます。 false に設定すると、ユーザがボタンを押すことによって手動で処理を開始できます。

[ラジオシティ処理パラメータ](Radiosity Processing Parameters)ロールアウト

   

<Radiosity>.radInitialQuality Float default: 85.0 -- float; Initial_Quality 

[初期品質](Initial Quality)の値をパーセント単位で取得/設定します。

   

<Radiosity>.radGlobalRefineSteps Integer default: 0 -- integer; Refine_Iterations_Done 

[反復によるリファイン (すべてのオブジェクト)](Refine Iterations (All Objects))の値を取得/設定します。

   

<Radiosity>.radSelectionRefineSteps Integer default: 0 -- integer; Selection_Refine_Steps 

[反復によるリファイン (選択したオブジェクト)](Refine Iterations (Selected Objects))の値を取得/設定します。

   

<Radiosity>.radProcessObjectRefineSteps Boolean default: true -- boolean; processObjectRefineSteps 

[処理結果をオブジェクトに保持](Process Refine Iterations Stored in Objects)ダイアログ ボックスの状態を取得/設定します。 true に設定すると、反復によるリファインが[オブジェクト プロパティ](Object Properties) > [ラジオシティ](Radiosity)タブ > [反復によるリファイン](Refine Iterations)で設定されます。false のとき、これらのオブジェクト固有の設定は無視されます。

   

<Radiosity>.radFiltering Integer default: 0 -- integer; Filtering 

[インタラクティブ ツール](Interactive Tools)コントロール領域の[間接照明フィルタリング](Indirect Light Filtering)の値を取得/設定します。

   

<Radiosity>.radDirectFiltering Integer default: 0 -- integer; Filtering 

[インタラクティブ ツール](Interactive Tools)コントロール領域の[直接照明フィルタリング](Direct Light Filtering)の値を取得/設定します。3ds Max 8 以降 で使用可能です。

   

<Radiosity>.radDisplayInViewport Boolean default: true -- boolean; Display_in_Viewport 

[インタラクティブ ツール](Interactive Tools)コントロール領域の[ビューポートにラジオシティを表示](Display Radiosity in Viewport)チェックボックスの状態を取得/設定します。ビューポート内のラジオシティのインタラクティブ表示を有効にします。

[ラジオシティ メッシュ パラメータ](Radiosity Meshing Parameters)ロールアウト

   

<Radiosity>.meshingEnabled Boolean default: false -- boolean; Enable_Meshing 

[グローバル サブディビジョン設定](Global Subdivision Settings)コントロール領域の[有効](Enabled)チェックボックスの状態を取得/設定します。true に設定すると、ユーザ定義のグローバル メッシュ サイズが有効になり、 .useAdaptiveMeshing を true に設定した場合はアダプティブ サブディビジョンが有効になります。

   

<Radiosity>.useAdaptiveMeshing BooleanClass default: true -- boolean; Use_Adaptive_Meshing 

[アダプティブ サブディビジョンを使用](Use Adaptive Subdivision)チェックボックスをオンまたはオフにします。true に設定し、[グローバル サブディビジョン設定](Global Subdivision Settings) > [有効](Enabled)チェックボックス(. meshingEnabled )がオンの場合、アダプティブ サブディビジョンが使用されます。3ds Max 8 以降 で使用可能です。

   

<Radiosity>.meshingSize Float default: 36.0 -- animatable; world units; Meshing_Size 

[メッシュ設定](Mesh Settings)コントロール領域で最大メッシュ サイズの値を取得/設定します。3ds Max 8 以前のバージョンでは、この値は「メッシュのサイズ」と呼ばれていました。

   

<Radiosity>.minimumMeshSize Float default: 3.0 -- animatable; worldUnits; Minimum_Mesh_Size 

[メッシュ設定](Mesh Settings)コントロール領域で最小メッシュ サイズの値を取得および設定します。3ds Max 8 以降 で使用可能です。

   

<Radiosity>.contrastThreshold Float default: 75.0 -- animatable; percent; Contrast_Threshold 

[メッシュ設定](Mesh Settings)コントロール領域でコントラストのしきい値を取得します。3ds Max 8 以降 で使用可能です。

   

<Radiosity>.initialMeshSize Float default: 12.0 -- animatable; worldUnits; Initial_Mesh_Size 

[メッシュ設定](Mesh Settings)コントロール領域で初期メッシュ サイズの値を取得/設定します。3ds Max 8 以降 で使用可能です。

   

<Radiosity>.shootDirectLights BooleanClass default: true -- boolean; Shoot_Direct_Lights 

[ライト設定](Light Settings)コントロール領域の[直接照明を当てる](Shoot Direct Lights)チェックボックスの状態を取得/設定します。3ds Max 8 以降 で使用可能です。

   

<Radiosity>.includePointLights BooleanClass default: true -- boolean; Include_Point_Lights 

[ライト設定](Light Settings)コントロール領域の[ポイント ライトをサブディビジョン処理に含める](Include Point Lights in Subdivision)チェックボックスの状態を取得/設定します。3ds Max 8 以降 で使用可能です。

   

<Radiosity>.includeLinearLights BooleanClass default: true -- boolean; Include_Linear_Lights 

[ライト設定](Light Settings)コントロール領域の[線形ライトをサブディビジョン処理に含める](Include Linear Lights in Subdivision)チェックボックスの状態を取得/設定します。3ds Max 8 以降 で使用可能です。

   

<Radiosity>.includeAreaLights BooleanClass default: true -- boolean; Include_Area_Lights 

[ライト設定](Light Settings)コントロール領域の[エリア ライトをサブディビジョン処理に含める](Include Area Lights in Subdivision)チェックボックスの状態を取得/設定します。3ds Max 8 以降 で使用可能です。

   

<Radiosity>.includeSkylight BooleanClass default: false -- boolean; Include_Skylight 

[ライト設定](Light Settings)コントロール領域の[スカイライトを含める](Include Skylight)チェックボックスの状態を取得/設定します。3ds Max 8 以降 で使用可能です。

   

<Radiosity>.includeSelfEmittingLights BooleanClass default: false -- boolean; Include_Self_Emitting_Faces 

[ライト設定](Light Settings)コントロール領域の[自己発生面をサブディビジョン処理に含める](Include Self-Emitting Faces in Subdivision)チェックボックスの状態を取得/設定します。3ds Max 8 以降 で使用可能です。

   

<Radiosity>.minimumSelfEmittingSize Float default: 6.0 -- animatable; worldUnits; Minimum_Self_Emitting_Size 

[ライト設定](Light Settings)コントロール領域の[最小自己発光サイズ](Minimum Self-Emitting Size)スピナーの値を取得/設定します。3ds Max 8 以降 で使用可能です。

[ライト ペインティング](Light Painting)ロールアウト

   

<Radiosity>.lightPaintingIntensity Float default: 500.0 -- float; Light_Painting_Intensity 

[ライト ペインティング強度](Light Painting Intensity)の値をルクス単位で取得/設定します。

   

<Radiosity>.lightPaintingPressure Float default: 10.0 -- float; Light_Painting_Pressure 

[ライト ペインティング圧力](Light Painting Pressure)の値をパーセント単位で取得/設定します。

[レンダリング パラメータ](Rendering Parameters)ロールアウト

   

<Radiosity>.rmReuseDirectIllumination Boolean default: false -- boolean; Re_Use_Direct_Illumination 

[ラジオシティ ソリューションの直接光を再利用](Re-Use Direct Illumination from Radiosity Solution)/[直接光でレンダリング](Render Direct Illumination)ラジオボタンの状態を取得/設定します。 true に設定すると、ラジオシティ ソリューションの直接光が再利用されます。 false に設定すると、直接光はレンダリングされます。

   

<Radiosity>.rmRegather Boolean default: false -- boolean; Regather 

[間接光をリギャザー](Regather Indirect Illumination)チェックボックスの状態を取得/設定します。 true に設定すると、間接光はリギャザーされます。

   

<Radiosity>.rmRaysPerSample Integer default: 64 -- integer; Rays_per_Sample 

[各サンプルのレイ数](Rays per Sample)の値を取得/設定します。

   

<Radiosity>.rmFilterRadius Float default: 2.5 -- float; Filter_Radius 

[フィルタの半径](Filter Radius)の値をピクセル単位で取得/設定します。

   

<Radiosity>.rmClampEnabled Boolean default: false -- boolean; Clamp_Enabled 

[クランプ値](Clamp Value)チェックボックスの状態を取得/設定します。

   

<Radiosity>.rmClampValue Float default: 10000.0 -- float; Clamp_Value 

[クランプ値 (cd/m^2)](Clamp Values (cd/m^2))パラメータの値を取得/設定します。 rmClampEnabled が true に設定されているとき、 rmClampValue を超える値がクランプされます。

   

<Radiosity>.rmAdaptiveEnabled Boolean default: false -- boolean; Adaptive_Enabled 

[アダプティブ サンプリング](Adaptive Sampling)チェックボックスの状態を取得/設定します。

   

<Radiosity>.rmSampleSpacing Integer default: 3 -- integer; Sample_Spacing 

[サンプル間隔](Sample Spacing)の値を取得/設定します。

有効な値は次のとおりです。

0 - 2x2

1 - 4x4

2 - 8x8

3 - 16x16

4 - 32x32

   

<Radiosity>.rmSubdivisionContrast Float default: 5.0 -- float; Subdivision_Contrast 

[サブディビジョンのコントラスト](Subdivision Contrast)の値を取得/設定します。

   

<Radiosity>.rmMinSampleSpacing Integer default: 1 -- integer; Minimum_Sample_Spacing 

最小サンプル間隔を取得/設定します。

有効な値は次のとおりです。

0 - 1x1

1 - 2x2

3 - 8x8

4 - 16x16

5 - 32x32

6- 64x64

   

<Radiosity>.rmShowSamples Boolean default: false -- boolean; Show_Samples 

[サンプルを表示](Show Samples)チェックボックスの状態を取得/設定します。

[統計](Statistics)ロールアウト

   

<Radiosity>.statSolutionQuality Float default: 0.0 -- float; Solution_Quality 

[統計](Statistics)ロールアウトの[ソリューション品質](Solution Quality)の値が入ります。読み込み専用です。

   

<Radiosity>.statRefineIterations Integer default: 0 -- integer; Refine_Iterations_Done 

[統計](Statistics)ロールアウトの[反復のリファイン](Refine Iterations)の値が入ります。読み込み専用です。

   

<Radiosity>.elapsedTime Integer default: 0 -- integer; Elapsed_Time 

ラジオシティ ソリューションを処理するために使われる時間 (秒)。読み込み専用です。

   

<Radiosity>.statNumGeomObjects Integer default: 0 -- integer; Number_of_Geometric_Objects 

[統計](Statistics)ロールアウトの[ジオメトリック オブジェクト](Geometric Objects)の値が入ります。読み込み専用です。

   

<Radiosity>.statMeshSize Float default: 36.0 -- float; Meshing_Size 

[統計](Statistics)ロールアウトの[メッシュ サイズ](Meshing Size)の値が入ります。読み込み専用です。

   

<Radiosity>.statNumLightObjects Integer default: 0 -- integer; Number_of_Light_Objects 

[統計](Statistics)ロールアウトの[ライト オブジェクト](Light Objects)の値が入ります。読み込み専用です。

   

<Radiosity>.statNumFaces Integer default: 0 -- integer; Radiosity_scene_faces 

[統計](Statistics)ロールアウトの[メッシュ エレメント](Mesh Elements)の値が入ります。読み込み専用です。

ラジオシティ インタフェース:

   

Interface:srrOps 

メソッド:

   

<void>Start () 

ラジオシティ計算を開始します。

   

<void>Stop () 

ラジオシティ計算を開始します。

   

<void>Reset <boolean>resetGeometry <boolean>noWarningDialog 

ラジオシティ ソリューションをリセットします。 resetGeometry パラメータは、ジオメトリをリセットするかどうかもコントロールします。 noWarningDialog は、リセット警告ダイアログ ボックスを表示するかどうかをコントロールします。

   

<void>GatherObjects <&node array>Nodes <integer>GatherSteps 

   

Nodes is In parameter GatherSteps Validated by Range: 0 to 1000000 

   

<boolean>ShowLightingStatistics () 

[ライト分析](Lighting Analysis)ダイアログ ボックスを表示します。成功の場合は true 、シーン内にラジオシティ ソリューションがない場合は false を返します。

   

<void>AbortLightingStatistics () 

[ライト分析](Lighting Analysis)ダイアログ ボックスが開いている場合は、閉じます。

   

<boolean>CanShowLightingStatistics () 

[照明分析](Lighting Analysis)ダイアログ ボックスを表示できる場合は true 、それ以外の場合は false を返します。

   

<bool>GetPointIlluminance <&float>result <node>node <&point3>point <&point3>vertex0 <&point3>vertex1 <&point3>vertex2 

   

result is Out parameter point is In parameter vertex0 is In parameter vertex1 is In parameter vertex2 is In parameter 

指定した point で照度値が取得できた場合は、 true を返します。結果は result Out パラメータに参照で渡され、 vertex0 vertex1 および vertex2 は、point が常駐する面の頂点インデックスに参照で渡されます。

sceneRadiosity.radiosity = Radiosity()
obj = plane()
convertToMesh obj
for i in 1 to obj.numFaces do
(
myFace = getFace obj i
myverts = # ()
myverts[1] = getVert obj myFace.x
myverts[2] = getVert obj myFace.y
myverts[3] = getVert obj myFace.z
midPoint = (myverts[1] + myverts[2] + myverts[3])/3
PointVal = 0.0
sceneRadiosity.Radiosity.GetPointIlluminance &pointVal obj midPoint myverts[1] myverts[2] myverts[3]
format "Face %: %\n" i pointVal
)

   

<bool>GetPointLuminance <&float>result <node>node <&point3>point <&point3>vertex0 <&point3>vertex1 <&point3>vertex2 

   

result is Out parameter point is In parameter vertex0 is In parameter vertex1 is In parameter vertex2 is In parameter 

指定した point で輝度値が取得できた場合は、 true を返します。結果は result Out パラメータに参照で渡され、 vertex0 vertex1 および vertex2 は、point が常駐する面の頂点インデックスに参照で渡されます。

   

<bool>GetPointReflectance <&float>result <node>node <&point3>point <&point3>vertex0 <&point3>vertex1 <&point3>vertex2 

   

result is Out parameter point is In parameter vertex0 is In parameter vertex1 is In parameter vertex2 is In parameter 

指定した point で反射率の値が取得できた場合は、 true を返します。結果は result Out パラメータに参照で渡され、 vertex0 vertex1 および vertex2 は、point が常駐する面の頂点インデックスに参照で渡されます。

   

<bool>GetPointTransmittance <&float>result <node>node <&point3>point <&point3>vertex0 <&point3>vertex1 <&point3>vertex2 

   

result is Out parameter point is In parameter vertex0 is In parameter vertex1 is In parameter vertex2 is In parameter 

指定した point で透過率の値が取得できた場合は、 true を返します。結果は result Out パラメータに参照で渡され、 vertex0 vertex1 および vertex2 は、point が常駐する面の頂点インデックスに参照で渡されます。

--Show the scene radiosity ReferenceTarget object:
sceneRadiosity.radiosity
--> ReferenceTarget:Radiosity
--Reset the Scene Radiosity solution completely, allow warning:
sceneRadiosity.radiosity.Reset true false
--> OK
--Start new Radiosity Processing:
sceneRadiosity.radiosity.Start ()
--> OK
--Stop the Radiosity Processing:
sceneRadiosity.radiosity.Stop ()
--> OK
--Check whether the Lighting Analysis dialog can be displayed
sceneradiosity.radiosity.CanShowLightingStatistics ()
--> true
--Display the Lighting Analysis dialog
sceneradiosity.radiosity.ShowLightingStatistics ()
--> true
--Close the Lighting Analysis dialog
sceneradiosity.radiosity.AbortLightingStatistics ()
--> OK

3ds Max 6 以降では、次のインタフェースによって、MAXScript がラジオシティ メッシュにアクセスできます。

   

Interface: srrRadiosityMesh 

メソッド:

   

<boolean>doesSolutionExist () 

ラジオシティ ソリューションが存在する場合、 true を返します。

   

<boolean>doesMeshExist <node>node 

指定されたノードにラジオシティ メッシュがある場合、 true を返します。

   

<boolean>isMeshValid <node>node 

指定されたノードに有効なラジオシティ メッシュがある場合、 true を返します。

   

<interval by value>getMeshValidity <node>node 

指定したノードのラジオシティ メッシュの有効性の間隔を返します。

   

<mesh by value>getMesh <node>node 

ノードのラジオシティ メッシュを返します。

   

<interval by value>getMeshTMValidity <node>node 

ラジオシティ メッシュの変換行列の有効性の間隔を返します。

   

<matrix3 by value>getMeshTM <node>node 

指定されたノードのラジオシティ メッシュの変換行列を返します。

関連事項