フォトンマッピングの設定には次の3つがある。
グローバルなフォトン設定 | グローバル設定におけるフォトン設定は、放たれるフォトンの数やフォトン収集範囲や数など、フォトンマッピング全体に関係することを指定する。 |
物体のフォトン設定 | 物体におけるフォトン設定では、集光模様を生じさせる原因となる物体を指定したりするなど、各物体に対するフォトンマッピングを指定する。 |
光源のフォトン設定 | 光源におけるフォトン設定では、フォトンが発射される光源を指定する。 |
global_settings { photons { spacing PHOTON_SPACING | count PHOTONS_TO_SHOOT [ gather MIN_GATHER, MAX_GATHER ] [ media MAX_STEPS [, FACTOR ] ] [ jitter JITTER_AMOUNT ] [ max_trace_level PHOTON_TRACE_LEVEL ] [ adc_bailout PHTON_ADC_BAILOUT ] [ save_file "filename" | load_file "filename" ] [ autostop AUTOSTOP_FRACTION ] [ expand_thresholds PERCENT_INCREASE, EXPAND_MIN ] [ radius GATHER_RADIUS, MULTIPLIER, GATHER_RADIUS_MEDIA, MULTIPLIER ] } } |
||
photons | グローバル設定でフォトンマッピングを有効にするキーワード | |
spacing PHOTON_SPACING | フォトン間の距離を指定する。⇒「9.1-1 フォトン間隔」 | |
count PHOTONS_TO_SHOOT | フォトン数の指定をする。⇒「9.1-2 フォトン数」 | |
gather MIN_GATHER, MAX_GATHER | 各点で収集するフォトンの最大値と最小値を設定する。最小値、最大値を整数で指定する。[デフォルト:gather 20,100 ]であり、通常は変更の必要なし。 | |
media MAX_STEPS [, FACTOR] | メディアに対してフォトンを有効にする。MAX_STEPSは、区間あたりに割り当てられるフォトンの最大値の設定である。FACTORは通常のspacingとの比であり、メディアのspacingとなる。[デフォルト:0 ] | |
jitter JITTER_AMOUNT | サンプリングで使用されるゆらぎの量をを設定する。[デフォルト:0.4 ]、通常は変更の必要なし。 | |
max_trace_level PHOTON_TRACE_LEVEL | フォトンの最大反射・屈折回数の設定 [デフォルト:5 ] ⇒「4.7 max_trace_level」 | |
adc_bailout PHTON_ADC_BAILOUT | 反射・屈折計算の精度の指定 [デフォルト:1/255 ](約0.0039) ⇒「4.1 ADC_bailout」 | |
save_file "filename" | フォトンマップを指定名でファイルに保存する。load_fileと同時に使用することはできない。 | |
load_file "filename" | フォトンマップを指定ファイルから読み込む。save_fileと同時に使用することはできない。 | |
autostop AUTOSTOP_FRACTION | フォトンの発射の自動停止。指定された割合(0.0〜1.0)のフォトンが標的物体に全く当たらないとき、フォトン発射を中止する。1つでも当たるとこの機能は解除される。 | |
expand_thresholds PERCENT_INCREASE, EXPAND_MIN | より正確にフォトンを収集するための収集半径の増加割合PERCENT_INCREASE(20%がディフォルト)、この値でもあまりフォトンを収集できないとEXPAND_MIN(40%がディフォルト)で再収集を行う。 | |
radius GATHER_RADIUS, MULTIPLIER, GATHER_RADIUS_MEDIA, MULTIPLIER | フォトンの収集半径と半径調整用の乗数、メディア用のフォトンの収集半径と半径調整用の乗数の設定 ⇒「9.1-3 収集半径」 |
![]() |
![]() |
potons { spacing 0.02 } | potons { spacing 0.2 } |
![]() |
![]() |
potons { count 200000 } | potons { count 10000 } |
![]() |
![]() |
potons { spacing 0.02 } | potons { spacing 0.02 radius 0.01 } |
object{ photons { [ target [SPACING_MULTIPLIER ] ] [ refraction on|off ] [ reflection on|off ] [ collect on|off ] [ pass_through ] } } |
||
photons |
物体設定でフォトンマッピングを有効にするキーワード | |
target [SPAACING_MULTIPLIER] | フォトンを発射の目標となる物体の指定。SPAACING_MULTIPLIERは物体に対するフォトン密度調節を行う。0.5であれば、フォトン間隔は他の物体の1/2となる。⇒「9.2-1 目標物体」 | |
refraction on|off | 屈折を有効にするスイッチ(その物体に衝突したフォトンが屈折するかしないかの指定) [デフォルト:off ] ⇒「9.2-2 物体フォトン屈折」 | |
reflection on|off | 反射を有効にするスイッチ(その物体に衝突したフォトンが反射するかしないかの指定) [デフォルト:off ] | |
collect on|off | 物体にフォトンの収集を指示するスイッチ [デフォルト:on ] ⇒「9.2-3 フォトン収集」 | |
pass_through | 物体にフォトンが通り抜けることを指示するスイッチ ⇒「9.2-4 フォトン透過」 |
物体と光源ともに記述なし | ---> off 指定となる。 |
物体にon|offの記述、光源は記述なし | ---> その物体の指定に従う。 |
物体は記述なし、光源にon|offの記述 | ---> その光源の指定に従う。 |
物体と光源のon|offの記述が一致 | ---> その指定に従う。 |
物体と光源のon|offの記述が不一致 | ---> off 指定となる。 |
![]() |
![]() |
cylinder{<2,0,0>,<2,0,2>,5 open texture { T_Gold_1A } photons { target collect off reflection on } } cylinder{<-2,0,0>,<-2,0,2>,5 open texture { T_Gold_1A } photons { collect off } } |
sphere{<0,0,3.2> 3 material{M_Glass3} photons { target collect off reflection on refraction off } } |
![]() |
![]() |
box{ <-8,-8,-2> <8,-2.5,0> pigment {color rgb<0.45,0.4,0.2>*2.5} } box{ <-8,-2,-2> <8,3,0> pigment {color rgb<0.45,0.4,0.2>*2.5} photons { collect off } } |
![]() |
![]() |
box{ <-2,0,0>,<8,6,1>> texture {T_Wood1 scale 3 rotate x*90} photons { pass_through } translate<-5,-3,7>> } |
light_source { photons { [ refraction on | off ] [ reflection on | off ] [ area_light ] } } |
||
photons | 光源設定でフォトンマッピングを有効にするキーワード | |
refraction on|off | 屈折を有効にするスイッチ(その光源から放たれるフォトンが、屈折する性質を持つか持たないかの指定) [デフォルト:off ] | |
reflection on|off | 反射を有効にするスイッチ(その光源から放たれるフォトンが、反射する性質を持つか持たないかの指定) [デフォルト:off ] | |
area_light | 面光源を使用したときに記述する。面光源を使用してもこの指定がないと点光源として取り扱われる。 ⇒「9.3-1 面光源」 |
物体と光源ともに記述なし | ---> off 指定となる。 |
物体にon|offの記述、光源は記述なし | ---> その物体の指定に従う。 |
物体は記述なし、光源にon|offの記述 | ---> その光源の指定に従う。 |
物体と光源のon|offの記述が一致 | ---> その指定に従う。 |
物体と光源のon|offの記述が不一致 | ---> off 指定となる。 |
![]() |
//-----------------exmaple A global_settings { photons {spacing 0.02 } } light_source { <-30,20,35> color White area_light <20,0,0>,<0,20,0> 10,10 jitter photons { area_light } } |
![]() |
//-----------------exmaple B global_settings { photons {spacing 0.02 } } light_source { <-30,20,35> color White area_light <20,0,0>,<20,20,0> 3,3 jitter photons { area_light } } |
![]() |
//-----------------exmaple C global_settings { photons {spacing 0.1 } } light_source { <-30,20,35> color White area_light <20,0,0>,<0,20,0> 10,10 jitter photons { area_light } } |
![]() |
//-----------------exmaple D global_settings { photons {spacing 0.1 } } light_source { <-30,20,35> color White area_light <20,0,0>,<0,20,0> 3,3 jitter photons { area_light } } |