Difference between revisions of "SpriteBatch:attachAttribute (日本語)"

m (translation updated)
m
 
Line 2: Line 2:
 
描画時に使用するために、この SpriteBatch に [[Mesh (日本語)|Mesh]] から頂点ごとの属性を付加します。これはスプライトごとに色を有する代わりとして頂点ごと、あるいは追加のスプライトごとの情報により SpriteBatch を拡張するために [[Shader (日本語)|Shader]] と組み合わせることができます。
 
描画時に使用するために、この SpriteBatch に [[Mesh (日本語)|Mesh]] から頂点ごとの属性を付加します。これはスプライトごとに色を有する代わりとして頂点ごと、あるいは追加のスプライトごとの情報により SpriteBatch を拡張するために [[Shader (日本語)|Shader]] と組み合わせることができます。
  
SpriteBatch にある各スプライトは次の順番で 4 つの頂点を有しています: 左上、左下、右上、右下です。 [[SpriteBatch:add (日本語)|SpriteBatch:add]] (および [[SpriteBatch:set (日本語)|SpriteBatch:set]] でも使用) により返されたインデックス (索引) <code>1 + 4 * ( id - 1 )</code> の数式で指定スプライトの第一頂点を判定に使用できます。
+
SpriteBatch にある各スプライトは次の順番で 4 つの頂点を有しています: 左上、左下、右上、右下です。 指定されたスプライトの第一頂点を判定するには [[SpriteBatch:add (日本語)|SpriteBatch:add]] (および [[SpriteBatch:set (日本語)|SpriteBatch:set]] でも使用) により返されたインデックス (索引) を用いて <code>1 + 4 * ( id - 1 )</code> の数式を計算します。
 
== 関数 ==
 
== 関数 ==
 
=== 概要 ===
 
=== 概要 ===

Latest revision as of 15:53, 9 October 2019

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

描画時に使用するために、この SpriteBatch に Mesh から頂点ごとの属性を付加します。これはスプライトごとに色を有する代わりとして頂点ごと、あるいは追加のスプライトごとの情報により SpriteBatch を拡張するために Shader と組み合わせることができます。

SpriteBatch にある各スプライトは次の順番で 4 つの頂点を有しています: 左上、左下、右上、右下です。 指定されたスプライトの第一頂点を判定するには SpriteBatch:add (および SpriteBatch:set でも使用) により返されたインデックス (索引) を用いて 1 + 4 * ( id - 1 ) の数式を計算します。

関数

概要

SpriteBatch:attachAttribute( name, mesh )

引数

string name
付加を行う頂点属性の名称。
Mesh mesh
頂点属性の取得を行う Mesh です。

返値

ありません。

注釈

Mesh がカスタム頂点形式により作成されなかった場合は VertexPosition, VertexTexCoord, および VertexColor という三種類の名称による頂点属性を有しています。それらの名称を有する頂点属性が SpriteBatch に付加している場合は、各 SpriteBatch におけるスプライトの位置、テクスチャーの座標、およびスプライトの色を上書きします。

慣習により名前が付けられた属性は頂点シェーダーのコード最上部で attribute vec4 MyCustomAttributeName; を宣言すると頂点シェーダーからアクセスできます。名称は Mesh の頂点形式および SpriteBatch:attachAttribute の 引数 name で指定されたものと必ず一致させる必要があります。

Mesh は SpriteBatch へ付加可能にするために最低でも必ず 4 * SpriteBatch:getBufferSize つの頂点を順番に有する必要があります。

関連


そのほかの言語