game-engine/src/main/java/com/jzy/game/engine/math/Vector3.java
/**
	 * Left-multiplies the vector by the given matrix, assuming the fourth (w)
	 * component of the vector is 1.
	 * 
	 * @param matrix
	 *            The matrix
	 * @return This vector for chaining
	 */
Left-multiplies the vector by the given matrix, assuming the fourth (w)
component of the vector is 1.

@param matrix
The matrix
@return This vector for chaining
Left - multiplies the vector by the given matrix assuming the fourth ( w ) component of the vector is 1 . @param matrix The matrix @return This vector for chaining
public Vector3 mul(final Matrix4 matrix) {
		final float l_mat[] = matrix.val;
		return this.set(x * l_mat[Matrix4.M00] + y * l_mat[Matrix4.M01] + z * l_mat[Matrix4.M02] + l_mat[Matrix4.M03],
				x * l_mat[Matrix4.M10] + y * l_mat[Matrix4.M11] + z * l_mat[Matrix4.M12] + l_mat[Matrix4.M13],
				x * l_mat[Matrix4.M20] + y * l_mat[Matrix4.M21] + z * l_mat[Matrix4.M22] + l_mat[Matrix4.M23]);
	}
public Vector3 mul ( final Matrix4 matrix ) { final float l_mat [ ] = matrix . val ; return this . set ( x * l_mat [ Matrix4 . M00 ] + y * l_mat [ Matrix4 . M01 ] + z * l_mat [ Matrix4 . M02 ] + l_mat [ Matrix4 . M03 ] , x * l_mat [ Matrix4 . M10 ] + y * l_mat [ Matrix4 . M11 ] + z * l_mat [ Matrix4 . M12 ] + l_mat [ Matrix4 . M13 ] , x * l_mat [ Matrix4 . M20 ] + y * l_mat [ Matrix4 . M21 ] + z * l_mat [ Matrix4 . M22 ] + l_mat [ Matrix4 . M23 ] ) ; }
Left-multiplies the vector by the given matrix, assuming the fourth (w)
 component of the vector is 1.
Left - multiplies the vector by the given matrix assuming the fourth ( w ) component of the vector is 1 .