Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
image_storage_slice(3)		 Arcan Lua API		image_storage_slice(3)

NAME
       image_storage_slice -

SYNOPSIS
       true or false
       image_storage_slice( vid:store int:type vidtbl:slices )

DESCRIPTION
       Some  rendering effects require specialised storage layouts that	we re-
       fer to as 'sliced', from	the fact  that they represent slices  of  some
       geometry.  Typical  such	 layouts  are 'cubemaps' ( SLICE_CUBEMAP ) and
       '3D' textures ( SLICE_ 3D). This	is not normally	supported by  the  en-
       gine,  but the backing store of a video object can irreversibly be con-
       verted to such storage formats with the use of this function. The func-
       tion returns true if the	backing	store was successfully converted. This
       property	will then carry	through	when using image_sharestorage .	 Call-
       ing the function	multiple times with the	same input set will update the
       slices  that has	a more recent upload timestamp than the	previous slice
       in the corresponding slot.  The	performance  characteristics  of  this
       function	 also  vary  with the underlying hardware platform, the	source
       format of the individual	slices and the GPU  affinity of	the individual
       slices. The default and typically worst case requires a full GPU	-> CPU
       -> GPU  synchronous transfer and	is thus	not suitable for high rate up-
       dates.

NOTES
       1      the number of slices and the current backing  store  of  store
	      should have a power-of-two base width (height will be ignored).

EXAMPLE
       function	image_storage_slice0()
	     local surf	= alloc_surface(32, 32)
	     local c1 =	fill_surface(32, 32, 255, 0, 0)
	     local c2 =	fill_surface(32, 32, 255, 255, 0)
	     local c3 =	fill_surface(32, 32, 255, 0, 255)
	     local c4 =	fill_surface(32, 32, 255, 255, 255)
	     local c5 =	fill_surface(32, 32, 0,	255, 0)
	     local c6 =	fill_surface(32, 32, 0,	0, 255)
	     image_storage_slice(surf, SLICE_CUBEMAP, {c1,c2,c3,c4,c5,c6})
       end

SEE ALSO:
image				  April	2025		image_storage_slice(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=image_storage_slice&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help