DxSetPixelColor: Difference between revisions

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
Line 29: Line 29:
addEventHandler ("onClientResourceStart", resourceRoot,  
addEventHandler ("onClientResourceStart", resourceRoot,  
     function ()  
     function ()  
         texture = dxCreateTexture (64, 64);
         texture = dxCreateTexture (64, 64)
         local pixels = dxGetTexturePixels (texture);
         local pixels = dxGetTexturePixels (texture)
         for i=1,63,1 do  
         for i=0,63,1 do
             for j=1,63,1 do  
             for j=0,63,1 do
                 dxSetPixelColor (pixels, j, i, math.random (255), math.random (255), math.random (255), 255);
                 dxSetPixelColor (pixels, j, i, math.random (255), math.random (255), math.random (255), 255)
             end;
             end;
         end;
         end;
         dxSetTexturePixels (texture, pixels);
         dxSetTexturePixels (texture, pixels)
     end);
     end)


addEventHandler ("onClientRender", getRootElement (),
addEventHandler ("onClientRender", getRootElement (),
     function ()
     function ()
         dxDrawImage (300, 300, 64, 64, texture);
         dxDrawImage (300, 300, 64, 64, texture)
     end);
     end)
</syntaxhighlight>
</syntaxhighlight>
</section>
</section>

Revision as of 18:56, 4 September 2013

This function sets the color of a single pixel for pixels contained in a string. It only works with 'plain' format pixels.

Syntax

bool dxSetPixelColor ( string pixels, int x, int y, int r, int g, int b [, int a = 255 ] )

Required Arguments

  • pixels : The pixels to use
  • x: The X coordinate for the pixel
  • y: The Y coordinate for the pixel
  • r: The red channel for the color (0-255)
  • g: The green channel for the color (0-255)
  • b: The blue channel for the color (0-255)

Optional Arguments

  • a: The alpha channel for the color (0-255)

Returns

Returns true if successful, or false if invalid arguments were passed to the function.


Example

Click to collapse [-]
Client

This example creates a 64x64 texture with random pixel colors, and draw it on the screen.

addEventHandler ("onClientResourceStart", resourceRoot, 
    function () 
         texture = dxCreateTexture (64, 64)
         local pixels = dxGetTexturePixels (texture)
         for i=0,63,1 do
             for j=0,63,1 do
                 dxSetPixelColor (pixels, j, i, math.random (255), math.random (255), math.random (255), 255)
             end;
         end;
         dxSetTexturePixels (texture, pixels)
    end)

addEventHandler ("onClientRender", getRootElement (),
    function ()
         dxDrawImage (300, 300, 64, 64, texture)
    end)

See Also