DxCreateRenderTarget: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 5: Line 5:
}}
}}
This function creates a render target element, which is a special type of [[texture]] that can be draw on with the dx functions.
This function creates a render target element, which is a special type of [[texture]] that can be draw on with the dx functions.
Note that successful render target creation is not guaranteed, and may fail due to hardware or memory limitations. You should always check to see if this function has returned false.


==Syntax==  
==Syntax==  
<syntaxhighlight lang="lua">
<syntaxhighlight lang="lua">
element dxCreateRenderTarget ( int width, int height )
element dxCreateRenderTarget ( int width, int height [, bool withAlpha = false ] )
</syntaxhighlight>  
</syntaxhighlight>  


Line 14: Line 16:
*'''width :''' The width of the texture in pixels.
*'''width :''' The width of the texture in pixels.
*'''height :''' The height of the texture in pixels.
*'''height :''' The height of the texture in pixels.
*'''withAlpha:''' The render target will be created with an alpha channel.


===Returns===
===Returns===
Returns a [[texture]] [[element]] if successful, ''false'' if invalid arguments were passed to the function.
Returns a [[texture]] [[element]] if successful, ''false'' if the system is unable to create a render target.


==Example==
==Example==

Revision as of 15:49, 14 June 2011

Only available in 1.1 This function creates a render target element, which is a special type of texture that can be draw on with the dx functions.

Note that successful render target creation is not guaranteed, and may fail due to hardware or memory limitations. You should always check to see if this function has returned false.

Syntax

element dxCreateRenderTarget ( int width, int height [, bool withAlpha = false ] )

Required Arguments

  • width : The width of the texture in pixels.
  • height : The height of the texture in pixels.
  • withAlpha: The render target will be created with an alpha channel.

Returns

Returns a texture element if successful, false if the system is unable to create a render target.

Example

addEventHandler("onClientResourceStart", resourceRoot,
    function()
        myRenderTarget = dxCreateRenderTarget( 80, 100 )            -- Create a render target texture which is 80 x 100 pixels
    end
)

addEventHandler( "onClientRender", root,
    function()
        if myRenderTarget then
            dxSetRenderTarget( myRenderTarget )                     -- Start drawing on myRenderTarget
            dxDrawText ( "Hello", 10, 20 )                          -- Draw a message
            dxSetRenderTarget()                                     -- Stop drawing on myRenderTarget

            dxDrawImage( 50,  50,  100, 100, myRenderTarget )       -- Now use myRenderTarget as a material and draw it lots of times
            dxDrawImage( 150, 350, 150, 100, myRenderTarget )
            dxDrawImage( 250, 250, 100, 150, myRenderTarget )
            dxDrawImage( 350, 30,  150, 150, myRenderTarget )
        end
    end
)

See Also