Matrix4d.shadow
- Matrix4d shadow(Vector4d light, double a, double b, double c, double d)
- Matrix4d shadow(Vector4d light, double a, double b, double c, double d, Matrix4d dest)
- Matrix4d shadow(double lightX, double lightY, double lightZ, double lightW, double a, double b, double c, double d)
- Matrix4d shadow(double lightX, double lightY, double lightZ, double lightW, double a, double b, double c, double d, Matrix4d dest)
- Matrix4d shadow(Vector4d light, Matrix4d planeTransform, Matrix4d dest)
- Matrix4d shadow(Vector4d light, Matrix4d planeTransform)
- Matrix4d shadow(double lightX, double lightY, double lightZ, double lightW, Matrix4d planeTransform, Matrix4d dest)
- Matrix4d shadow(double lightX, double lightY, double lightZ, double lightW, Matrix4d planeTransform)
matrix_4d Matrix4d
constructorsfunctionsstatic variablesvariables
Apply a projection transformation to this matrix that projects onto the plane specified via the general plane equation <code>x*a + y*b + z*c + d = 0</code> as if casting a shadow from a given light position/direction <code>(lightX, lightY, lightZ, lightW)</code>. <p> If <code>lightW</code> is <code>0.0</code> the light is being treated as a directional light; if it is <code>1.0</code> it is a point light. <p> If <code>M</code> is <code>this</code> matrix and <code>S</code> the shadow matrix, then the new matrix will be <code>M * S</code>. So when transforming a vector <code>v</code> with the new matrix by using <code>M * S * v</code>, the shadow projection will be applied first! <p> Reference: <a href="ftp://ftp.sgi.com/opengl/contrib/blythe/advanced99/notes/node192.html">ftp.sgi.com</a>
@param lightX the x-component of the light's vector @param lightY the y-component of the light's vector @param lightZ the z-component of the light's vector @param lightW the w-component of the light's vector @param a the x factor in the plane equation @param b the y factor in the plane equation @param c the z factor in the plane equation @param d the constant in the plane equation @return this