love.graphics.newPixelEffect (日本語)

LÖVE 0.8.0 まで使用可能でしたが LÖVE 0.9.0 で廃止されました
love.graphics.newShader へ名称変更。

ハードウェアにより高速処理されたピクセル水準エフェクトに対して PixelEffect オブジェクトを新規作成します。

PixelEffect は最低でも一本の関数を含んでおり、それは effect という名前であり、それ自体がエフェクトですが、追加の関数を含むことができます。

関数

概要

pixeleffect = love.graphics.newPixelEffect( code )

引数

string code
ピクセル・エフェクトのコード。

返値

PixelEffect pixeleffect
描画操作で使用する PixelEffect オブジェクト。

エフェクト言語

ピクセルエフェクトは Lua ではプログラミングできませんが、代わりに特別なエフェクト言語を使用します。基本的にエフェクト言語は GLSL 1.20 (仕様書) であり既存の型へ若干の別名を追加した物です:

GLSL エフェクト言語
float number
sampler2D Image
uniform extern
texture2D(tex, uv) Texel(tex, uv)

エフェクト関数

概要

vec4 effect( vec4 color, Image texture, vec2 texture_coords, vec2 screen_coords )

引数

vec4 color
love.graphics.setColor にて設定する描画色。
Image texture
テクスチャとして描画される画像またはキャンバス。
vec2 texture_coords
テクスチャと関連のあるピクセルの座標。キャンバスの Y-軸は反転しています。座標 (1, 1) はキャンバスの右上角になります。
vec2 screen_coords
画面上のピクセルの座標。ピクセルの座標は標準化されません (テクスチャの座標とは異なります)。(0.5, 0.5) は画面左下を表します。

返値

vec4 output_color
ピクセルの色。


関連




そのほかの言語