@@ -278,9 +278,7 @@ public static Vector4 Over(Vector4 destination, Vector4 source, Vector4 blend)
278
278
279
279
// unpremultiply
280
280
color /= Vector4 . Max ( alpha , new ( Constants . Epsilon ) ) ;
281
- color . W = alpha . W ;
282
-
283
- return color ;
281
+ return WithW ( color , alpha ) ;
284
282
}
285
283
286
284
/// <summary>
@@ -339,9 +337,7 @@ public static Vector4 Atop(Vector4 destination, Vector4 source, Vector4 blend)
339
337
340
338
// unpremultiply
341
339
color /= Vector4 . Max ( alpha , new ( Constants . Epsilon ) ) ;
342
- color . W = alpha . W ;
343
-
344
- return color ;
340
+ return WithW ( color , alpha ) ;
345
341
}
346
342
347
343
/// <summary>
@@ -385,9 +381,7 @@ public static Vector4 In(Vector4 destination, Vector4 source)
385
381
386
382
Vector4 color = source * alpha ; // premultiply
387
383
color /= Vector4 . Max ( alpha , new ( Constants . Epsilon ) ) ; // unpremultiply
388
- color . W = alpha . W ;
389
-
390
- return color ;
384
+ return WithW ( color , alpha ) ;
391
385
}
392
386
393
387
/// <summary>
@@ -425,9 +419,7 @@ public static Vector4 Out(Vector4 destination, Vector4 source)
425
419
426
420
Vector4 color = source * alpha ; // premultiply
427
421
color /= Vector4 . Max ( alpha , new ( Constants . Epsilon ) ) ; // unpremultiply
428
- color . W = alpha . W ;
429
-
430
- return color ;
422
+ return WithW ( color , alpha ) ;
431
423
}
432
424
433
425
/// <summary>
@@ -470,9 +462,7 @@ public static Vector4 Xor(Vector4 destination, Vector4 source)
470
462
471
463
// unpremultiply
472
464
color /= Vector4 . Max ( alpha , new ( Constants . Epsilon ) ) ;
473
- color . W = alpha . W ;
474
-
475
- return color ;
465
+ return WithW ( color , alpha ) ;
476
466
}
477
467
478
468
/// <summary>
0 commit comments