HU/dxCreateRenderTarget: Difference between revisions
Line 14: | Line 14: | ||
{{OOP||[[Texture|DxRenderTarget]]}} | {{OOP||[[Texture|DxRenderTarget]]}} | ||
===Kötelező paraméterek=== | ===Kötelező paraméterek=== | ||
*'''width :''' | *'''width :''' A textúra szélessége pixelben. | ||
*'''height :''' | *'''height :''' A textúra magassága pixelben. | ||
*'''withAlpha:''' The render target will be created with an alpha channel. 'false' will turn images' alpha channels to black color | *'''withAlpha:''' The render target will be created with an alpha channel. 'false' will turn images' alpha channels to black color | ||
Revision as of 15:08, 14 October 2018
Ez a function létrehoz egy render target elemet, amely egy speciális típusú textúra, amely a dx függvényekkel rajzolható le. A sikeres render target létrehozása nem garantált, a hardver vagy a memória korlátai miatt hibák lehetnek.
Használja a dxGetStatus-t a hibák megtalálásához. (Ha a VideoMemoryFreeForMTA nulla, akkor a hiba garantált.)
Tipp: Használja a dxSetBlendMode hogy jobb minőséget kapjon |
Tipp: Nagyon ajánlott a dxSetTestMode használata, amikor a dxCreateRenderTarget-t használva írunk és tesztelünk scripteket. |
Megjegyzés: Render target általában törlődnek, amikor a játékos minimalizálja az MTA-t (alt-tab). Lásd a onClientRestore-t a rögzített tartalmak visszaállításának részleteiről. |
Szintaxis
element dxCreateRenderTarget ( int width, int height [, bool withAlpha = false ] )
OOP Syntax Help! I don't understand this!
- Method: DxRenderTarget(...)
Kötelező paraméterek
- width : A textúra szélessége pixelben.
- height : A textúra magassága pixelben.
- withAlpha: The render target will be created with an alpha channel. 'false' will turn images' alpha channels to black color
Visszatérési érték
Visszaad egy textúra elemet, ha sikeres, false, ha a rendszernek nem sikerül létrehoznia a render target-et.
Mindig ellenőrizze, hogy ez a function false értéked ad-e vissza.
Magyarázat
What is a rendertarget? A rendertarget is like a big, white paper(or if you set alpha to true, it will be a transparent paper) that you can draw on, after you drawn on it, you can draw it as many times as you like, without impacting performance. It could be used for dashboard, where a few hundred dxDraw* functions are called, so, instead of calling these every frame, you can just draw it on a render target, and draw the render target, instead of every information one by one.
Példa
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 ) local myRenderTarget = dxCreateRenderTarget(500, 500, true) -- -- Function to draw text to our render target with '''modulate_add''' blend mode when the 'r' key is pressed -- function updateRenderTarget() dxSetRenderTarget(myRenderTarget, true) dxSetBlendMode("modulate_add") -- Set 'modulate_add' when drawing stuff on the render target dxDrawText("Testing "..getTickCount(), 0, 0, 0, 0, tocolor(255, 255, 255, 255), 2, "clear") dxSetBlendMode("blend") -- Restore default blending dxSetRenderTarget() -- Restore default render target end bindKey("r", "down", updateRenderTarget )
Lásd még
- HU/dxConvertPixels
- HU/dxCreateFont
- HU/dxCreateRenderTarget
- HU/dxCreateScreenSource
- HU/dxCreateShader
- HU/dxCreateTexture
- HU/dxDrawCircle
- HU/dxDrawImage
- HU/dxDrawImageSection
- HU/dxDrawLine
- HU/dxDrawLine3D
- HU/dxDrawMaterialLine3D
- HU/dxDrawMaterialPrimitive
- HU/dxDrawPrimitive
- HU/dxDrawMaterialSectionLine3D
- HU/dxDrawRectangle
- HU/dxDrawText
- HU/dxGetBlendMode
- HU/dxGetFontHeight
- HU/dxGetMaterialSize
- HU/dxGetPixelColor
- HU/dxGetPixelsSize
- HU/dxGetPixelsFormat
- HU/dxGetStatus
- HU/dxGetTextWidth
- HU/dxGetTexturePixels
- HU/dxSetAspectRatioAdjustmentEnabled
- HU/dxSetBlendMode
- HU/dxSetPixelColor
- HU/dxSetRenderTarget
- HU/dxSetShaderValue
- HU/dxSetShaderTessellation
- HU/dxSetShaderTransform
- HU/dxSetTestMode
- HU/dxSetTextureEdge
- HU/dxSetTexturePixels
- HU/dxUpdateScreenSource