Menu
Home Explore People Places Arts History Plants & Animals Science Life & Culture Technology
On this page
Swizzling (computer graphics)
Vector computation used in computer graphics

In computer graphics, swizzles are a class of operations that transform vectors by rearranging components. 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. 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.

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 {\displaystyle A=(1,2,3,4)^{T}} , then swizzling A {\displaystyle A} as above looks like

A . w w x y = [ 0 0 0 1 0 0 0 1 1 0 0 0 0 1 0 0 ] [ 1 2 3 4 ] = [ 4 4 1 2 ] . {\displaystyle 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}}.}
We don't have any images related to Swizzling (computer graphics) yet.
We don't have any YouTube videos related to Swizzling (computer graphics) yet.
We don't have any PDF documents related to Swizzling (computer graphics) yet.
We don't have any Books related to Swizzling (computer graphics) yet.
We don't have any archived web articles related to Swizzling (computer graphics) yet.

See also

Z-order curve

References

  1. Lawlor, Orion. "OpenGL ARB_fragment_program Quick Reference ("Cheat Sheet")". University of Alaska Fairbanks. Retrieved 21 January 2014. https://www.cs.uaf.edu/2005/fall/cs301/support/glfp/

  2. "Vec3Swizzles". glam. Retrieved 29 March 2023. https://docs.rs/glam/0.23.0/glam/trait.Vec3Swizzles.html

  3. "Introduction to CUDA Programming and Performance Optimization". Retrieved 23 December 2024. (Relevant portion starts around 37min) https://www.nvidia.com/en-us/on-demand/session/gtc24-s62191/