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

(注釈: Retranslation)
m (用例)
Line 24: Line 24:
  
 
== 用例 ==
 
== 用例 ==
=== 画像の一部を表示するために Quad を使用します: ===
+
=== Quad により部品化した画像を表示します ===
 
<source lang="lua">
 
<source lang="lua">
 
img = love.graphics.newImage("mushroom-64x64.png")
 
img = love.graphics.newImage("mushroom-64x64.png")
  
-- 画像の左上 32x32 の四分区間のみを
+
-- 画像の左上にある寸法が 32x32 の Quad を
-- 表示したいとしましょう:
+
-- 表示します:
 
top_left = love.graphics.newQuad(0, 0, 32, 32, img:getDimensions())
 
top_left = love.graphics.newQuad(0, 0, 32, 32, img:getDimensions())
  
-- そして左下をこちらへ:
+
-- こちらは左下です:
 
bottom_left = love.graphics.newQuad(0, 32, 32, 32, img:getDimensions())
 
bottom_left = love.graphics.newQuad(0, 32, 32, 32, img:getDimensions())
  

Revision as of 17:18, 19 September 2019

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
Quad の基準全幅となる Image の幅 (0 以上)
number sh
Quad の基準全高となる Image の高さ (0 以上)

返値

Quad quad
新規 Quad です。

注釈

Quad の用途は画像全体ではなく、部品化した画像をオブジェクトとして描画することです。そのため Quad はスプライト・シートやテクスチャ・アトラスにおいて非常に便利です。

例えば、スプライト・アトラスにおいて、同一画像内に複数のスプライトがあるときに Quad を用いると、画像から指定のスプライトを描画します。

また、アニメーション描画用のスプライトにおいて、同一画像内に全コマ(フレーム)があるときに Quad を用いると、アニメーションから指定のフレームを描画します。

用例

Quad により部品化した画像を表示します

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

-- 画像の左上にある寸法が 32x32 の Quad を 
-- 表示します:
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

関連



そのほかの言語