love.graphics.newQuad (日本語)

Quad の新規作成。

O.png この関数は love.update または love.draw などから繰り返し呼び出すと動作が重くなることがあります。もし、特定の資源を何度も使う必要がある場合は、一括で作成と格納を行うことで効率的に再利用できます!  



関数

概要

quad = love.graphics.newQuad( x, y, width, height, sw, sh )

引数

number x
Image における左上からの x-軸座標。
number y
Image における左上からの y-軸座標。
number width
Image における Quad の幅。 (必ず 0 以上にしてください)
number height
Image における Quad の高さ。 (必ず 0 以上にしてください)
number sw
Image の幅であり、基準の幅です。 (必ず 0 以上にしてください)
number sh
Image の高さであり、基準の高さです。 (必ず 0 以上にしてください)

返値

Quad quad
新規 Quad です。

注釈

Quad の目的は画像全体の描画とは対照的に、 断片的な画像オブジェクトの描画に使用することです。それはスプライト・シートおよびアトラスに対して最も有用です: スプライト・アトラスにおいて、多数のスプライトは同一画像内に存在しており、 Quad は画像から特定のスプライトを描画するために使用されます。アニメ化されたスプライトにおいて、全フレームが同一画像内に存在しており、 Quad はアニメーションから特定のフレームを描画するために使用されます。

用例

画像の一部を表示するために Quad を使用します:

img = love.graphics.newImage("mushroom-64x64.png")

-- 画像の左上 32x32 の四分区間のみを 
-- 表示したいとしましょう:
top_left = love.graphics.newQuad(0, 0, 32, 32, img:getDimensions())

-- そして左下をこちらへ:
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

関連



そのほかの言語