예제 #1
0
 public FresnelSpecularBRDF(float r, float t, float etaA, float etaB, TransportMode mode)
 {
     fresnel      = new DielectricFresnel(etaA, etaB);
     reflection   = new SpecularReflectionBRDF(r, fresnel);
     transmission = new SpecularTransmissionBRDF(t, etaA, etaB, mode);
 }
예제 #2
0
 public FresnelMaterial(float r, float t, float eta) : base(Color.White)
 {
     brdf = new FresnelSpecularBRDF(r, t, 1, eta, TransportMode.Importance);
 }
예제 #3
0
 public TransmissionMaterial(float t, float eta) : base(Color.White)
 {
     brdf = new SpecularTransmissionBRDF(t, 1f, eta, TransportMode.Importance);
 }
예제 #4
0
        public ReflectionMaterial(float r, float eta) : base(Color.White)
        {
            var fresnel = new DielectricFresnel(1, eta);

            brdf = new SpecularReflectionBRDF(r, fresnel);
        }
예제 #5
0
 public DiffuseMaterial(Color color, float r) : base(color)
 {
     brdf = new LambertianBRDF(r);
 }