# Swizzling (computer graphics)

## Vector computation used in computer graphics / From Wikipedia, the free encyclopedia

In computer graphics, **swizzles** are a class of operations that transform vectors by rearranging components.^{[1]} Swizzles can also project from a vector of one dimensionality to a vector of another dimensionality, such as taking a three-dimensional vector and creating a two-dimensional or five-dimensional vector using components from the original vector.^{[2]} For example, if `A = {1,2,3,4}`

, where the components are `x`

, `y`

, `z`

, and `w`

respectively, you could compute `B = A.wwxy`

, whereupon `B`

would equal `{4,4,1,2}`

. Additionally, one could create a two-dimensional vector with A.wx or a five-dimensional vector with A.xyzwx. Combining vectors and swizzling can be employed in various ways. This is common in GPGPU applications^{[example needed]}.

In terms of linear algebra, this is equivalent to multiplying by a matrix whose rows are standard basis vectors. If $A=(1,2,3,4)^{T}$, then swizzling $A$ as above looks like

- $A.wwxy={\begin{bmatrix}0&0&0&1\\0&0&0&1\\1&0&0&0\\0&1&0&0\end{bmatrix}}{\begin{bmatrix}1\\2\\3\\4\end{bmatrix}}={\begin{bmatrix}4\\4\\1\\2\end{bmatrix}}.$

- Lawlor, Orion. "OpenGL ARB_fragment_program Quick Reference ("Cheat Sheet")". University of Alaska Fairbanks. Retrieved 21 January 2014.
- "Vec3Swizzles". glam. Retrieved 29 March 2023.

This computer graphics–related article is a stub. You can help Wikipedia by expanding it. |