Unittest OpBinary
vec2 v2 = vec2( 1.0f, 3.0f ); cast( void )( 2 * v2 ); assert(( v2 * 2.5f ).data == [ 2.5f, 7.5f ] ); assert(( v2 + vec2( 3.0f, 1.0f )).data == [ 4.0f, 4.0f ] ); assert(( v2 - vec2( 1.0f, 3.0f )).data == [ 0.0f, 0.0f ] ); assert(( v2 * vec2( 2.0f, 2.0f )) == vec2( 2.0f, 6.0f )); vec3 v3 = vec3( 1.0f, 3.0f, 5.0f ); assert(( v3 * 2.5f ).data == [ 2.5f, 7.5f, 12.5f ] ); assert(( v3 + vec3( 3.0f, 1.0f, - 1.0f )).data == [ 4.0f, 4.0f, 4.0f ] ); assert(( v3 - vec3( 1.0f, 3.0f, 5.0f )).data == [ 0.0f, 0.0f, 0.0f ] ); assert(( v3 * vec3( 2.0f, 2.0f, 2.0f )) == vec3( 2.0f, 6.0f, 10.0f )); vec4 v4 = vec4( 1.0f, 3.0f, 5.0f, 7.0f ); assert(( v4 * 2.5f ).data == [ 2.5f, 7.5f, 12.5f, 17.5 ] ); assert(( v4 + vec4( 3.0f, 1.0f, - 1.0f, - 3.0f )).data == [ 4.0f, 4.0f, 4.0f, 4.0f ] ); assert(( v4 - vec4( 1.0f, 3.0f, 5.0f, 7.0f )).data == [ 0.0f, 0.0f, 0.0f, 0.0f ] ); assert(( v4 * vec4( 2.0f, 2.0f, 2.0f, 2.0f )) == vec4( 2.0f, 6.0f, 10.0f, 14.0f ));
Componentwise binary operation with aonther vector: addition, subtraction, multiplication, division