HU/dxDrawImage
Jump to navigation
Jump to search
Felrajzol egy képet a képernyőre egy képkockára. 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...
Tip: Használd a(z) dxCreateTexture által létrehozott textúrákat,hogy felgyorsítsd a rajzolását a képnek.. |
Tip: Ahhoz,hogy megelőzd a kép sarkainak hibáját amikor felrajzolsz egy képet, tedd a(z) textureEdge "clamp"-ra amikor meghívod a dxCreateTexture funkciót |
Syntax
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 ] )
Required Arguments
- 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).
Opcionális 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
Fordisdmálepls Example of a pendulum swinging from the top of the screen, made using dxDrawImage.
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)
See Also
- dxConvertPixels
- dxCreateFont
- dxCreateRenderTarget
- dxCreateScreenSource
- dxCreateShader
- dxCreateTexture
- dxDrawCircle
- dxDrawImage
- dxDrawImageSection
- dxDrawLine
- dxDrawLine3D
- dxDrawMaterialLine3D
- dxDrawMaterialPrimitive
- dxDrawMaterialPrimitive3D
- dxDrawMaterialSectionLine3D
- dxDrawPrimitive
- dxDrawPrimitive3D
- dxDrawRectangle
- dxDrawText
- dxDrawWiredSphere
- dxGetBlendMode
- dxGetFontHeight
- dxGetMaterialSize
- dxGetPixelColor
- dxGetPixelsSize
- dxGetPixelsFormat
- dxGetStatus
- dxGetTextSize
- dxGetTextWidth
- dxGetTexturePixels
- dxIsAspectRatioAdjustmentEnabled
- dxSetAspectRatioAdjustmentEnabled
- dxSetBlendMode
- dxSetPixelColor
- dxSetRenderTarget
- dxSetShaderValue
- dxSetShaderTessellation
- dxSetShaderTransform
- dxSetTestMode
- dxSetTextureEdge
- dxSetTexturePixels
- dxUpdateScreenSource