Difference between revisions of "Shader:sendColor (日本語)"

m
m
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
{{newin (日本語)|[[0.10.0]]|100|type=関数}}
+
{{newin (日本語)|[[0.10.0 (日本語)|0.10.0]]|100|type=関数}}
シェーダに存在する特別な (''extern'' / ''uniform'') vec3 または vec4 変数へ1つ以上の色を送信します。[[Shader:send (日本語)|Shader:send]] と異なり、色の要素は [0, 255] の範囲内にする必要があります。大域[[love.graphics.isGammaCorrect (日本語)|ガンマ補正]]が有効な場合は、色に対してガンマ補正処理を行います。
+
シェーダに存在する特別な (''extern'' / ''uniform'') vec3 または vec4 変数へ1つ以上の色を送信します。配色成分は [0, 1] の範囲内を指定します。大域[[love.graphics.isGammaCorrect (日本語)|ガンマ補正]]が有効な場合は、色に対してガンマ補正処理を行います。
  
 
外部変数は ''extern'' キーワードを使用して識別する必要があります。例えば、
 
外部変数は ''extern'' キーワードを使用して識別する必要があります。例えば、
Line 15: Line 15:
  
  
各変数が宣言されている限り、 外部変数は頂点およびピクセル(画素)シェーダの段階で両方ともアクセスすることができます。
+
各変数が宣言されている限り、 外部変数は頂点およびピクセル(画素)シェーダの段階で両方ともアクセスできます。
 +
 
 +
バージョン [[11.0 (日本語)|11.0]] 以前まで、配色成分における値の範囲は小数値の 0 〜 1 ではなく整数値の 0 〜 255 です。
  
 
== 関数 ==
 
== 関数 ==
Line 24: Line 26:
 
=== 引数 ===
 
=== 引数 ===
 
{{param|string|name|シェーダへ送信を行う色の外部変数名。}}
 
{{param|string|name|シェーダへ送信を行う色の外部変数名。}}
{{param|table|color|ベクターとして extern へ送信するために [0, 255] の範囲内から成る赤、緑、青、および選択制の透過色要素を有するテーブル。}}
+
{{param|table|color|ベクターとして extern へ送信するために [0, 1] の範囲内から成る赤、緑、青、および選択制の透過色成分を有するテーブル。}}
{{param|table|...|extern が配列の場合に送信を行う追加の色。全ての色は同じ大きさ (例えば vec3 のみ)である必要があります。}}
+
{{param|table|...|extern が配列の場合に送信を行う追加の色。全ての色は同じ大きさ (例えば vec3 のみ) にします。}}
 +
 
 
=== 返値 ===
 
=== 返値 ===
 
ありません。
 
ありません。
Line 37: Line 40:
 
{{#set:Description=シェーダーへ1つ以上の色を送信します}}
 
{{#set:Description=シェーダーへ1つ以上の色を送信します}}
 
== そのほかの言語 ==
 
== そのほかの言語 ==
{{i18n|Shader:sendColor}}
+
{{i18n (日本語)|Shader:sendColor}}

Latest revision as of 00:09, 10 October 2019

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

シェーダに存在する特別な (extern / uniform) vec3 または vec4 変数へ1つ以上の色を送信します。配色成分は [0, 1] の範囲内を指定します。大域ガンマ補正が有効な場合は、色に対してガンマ補正処理を行います。

外部変数は extern キーワードを使用して識別する必要があります。例えば、

extern vec4 Color;

対応する sendColor 呼び出しは、

shader:sendColor("Color", {r, g, b, a})


各変数が宣言されている限り、 外部変数は頂点およびピクセル(画素)シェーダの段階で両方ともアクセスできます。

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

関数

概要

Shader:sendColor( name, color, ... )

引数

string name
シェーダへ送信を行う色の外部変数名。
table color
ベクターとして extern へ送信するために [0, 1] の範囲内から成る赤、緑、青、および選択制の透過色成分を有するテーブル。
table ...
extern が配列の場合に送信を行う追加の色。全ての色は同じ大きさ (例えば vec3 のみ) にします。

返値

ありません。

関連


そのほかの言語