Difference between revisions of "love.graphics.newQuad (日本語)"

(Created page with "Quad の新規作成。 {{newobjectnotice (日本語)}} == 関数 == === 概要 === <source lang="lua"> quad = love.graphics.newQuad( x, y, width, height,...")
 
m
Line 7: Line 7:
 
</source>
 
</source>
 
=== 引数 ===
 
=== 引数 ===
{{param|number|x|左上からの x-軸座標。}}
+
{{param|number|x|[[Image (日本語)|Image]] における左上からの x-軸座標。}}
{{param|number|y|左上からの y-軸座標。}}
+
{{param|number|y|[[Image (日本語)|Image]] における左上からの y-軸座標。}}
{{param|number|width|Quad の幅。 (必ず 0 以上にしてください)}}
+
{{param|number|width|[[Image (日本語)|Image]] における Quad の幅。 (必ず 0 以上にしてください)}}
{{param|number|height|Quad の高さ。 (必ず 0 以上にしてください)}}
+
{{param|number|height|[[Image (日本語)|Image]] における Quad の高さ。 (必ず 0 以上にしてください)}}
 
{{param|number|sw|[[Image (日本語)|Image]] の幅であり、基準の幅です。 (必ず 0 以上にしてください)}}
 
{{param|number|sw|[[Image (日本語)|Image]] の幅であり、基準の幅です。 (必ず 0 以上にしてください)}}
 
{{param|number|sh|[[Image (日本語)|Image]] の高さであり、基準の高さです。 (必ず 0 以上にしてください)}}
 
{{param|number|sh|[[Image (日本語)|Image]] の高さであり、基準の高さです。 (必ず 0 以上にしてください)}}
Line 16: Line 16:
 
{{param|Quad|quad|新規 Quad です。}}
 
{{param|Quad|quad|新規 Quad です。}}
 
=== 注釈 ===
 
=== 注釈 ===
Quad の目的は任意の描画可能なオブジェクトに対してオブジェクトの変換結果を記述することです。まずオブジェクトは sw × sh の寸法へ計測します。次に Quad として計測されたオブジェクトの内側にある左上の座標 (x, y) を矩形領域の width × height の寸法として記述します。
+
Quad の目的は画像全体の描画とは対照的に、 断片的な画像オブジェクトの描画に使用することです。それはスプライト・シートおよびアトラスに対して最も有用です: スプライト・アトラスにおいて、多数のスプライトは同一画像内に存在しており、 Quad は画像から特定のスプライトを描画するために使用されます。アニメ化されたスプライトにおいて、全フレームが同一画像内に存在しており、 Quad はアニメーションから特定のフレームを描画するために使用されます。
 +
 
 
== 用例 ==
 
== 用例 ==
 
=== 画像の一部を表示するために Quad を使用します: ===
 
=== 画像の一部を表示するために Quad を使用します: ===

Revision as of 08:41, 9 November 2016

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

関連


そのほかの言語