HU/dxCreateTexture: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
(Created page with "{{Client function}} __NOTOC__ This function creates a texture element that can be used in the dxDraw functions. {{Important Note|It seems like dxCreateTexture uses both VR...")
 
No edit summary
Line 1: Line 1:
{{Client function}}
{{Client function hu}}
__NOTOC__
__NOTOC__
This function creates a [[texture]] element that can be used in the dxDraw functions.
Ez function létrehoz egy [[texture|textúre]] elemet, mely a dxDraw function-ban használható.
{{Important Note|It seems like dxCreateTexture uses both VRAM and RAM (more of RAM), so, if you want to have big render targets (on which you don't draw every frame), this is a good solution using [[dxSetTexturePixels]].}}
{{Important Note|Úgy tűnik, hogy a dxCreateTexture VRAM-ot is és RAM-ot is egyaránt használ (több RAM-ot), ezért, ha nagy renderelési célokat szeretne (melyen nem rajzol ki minden frame-t), ez egy jó megoldás lehet a [[dxSetTexturePixels]] használata.}}
{{Note|The times shown at the right of the page are only the time needed to add the thing to the draw queue, its not the actual time it takes to draw them.}}
{{Note_hu|Az oldal jobb oldalán jelzett idők azok az idők, melyek szükségesek a rajzolási sorrend hozzáadásához, ez nem az a valós idő, amibe ezek lerajzolása telik.}}


[[Image:Screenshot_27.png|frame|A speedtest showing the performance of a texture created with various settings of textureFormat.[Mipmaps = true][textureEdge = "wrap"]]]
[[Image:Screenshot_27.png|frame|A speedtest showing the performance of a texture created with various settings of textureFormat.[Mipmaps = true][textureEdge = "wrap"]]]
Line 9: Line 9:


It is possible to use dxCreateTexture to load cubemaps and volume textures, but these will only be useable as inputs for a shader. The Microsoft utility [http://nightly.mtasa.com/files/shaders/DxTex.zip DxTex] can view and change cubemaps and volume textures. DxTex can also convert standard textures into DXT1/3/5 compressed .dds which should reduce file sizes.
It is possible to use dxCreateTexture to load cubemaps and volume textures, but these will only be useable as inputs for a shader. The Microsoft utility [http://nightly.mtasa.com/files/shaders/DxTex.zip DxTex] can view and change cubemaps and volume textures. DxTex can also convert standard textures into DXT1/3/5 compressed .dds which should reduce file sizes.
==Syntax==  
==Szintaxis==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
element dxCreateTexture ( string pixels / string filepath [, string textureFormat = "argb", bool mipmaps = true, string textureEdge = "wrap" ] )
element dxCreateTexture ( string pixels / string filepath [, string textureFormat = "argb", bool mipmaps = true, string textureEdge = "wrap" ] )
Line 17: Line 17:
</syntaxhighlight>  
</syntaxhighlight>  
{{OOP||[[Texture|DxTexture]]}}
{{OOP||[[Texture|DxTexture]]}}
===Required Arguments===
===Kötelező paraméterek===
*'''filepath:''' The filepath of the image. (.bmp, .dds, .jpg, .png, and .tga images are supported). Image files should ideally have dimensions that are a power of two, to prevent possible blurring.
*'''filepath:''' The filepath of the image. (.bmp, .dds, .jpg, .png, and .tga images are supported). Image files should ideally have dimensions that are a power of two, to prevent possible blurring.
or
or
Line 25: Line 25:
*'''height :''' Desired height, preferably power of two (16, 32, 64 etc.), maximum is 16384
*'''height :''' Desired height, preferably power of two (16, 32, 64 etc.), maximum is 16384


===Optional Arguments===
===Tetszőleges paraméterek===
{{OptionalArg}}
{{OptionalArg}}
*'''textureFormat :''' A string representing the desired texture format, which can be one of:
*'''textureFormat :''' A string representing the desired texture format, which can be one of:
Line 42: Line 42:
*'''depth:''' Desired number of slices when creating a volume texture
*'''depth:''' Desired number of slices when creating a volume texture


==Returns==
==Visszatérési érték==
Returns a [[texture]] if successful, ''false'' if invalid arguments were passed to the function.
Returns a [[texture]] if successful, ''false'' if invalid arguments were passed to the function.


==Example==  
==Példa==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
addEventHandler( "onClientRender", root,
addEventHandler( "onClientRender", root,
Line 73: Line 73:
{{ChangelogItem|1.3.0-9.04035|Added textureEdge argument}}
{{ChangelogItem|1.3.0-9.04035|Added textureEdge argument}}


==See Also==
==Lásd még==
{{Drawing_functions}}
{{Drawing_functions}}


[[en:dxCreateTexture]]
[[en:dxCreateTexture]]
==Fordította==
* '''''[https://wiki.multitheftauto.com/wiki/User:Surge Surge]'''''

Revision as of 13:51, 21 October 2018

Ez function létrehoz egy textúre elemet, mely a dxDraw function-ban használható.

[[{{{image}}}|link=|]] Important Note: Úgy tűnik, hogy a dxCreateTexture VRAM-ot is és RAM-ot is egyaránt használ (több RAM-ot), ezért, ha nagy renderelési célokat szeretne (melyen nem rajzol ki minden frame-t), ez egy jó megoldás lehet a dxSetTexturePixels használata.
[[{{{image}}}|link=|]] Megjegyzés: Az oldal jobb oldalán jelzett idők azok az idők, melyek szükségesek a rajzolási sorrend hozzáadásához, ez nem az a valós idő, amibe ezek lerajzolása telik.
A speedtest showing the performance of a texture created with various settings of textureFormat.[Mipmaps = true][textureEdge = "wrap"]
A speedtest showing the performance of a texture created with various settings of textureFormat.[Mipmaps = false][textureEdge = "wrap"]

It is possible to use dxCreateTexture to load cubemaps and volume textures, but these will only be useable as inputs for a shader. The Microsoft utility DxTex can view and change cubemaps and volume textures. DxTex can also convert standard textures into DXT1/3/5 compressed .dds which should reduce file sizes.

Szintaxis

element dxCreateTexture ( string pixels / string filepath [, string textureFormat = "argb", bool mipmaps = true, string textureEdge = "wrap" ] )
element dxCreateTexture ( int width, int height [, string textureFormat = "argb", string textureEdge = "wrap", string textureType = "2d", int depth = 1 ] )

OOP Syntax Help! I don't understand this!

Method: DxTexture(...)


Kötelező paraméterek

  • filepath: The filepath of the image. (.bmp, .dds, .jpg, .png, and .tga images are supported). Image files should ideally have dimensions that are a power of two, to prevent possible blurring.

or

  • pixels: Pixels containing image data. ('plain', 'jpeg' or 'png' pixels can be used here)

or

  • width: Desired width, preferably power of two (16, 32, 64 etc.), maximum is 16384
  • height : Desired height, preferably power of two (16, 32, 64 etc.), maximum is 16384

Tetszőleges paraméterek

NOTE: When using optional arguments, you might need to supply all arguments before the one you wish to use. For more information on optional arguments, see optional arguments.

  • textureFormat : A string representing the desired texture format, which can be one of:
    • "argb" : ARGB uncompressed 32 bit color (default).
    • "dxt1" : DXT1 compressed - Can take a fraction of a second longer to load (unless the file is already a DXT1 .dds). Uses 8 times less video memory than ARGB and can speed up drawing. Quality not as good as ARGB and does not support alpha blending.
    • "dxt3" : DXT3 compressed - Can take a fraction of a second longer to load (unless the file is already a DXT3 .dds). Uses 4 times less video memory than ARGB and can speed up drawing. Quality slightly better than DXT1 and supports crisp alpha blending.
    • "dxt5" : DXT5 compressed - Can take a fraction of a second longer to load (unless the file is already a DXT5 .dds). Uses 4 times less video memory than ARGB and can speed up drawing. Quality slightly better than DXT1 and supports smooth alpha blending.
  • mipmaps : True to create a mip-map chain so the texture looks good when drawn at various sizes.
  • textureEdge : A string representing the desired texture edge handling, which can be one of:
    • "wrap" : Wrap the texture at the edges (default)
    • "clamp" : Clamp the texture at the edges. This may help avoid edge artifacts.
  • textureType : A string representing the desired texture type, which can be one of:
    • "2d" : Standard texture (default)
    • "3d" : Volume texture
    • "cube" : Cube map
  • depth: Desired number of slices when creating a volume texture

Visszatérési érték

Returns a texture if successful, false if invalid arguments were passed to the function.

Példa

addEventHandler( "onClientRender", root,
    function()
        if myImage then
            dxDrawImage( 100, 350, 300, 350, myImage  )
        end
    end
)

-- Use 'toggle' command to switch image on and off
addCommandHandler( "toggle",
    function()
        if not myImage then
            myImage = dxCreateTexture( "moonpig.png" )  -- Create texture
        else        
            destroyElement( myImage )                 -- Destroy texture
            myImage = nil
        end
    end
)

Changelog

Version Description
1.3.0-9.04021 Added textureType and depth argument
1.3.0-9.04035 Added textureEdge argument

Lásd még

Fordította