さけのさかなのブログ

同人ゲーム開発やってます。Unity使ったりする。

Unity5.2のUIエフェクト

文字にグラデーションをつける

 以前にUnityUIのUIEffectを作成し、文字にグラデーションをつけるスクリプトを書いた。

 が、BaseVertexEffectの引数がUnity5.2(まだβだけど)では変更されていて、書きなおす必要がある。

5.1までのコード

public override void ModifyVertices(List<UIVertex> verts)
{
    // ここに処理
}

5.2対応

public override void ModifyMesh(Mesh mesh)
{
    var verts = new List<UIVertex>();
    using(var helper = new VertexHelper(mesh))
    {
        helper.GetUIVertexStream(verts);
    }

    // ここに処理

    using (var helper2 = new VertexHelper())
    {
        helper2.AddUIVertexTriangleStream(verts);
        helper2.FillMesh(mesh);
    }
}