private Color ComputeDiffuse( Light l, V3 incidentVec, V3 normalVec, Object3D obj, V2 uv ) { Color diffuseIllu = new Color(0, 0, 0); if (incidentVec * normalVec > 0.0f) { diffuseIllu = obj.TextureColor(uv) * l.Intensity * obj.Material.KDiffuse * (incidentVec * normalVec); } return diffuseIllu; }
/// Computes the ambient component of the Phong reflection model for /// an ambient light. public override Color ComputeAmbientLight( AmbientLight aL, Object3D obj, V3 p, V2 uv ) { return obj.TextureColor(uv) * aL.Intensity * obj.Material.KAmbient; }
public override Color Compute( List<Light> lights, Object3D obj, V3 p, V2 uv ) { return obj.TextureColor(uv); }