コンテンツにスキップ

一般的なデータ型

式で利用できる一般的なデータ型がいくつかあります。これらにより、ユーザーは複合値をより簡単に扱えます。

関数 Colour(r, g, b, a) を使うと Colour オブジェクトを作成できます。このオブジェクトには rgba フィールドがあり、これらは 0 から 1 の間が期待される浮動小数点値です。

Colour 値の混合は一般的な操作です。mix 関数は、指定した ratio を使って rgba の各成分に lerp を実行します。使い方の説明には、次の式の例が役立つでしょう:

Colour(1, 0, 0, 1).mix(Colour(0, 1, 0, 1), 0.5)

これは r=0.5, g=0.5, b=0.0, a=1.0 を含む Colour 値を生成し、システムの他の場所で参照できます。

この関数は、色相・彩度・明度のホイール表現から色の値を作成するのに便利です。HSL 値に対応する RGB 成分を含む通常の Colour オブジェクトを生成します。たとえば ColourFromHSL(0.0, 1.0, 1.0)Colour(1.0, 0.0, 0.0, 1.0) と同等です。0 度の色相は赤の原色だからです。

  • Hue(色相)は、カラーホイールの縁を回る度数を表す float 値です。値は 0 から 360 の間です(これらは互いに同等です)。
  • Saturation(彩度)は 0 から 1 の float 値です。値が 0 に近づくと、結果の色は Lightness の値のグレーに近づきます。
  • Lightness(明度)は色の強度です。これも 0 から 1 の値で、0 は黒、1 は最大強度です。一部のソフトウェアでは「value」とも呼ばれます。

関数 Vec2(x, y) を使うと Vec2 オブジェクトを作成できます。このオブジェクトには浮動小数点値の xy フィールドがあります。

Vec2 は便宜のため float2 という別名があります。

関数 Vec3(x, y, z) を使うと Vec3 オブジェクトを作成できます。このオブジェクトには浮動小数点値の xyz フィールドがあります。

Vec3 は便宜のため float3 という別名があります。

関数 Vec4(x, y, z, w) を使うと Vec4 オブジェクトを作成できます。このオブジェクトには浮動小数点値の xyzw フィールドがあります。

Vec4 は便宜のため float4 という別名があります。

Vec<N> ファミリーのデータ型には、いくつかの便利な関数が公開されています:

2 つのベクトル間の内積を実行します。

成分の絶対値を提供します。

ベクトル型には、関数だけでなく計算されるプロパティもあります。これらは呼び出さずにアクセスします。

成分の最小値を提供します。

成分の最小値を返します。