Exemplo n.º 1
0
 public CustomMaterial(VecColor color, double reflectCoef, double specularCoef, double refractiveCoef, double absorptionCoefficient)
 {
     Color                 = color;
     ReflectCoef           = reflectCoef;
     SpecularCoef          = specularCoef;
     RefractiveCoef        = refractiveCoef;
     AbsorptionCoefficient = absorptionCoefficient;
 }
Exemplo n.º 2
0
        public VecColor ToResultColor(ISceneObject sceneObject)
        {
            var reflectCoef = sceneObject.Material.ReflectCoef;

            if (reflectCoef < 0.99999)
            {
                var normalColor = VecColor.Intersection(
                    (GlobalLightningParameters.BackgroundLight + DiffusedColor),
                    sceneObject.Material.Color);
                return(normalColor * (1 - reflectCoef) + ReflectColor * reflectCoef + PrimaryIllumination);
            }

            return(ReflectColor + PrimaryIllumination);
        }
Exemplo n.º 3
0
 public Glass(VecColor color, double specularCoef, double absorptionCoefficient)
 {
     Color                 = color;
     SpecularCoef          = specularCoef;
     AbsorptionCoefficient = absorptionCoefficient;
 }
Exemplo n.º 4
0
 public PointLight(Vector3 location, VecColor color, double intensity)  : base(color, intensity)
 {
     Location  = location;
     Color     = color;
     Intensity = intensity;
 }
Exemplo n.º 5
0
 public ReflectionLight(VecColor diffusedColor, VecColor reflectColor, VecColor primaryIllumination)
 {
     DiffusedColor       = diffusedColor;
     ReflectColor        = reflectColor;
     PrimaryIllumination = primaryIllumination;
 }