DxGetTexturePixels: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 12: Line 12:
==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
string dxGetTexturePixels( element texture [, int x, int y, int width, int height ] )
string dxGetTexturePixels( [ int surfaceIndex, ] element texture [, int x, int y, int width, int height ] )
</syntaxhighlight>  
</syntaxhighlight>  


Line 19: Line 19:


===Optional Arguments===
===Optional Arguments===
{{New feature/item|4.0130|1.3|4021|
*'''surfaceIndex:''' Desired slice to get if the texture is a volume texture, or desired face to get if the texture is a cube map. <nowiki>(Cube map faces: 0=+X 1=-X 2=+Y 3=-Y 4=+Z 5=-Z)</nowiki>
}}
By default the pixels from the whole texture is returned. To get only a portion of the texture, define a rectangular area using all four of these optional arguments:
By default the pixels from the whole texture is returned. To get only a portion of the texture, define a rectangular area using all four of these optional arguments:
*'''x:''' Rectangle left position
*'''x:''' Rectangle left position
Line 35: Line 38:
==Requirements==
==Requirements==
{{Requirements|n/a|1.3|}}
{{Requirements|n/a|1.3|}}
==Changelog==
{{ChangelogHeader}}
{{ChangelogItem|1.3.0-9.04021|Added surfaceIndex argument}}


==See Also==
==See Also==
{{Drawing_functions}}
{{Drawing_functions}}

Revision as of 02:56, 22 April 2012

This function fetches the pixels from a texture element. It can be used with a standard texture, render target or screen source.


Performance note:

  • This function is slow and not something you want to be doing once a frame.
  • It is slower when reading pixels from a render target or screen source.
  • And is very slow indeed if the texture format is not 'argb'

Syntax

string dxGetTexturePixels( [ int surfaceIndex, ] element texture [, int x, int y, int width, int height ] )

Required Arguments

  • texture : The texture element to get the pixels from

Optional Arguments

ADDED/UPDATED IN VERSION 1.3 r4021:
  • surfaceIndex: Desired slice to get if the texture is a volume texture, or desired face to get if the texture is a cube map. (Cube map faces: 0=+X 1=-X 2=+Y 3=-Y 4=+Z 5=-Z)

By default the pixels from the whole texture is returned. To get only a portion of the texture, define a rectangular area using all four of these optional arguments:

  • x: Rectangle left position
  • y: Rectangle top position
  • width: Rectangle width
  • height : Rectangle height

Returns

Returns a 'plain' format pixels string if successful, false if invalid arguments were passed to the function.

Example

TODO

Requirements

Minimum server version n/a
Minimum client version 1.3

Note: Using this feature requires the resource to have the above minimum version declared in the meta.xml <min_mta_version> section. e.g. <min_mta_version client="1.3" />

Changelog

Version Description
1.3.0-9.04021 Added surfaceIndex argument

See Also