From OpenGL Reference
Jump to navigation Jump to search

Atomically add a value to an existing value in memory and return the original value.


uint imageAtomicAdd( gimage1D image, int P, uint data );
uint imageAtomicAdd( gimage2D image, ivec2 P, uint data );
uint imageAtomicAdd( gimage3D image, ivec3 P, uint data );
uint imageAtomicAdd( gimage2DRect image, ivec2 P, uint data );
uint imageAtomicAdd( gimageCube image, ivec3 P, uint data );
uint imageAtomicAdd( gbufferImage image, int P, uint data );
uint imageAtomicAdd( gimage1DArray image, ivec2 P, uint data );
uint imageAtomicAdd( gimage2DArray image, ivec3 P, uint data );
uint imageAtomicAdd( gimageCubeArray image, ivec3 P, uint data );
uint imageAtomicAdd( gimage2DMS image, ivec2 P, int sample, uint data );
uint imageAtomicAdd( gimage2DMSArray image, ivec3 P, int sample, uint data );
int imageAtomicAdd( gimage1D image, int P, int data );
int imageAtomicAdd( gimage2D image, ivec2 P, int data );
int imageAtomicAdd( gimage3D image, ivec3 P, int data );
int imageAtomicAdd( gimage2DRect image, ivec2 P, int data );
int imageAtomicAdd( gimageCube image, ivec3 P, int data );
int imageAtomicAdd( gbufferImage image, int P, int data );
int imageAtomicAdd( gimage1DArray image, ivec2 P, int data );
int imageAtomicAdd( gimage2DArray image, ivec3 P, int data );
int imageAtomicAdd( gimageCubeArray image, ivec3 P, int data );
int imageAtomicAdd( gimage2DMS image, ivec2 P, int sample, int data );
int imageAtomicAdd( gimage2DMSArray image, ivec3 P, int sample, int data );


image - Specify the image unit into which to add data .
P - Specify the coordinate at which to add the data.
sample - When present, specifies the sample within the image to add into.
data - Specifies the data to add into the image.


 imageAtomicAdd atomically computes a new value by adding the value of data to the contents of the texel at coordinate P and sample in the image bound to uint image , stores that value into the image and returns the original value.

Version Support[edit]

imageAtomicAdd 4.2+

See Also[edit]

 imageLoad , imageStore , imageAtomicMin , imageAtomicMax , imageAtomicAnd , imageAtomicOr , imageAtomicXor , imageAtomicExchange , imageAtomicCompSwap 


Copyright© 2011-2014 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999.