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

m (fixed: 任意指定 → 選択制 (Option[al]))
m (用例)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
描画に使用する色を設定します。
 
描画に使用する色を設定します。
 +
 +
バージョン [[11.0 (日本語)|11.0]] 以前まで、配色成分における値の範囲は小数値の 0 〜 1 ではなく整数値の 0 〜 255 です。
 
== 関数 ==
 
== 関数 ==
 
=== 概要 ===
 
=== 概要 ===
Line 9: Line 11:
 
{{param|number|green|緑の量。}}
 
{{param|number|green|緑の量。}}
 
{{param|number|blue|青の量。}}
 
{{param|number|blue|青の量。}}
{{param|number|alpha (255)|透過の量。設定後に画像の描画であっても、透過値は全ての描画操作へ適用されます。}}
+
{{param|number|alpha (1)|透過の量。設定後に画像の描画であっても、透過値は全ての描画操作へ適用されます。}}
 
=== 返値 ===
 
=== 返値 ===
 
ありません。
 
ありません。
Line 19: Line 21:
 
</source>
 
</source>
 
=== 引数 ===
 
=== 引数 ===
{{param|table|rgba|赤、緑、青および透過の [[number (日本語)|number]] 値で構成された数字の索引テーブル。透過は選択制であり無指定時は標準で 255 を設定します。}}
+
{{param|table|rgba|赤、緑、青および透過の [[number (日本語)|number]] 値で構成された数字の索引テーブル。透過は選択制であり無指定時は標準で 1 を設定します。}}
 
=== 返値 ===
 
=== 返値 ===
 
ありません。
 
ありません。
Line 25: Line 27:
 
=== 赤、青および緑の円を描画します ===
 
=== 赤、青および緑の円を描画します ===
 
<source lang="lua">
 
<source lang="lua">
love.graphics.setColor(255, 0, 0)
+
function love.draw()
love.graphics.circle(50, 50, 20, 20)
+
love.graphics.setColor(1, 0, 0)
 +
love.graphics.circle("fill", 50, 50, 20)
  
love.graphics.setColor(0, 0, 255)
+
love.graphics.setColor(0, 0, 1)
love.graphics.circle(50, 100, 20, 20)
+
love.graphics.circle("fill", 50, 100, 20)
  
myColor = {0, 255, 0, 255}
+
myColor = {0, 1, 0, 1}
love.graphics.setColor(myColor)
+
love.graphics.setColor(myColor)
love.graphics.circle(50, 150, 20, 20)
+
love.graphics.circle("fill", 50, 150, 20)
 +
end
 
</source>
 
</source>
 
=== ベン図の描画 ===
 
=== ベン図の描画 ===
 +
 
<source lang="lua">
 
<source lang="lua">
 
function love.load()
 
function love.load()
Line 42: Line 47:
 
radius = 100
 
radius = 100
 
offsetY = radius*.5*math.sqrt(3)
 
offsetY = radius*.5*math.sqrt(3)
love.graphics.setBackgroundColor(255,255,255)
+
love.graphics.setBackgroundColor(1, 1, 1)
 
end
 
end
  
 
function love.draw()
 
function love.draw()
love.graphics.setColor(255, 0, 0, 100)
+
love.graphics.setColor(1, 0, 0, 0.4)
love.graphics.circle('fill', baseX, baseY, radius, 50)
+
love.graphics.circle('fill', baseX, baseY, radius)
love.graphics.setColor(0, 255, 0, 100)
+
love.graphics.setColor(0, 1, 0, 0.4)
love.graphics.circle('fill', baseX + radius / 2, baseY - offsetY, radius, 50)
+
love.graphics.circle('fill', baseX + radius / 2, baseY - offsetY, radius)
love.graphics.setColor(0, 0, 255, 100)
+
love.graphics.setColor(0, 0, 1, 0.4)
love.graphics.circle('fill', baseX + radius, baseY, radius, 50)
+
love.graphics.circle('fill', baseX + radius, baseY, radius)
 
end
 
end
 
</source>
 
</source>
 +
 
== 関連 ==
 
== 関連 ==
 
* [[parent::love.graphics (日本語)]]
 
* [[parent::love.graphics (日本語)]]
 
* [[HSL color (日本語)]] (人間の知覚に基づく代替の色彩空間)
 
* [[HSL color (日本語)]] (人間の知覚に基づく代替の色彩空間)
 +
* [https://www.straightapps.com/android/dev/opengles-color.html OpenGLES での色指定 - StraightApps.com]
 +
* [https://www.reddit.com/r/love2d/comments/8cxrzv/whats_with_the_color_changes_in_110/ What's with the color changes in 11.0? (reddit)]
 
[[Category:Functions]]
 
[[Category:Functions]]
 
{{#set:Description=描画に使用する色を設定します。}}
 
{{#set:Description=描画に使用する色を設定します。}}
 
{{#set:Since=000}}
 
{{#set:Since=000}}
 
{{#set:Sub-Category=State (日本語)}}
 
{{#set:Sub-Category=State (日本語)}}
 +
 
== そのほかの言語 ==
 
== そのほかの言語 ==
 
{{i18n|love.graphics.setColor}}
 
{{i18n|love.graphics.setColor}}

Latest revision as of 17:42, 2 April 2020

描画に使用する色を設定します。

バージョン 11.0 以前まで、配色成分における値の範囲は小数値の 0 〜 1 ではなく整数値の 0 〜 255 です。

関数

概要

love.graphics.setColor( red, green, blue, alpha )

引数

number red
赤の量。
number green
緑の量。
number blue
青の量。
number alpha (1)
透過の量。設定後に画像の描画であっても、透過値は全ての描画操作へ適用されます。

返値

ありません。

関数

LÖVE 0.7.0 から使用可能
この異形は以前のバージョンでは非対応です。

概要

love.graphics.setColor( rgba )

引数

table rgba
赤、緑、青および透過の number 値で構成された数字の索引テーブル。透過は選択制であり無指定時は標準で 1 を設定します。

返値

ありません。

用例

赤、青および緑の円を描画します

function love.draw()
	love.graphics.setColor(1, 0, 0)
	love.graphics.circle("fill", 50, 50, 20)

	love.graphics.setColor(0, 0, 1)
	love.graphics.circle("fill", 50, 100, 20)

	myColor = {0, 1, 0, 1}
	love.graphics.setColor(myColor)
	love.graphics.circle("fill", 50, 150, 20)
end

ベン図の描画

function love.load()
	baseX = 300
	baseY = 400
	radius = 100
	offsetY = radius*.5*math.sqrt(3)
	love.graphics.setBackgroundColor(1, 1, 1)
end

function love.draw()
	love.graphics.setColor(1, 0, 0, 0.4)
	love.graphics.circle('fill', baseX, baseY, radius)
	love.graphics.setColor(0, 1, 0, 0.4)
	love.graphics.circle('fill', baseX + radius / 2, baseY - offsetY, radius)
	love.graphics.setColor(0, 0, 1, 0.4)
	love.graphics.circle('fill', baseX + radius, baseY, radius)
end

関連



そのほかの言語