| 
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -191,8 +191,8 @@ RMDEF void QuaternionNormalize(Quaternion *q);                  // Normalize pro | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF void QuaternionInvert(Quaternion *quat);                  // Invert provided quaternion | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Quaternion QuaternionMultiply(Quaternion q1, Quaternion q2);    // Calculate two quaternion multiplication | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Quaternion QuaternionLerp(Quaternion q1, Quaternion q2, float amount);    // Calculate linear interpolation between two quaternions | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Quaternion QuaternionSlerp(Quaternion q1, Quaternion q2, float amount);   // Calculates spherical linear interpolation between two quaternions | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Quaternion QuaternionNlerp(Quaternion q1, Quaternion q2, float amount);   // Calculate slerp-optimized interpolation between two quaternions | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Quaternion QuaternionSlerp(Quaternion q1, Quaternion q2, float amount);   // Calculates spherical linear interpolation between two quaternions | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Quaternion QuaternionFromVector3ToVector3(Vector3 from, Vector3 to);      // Calculate quaternion based on the rotation from one vector to another | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Quaternion QuaternionFromMatrix(Matrix matrix);                 // Returns a quaternion for a given rotation matrix | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Matrix QuaternionToMatrix(Quaternion q);                        // Returns a matrix for a given quaternion | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -1083,6 +1083,15 @@ RMDEF Quaternion QuaternionLerp(Quaternion q1, Quaternion q2, float amount) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    return result; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			// Calculate slerp-optimized interpolation between two quaternions | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Quaternion QuaternionNlerp(Quaternion q1, Quaternion q2, float amount) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			{ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    Quaternion result = QuaternionLerp(q1, q2, amount); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    QuaternionNormalize(&result); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			     | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    return result; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			// Calculates spherical linear interpolation between two quaternions | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Quaternion QuaternionSlerp(Quaternion q1, Quaternion q2, float amount) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			{ | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
					
						
					
				
				
				 | 
			
			 | 
			
			@ -1119,15 +1128,6 @@ RMDEF Quaternion QuaternionSlerp(Quaternion q1, Quaternion q2, float amount) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    return result; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			// Calculate slerp-optimized interpolation between two quaternions | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Quaternion QuaternionNlerp(Quaternion q1, Quaternion q2, float amount) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			{ | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    Quaternion result = QuaternionLerp(q1, q2, amount); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    QuaternionNormalize(&result); | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			     | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			    return result; | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			} | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			
 | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			// Calculate quaternion based on the rotation from one vector to another | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			RMDEF Quaternion QuaternionFromVector3ToVector3(Vector3 from, Vector3 to) | 
			
		
		
	
		
			
			 | 
			 | 
			
			 | 
			
			{ | 
			
		
		
	
	
		
			
				| 
				
					
						
					
				
				
				
				 | 
			
			 | 
			
			
 |