Rounded Rectangle ノード | Shader Graph | 10.0.0-preview.27
docs.unity3d.com
    目次を表示する/隠す

    Rounded Rectangle ノード

    説明

    入力 UV に基づいて、入力 Width および Height に指定されたサイズの、角を丸めた四角形を生成します。各角の半径は入力 Radius によって定義されます。Tiling And Offset ノード を接続すると、生成されたシェイプのオフセットやタイル化が可能です。UV 空間内でのシェイプのオフセット機能を維持するため、タイル化の際にシェイプは自動的に反復されないようになっています。角を丸めた四角形の反復効果を作り出すには、まず Fraction ノード を使って入力を接続してください。

    注意: この ノード は、Fragment シェーダーステージ でのみ使用可能です。

    ポート

    Name Direction タイプ バインディング 説明
    UV 入力 Vector 2 UV 入力 UV 値
    Width 入力 Vector 1 なし 角を丸めた四角形の幅
    Height 入力 Vector 1 なし 角を丸めた四角形の高さ
    Radius 入力 Vector 1 なし 角の丸み
    Out 出力 Vector 1 なし 出力値

    生成されるコードの例

    以下のサンプルコードは、このノードの出力の一例を示したものです。

    void Unity_RoundedRectangle_float(float2 UV, float Width, float Height, float Radius, out float Out)
    {
        Radius = max(min(min(abs(Radius * 2), abs(Width)), abs(Height)), 1e-5);
        float2 uv = abs(UV * 2 - 1) - float2(Width, Height) + Radius;
        float d = length(max(0, uv)) / Radius;
        Out = saturate((1 - d) / fwidth(d));
    }
    
    トップに戻る Copyright © 2020 Unity Technologies
    Generated by DocFX
    on Thursday, January 21, 2021