love.graphics.newQuad
Creates a new Quad.
The purpose of a Quad is to use a fraction of an image to draw objects, as opposed to drawing entire image. It is most useful for sprite sheets and atlases: in a sprite atlas, multiple sprites reside in same image, quad is used to draw a specific sprite from that image; in animated sprites with all frames residing in the same image, quad is used to draw specific frame from the animation.
This function can be slow if it is called repeatedly, such as from love.update or love.draw. If you need to use a specific resource often, create it once and store it somewhere it can be reused!
Function
Synopsis
quad = love.graphics.newQuad( x, y, width, height, sw, sh )
Arguments
number x
- The top-left position in the Image along the x-axis.
number y
- The top-left position in the Image along the y-axis.
number width
- The width of the Quad in the Image. (Must be greater than 0.)
number height
- The height of the Quad in the Image. (Must be greater than 0.)
number sw
- The reference width, the width of the Image. (Must be greater than 0.)
number sh
- The reference height, the height of the Image. (Must be greater than 0.)
Returns
Quad quad
- The new Quad.
Examples
Use a Quad to display part of an Image:
img = love.graphics.newImage("mushroom-64x64.png") -- Let's say we want to display only the top-left -- 32x32 quadrant of the Image: top_left = love.graphics.newQuad(0, 0, 32, 32, img:getDimensions()) -- And here is bottom left: bottom_left = love.graphics.newQuad(0, 32, 32, 32, img:getDimensions()) function love.draw() love.graphics.draw(img, top_left, 50, 50) love.graphics.draw(img, bottom_left, 50, 200) -- v0.8: -- love.graphics.drawq(img, top_left, 50, 50) -- love.graphics.drawq(img, bottom_left, 50, 200) end
See Also
© 2006–2020 LÖVE Development Team
Licensed under the GNU Free Documentation License, Version 1.3.
https://love2d.org/wiki/love.graphics.newQuad