HU/dxDrawImage: Difference between revisions
Jump to navigation
Jump to search
(Created page with "__NOTOC__ {{Client function}} thumb|190px|Egy dxDrawImage-val felrajzolt kép. Felrajzol egy képet a képernyőre egy képkockára. Hogyha...") |
No edit summary |
||
(16 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
__NOTOC__ | __NOTOC__ | ||
{{Client function}} | {{Client function hu}} | ||
[[Image:MTAsa dxDrawImage.png|thumb|190px|Egy dxDrawImage-val felrajzolt kép.]] | [[Image:MTAsa dxDrawImage.png|thumb|190px|Egy dxDrawImage-val felrajzolt kép.]] | ||
Rajzol egy képet a képernyőre, de csak egy másodpercre. Hogyha azt szeretnéd, hogy a kép a képernyőn állandóan látszódjon, akkor ezt a funkciót meg kell hivnod minden képkocka frissitéskor ([[onClientRender]]).<br/> | |||
Jobb esetben a képek dimenziója a 2 négyzete, ez azért fontos,hogy elkerüljük a lehetséges elmosodását a képnek.<br/> | Jobb esetben a képek dimenziója a 2 négyzete, ez azért fontos, hogy elkerüljük a lehetséges elmosodását a képnek.<br/> | ||
<b>A kettő négyzetei: 2px, 4px, 8px, 16px, 32px, 64px, 128px, 256px, 512px, 1024px, stb...</b> | <b>A kettő négyzetei: 2px, 4px, 8px, 16px, 32px, 64px, 128px, 256px, 512px, 1024px, stb...</b> | ||
{{ | {{Tip_hu|Használd a(z) [[dxCreateTexture]] által létrehozott textúrákat, hogy '''felgyorsítsd a rajzolás'''át a képnek.}} | ||
{{ | {{Tip_hu|Ahhoz, hogy megelőzd a kép sarkainak hibáját amikor felrajzolsz egy képet, tedd a(z) '''textureEdge'''-et '''"clamp"'''-ra, amikor meghívod a [[dxCreateTexture]] funkciót. }} | ||
== | ==Szintaxis== | ||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
bool dxDrawImage ( float posX, float posY, float width, float height, mixed image, | bool dxDrawImage ( float posX, float posY, float width, float height, mixed image, | ||
Line 17: | Line 17: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
=== | ===Kötelező paraméterek=== | ||
*'''posX:''' A kép abszolút pozíciója a képernyő bal szélső oldalától számolva. | *'''posX:''' A kép abszolút pozíciója a képernyő bal szélső oldalától számolva. | ||
*'''posY:''' A kép abszolút pozíciója a képernyő tetejétől számolva. | *'''posY:''' A kép abszolút pozíciója a képernyő tetejétől számolva. | ||
*'''width:''' Az abszolút képszélesség | *'''width:''' Az abszolút képszélesség | ||
*'''height:''' Az magasság képszélesség | *'''height:''' Az magasság képszélesség | ||
*'''image:''' Egy [[material]] element vagy egy [[filepath]](elérési útvonal) a képhez. (.dds képeket is felrajzolhatsz). | *'''image:''' Egy [[material]] element vagy egy [[filepath]](elérési útvonal) a képhez. (.dds képeket is felrajzolhatsz). | ||
=== | ===Tetszőleges paraméterek=== | ||
*'''rotation:''' A kép rotációja fokokban kifejezve. | *'''rotation:''' A kép rotációja fokokban kifejezve. | ||
*'''rotationCenterOffsetX:''' Az abszolút X offset a kép közepétől számolva. | *'''rotationCenterOffsetX:''' Az abszolút X offset a kép közepétől számolva. | ||
Line 32: | Line 32: | ||
===Visszaadott értékek=== | ===Visszaadott értékek=== | ||
''True''-t ad vissza ha sikerült, false-t ha nem. | ''True''-t ad vissza ha sikerült, ''false''-t ha nem. | ||
==Példa== | ==Példa== | ||
Példa egy lengő ingáról a képernyő tetején, a dxDrawImage használatával. | |||
<syntaxhighlight lang="lua"> | <syntaxhighlight lang="lua"> | ||
local screenWidth,screenHeight = guiGetScreenSize() -- Get screen resolution. | local screenWidth,screenHeight = guiGetScreenSize() -- Get screen resolution. | ||
Line 57: | Line 56: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== | ==Lásd még== | ||
{{ | {{Drawing_functions_hu}} | ||
[[en:dxDrawImage]] |
Latest revision as of 17:28, 1 September 2020
Rajzol egy képet a képernyőre, de csak egy másodpercre. Hogyha azt szeretnéd, hogy a kép a képernyőn állandóan látszódjon, akkor ezt a funkciót meg kell hivnod minden képkocka frissitéskor (onClientRender).
Jobb esetben a képek dimenziója a 2 négyzete, ez azért fontos, hogy elkerüljük a lehetséges elmosodását a képnek.
A kettő négyzetei: 2px, 4px, 8px, 16px, 32px, 64px, 128px, 256px, 512px, 1024px, stb...
Tipp: Használd a(z) dxCreateTexture által létrehozott textúrákat, hogy felgyorsítsd a rajzolását a képnek. |
Tipp: Ahhoz, hogy megelőzd a kép sarkainak hibáját amikor felrajzolsz egy képet, tedd a(z) textureEdge-et "clamp"-ra, amikor meghívod a dxCreateTexture funkciót. |
Szintaxis
bool dxDrawImage ( float posX, float posY, float width, float height, mixed image, [ float rotation = 0, float rotationCenterOffsetX = 0, float rotationCenterOffsetY = 0, int color = tocolor(255,255,255,255), bool postGUI = false ] )
Kötelező paraméterek
- posX: A kép abszolút pozíciója a képernyő bal szélső oldalától számolva.
- posY: A kép abszolút pozíciója a képernyő tetejétől számolva.
- width: Az abszolút képszélesség
- height: Az magasság képszélesség
- image: Egy material element vagy egy filepath(elérési útvonal) a képhez. (.dds képeket is felrajzolhatsz).
Tetszőleges paraméterek
- rotation: A kép rotációja fokokban kifejezve.
- rotationCenterOffsetX: Az abszolút X offset a kép közepétől számolva.
- rotationCenterOffsetY: Az abszolút Y offset a kép közepétől számolva.
- color: Átszinezi a képet egy tocolor által visszaadott értékre, vagy megadhatsz egy hexidecimális számot is: 0xAARRGGBB (RR = piros, GG = zöld, BB = kék, AA = átlátszóság), minden érték 0-255 között kell,hogy legyen.
- postGUI: True ha a GUIk felé akarod rajzolni, false ha a GUI-k mögé. A kép mindig a főmenü mögött lesz.
Visszaadott értékek
True-t ad vissza ha sikerült, false-t ha nem.
Példa
Példa egy lengő ingáról a képernyő tetején, a dxDrawImage használatával.
local screenWidth,screenHeight = guiGetScreenSize() -- Get screen resolution. function renderDisplay ( ) local seconds = getTickCount() / 1000 local angle = math.sin(seconds) * 80 -- This will draw the graphic file 'arrow.png' at the top middle of the screen -- using the size of 100 pixels wide, and 240 pixels high. -- The center of rotation is at the top of the image. dxDrawImage ( screenWidth/2 - 50, 0, 100, 240, 'arrow.png', angle, 0, -120 ) end function HandleTheRendering ( ) addEventHandler("onClientRender", root, renderDisplay) -- Keep everything visible with onClientRender. end addEventHandler("onClientResourceStart",resourceRoot, HandleTheRendering)
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