(
    schema_version: 2,
    label: "Surface Tint",
    kind: Custom,
    wgsl_path: Some("assets/shaders/surface_tint.wgsl"),
    schema: (
        groups: [
            (
                id: "surface",
                display_name: "Surface",
                order: 0,
                advanced: false,
            ),
            (
                id: "emission",
                display_name: "Emission",
                order: 1,
                advanced: false,
            ),
        ],
        inputs: [
            (
                name: "tint",
                display_name: "Tint",
                group: "surface",
                order: 0,
                property_type: Color,
                default_value: Some(Color((
                    r: 0.12,
                    g: 0.42,
                    b: 0.95,
                    a: 1.0,
                ))),
                texture: None,
                tooltip: "",
                advanced: false,
            ),
            (
                name: "roughness",
                display_name: "Roughness",
                group: "surface",
                order: 1,
                property_type: Float(
                    min: Some(0.001),
                    max: Some(1.0),
                ),
                default_value: Some(Float(0.28)),
                texture: None,
                tooltip: "",
                advanced: false,
            ),
            (
                name: "metallic",
                display_name: "Metallic",
                group: "surface",
                order: 2,
                property_type: Float(
                    min: Some(0.0),
                    max: Some(1.0),
                ),
                default_value: Some(Float(0.15)),
                texture: None,
                tooltip: "",
                advanced: false,
            ),
            (
                name: "emissive",
                display_name: "Emissive",
                group: "emission",
                order: 3,
                property_type: Color,
                default_value: Some(Color((
                    r: 0.02,
                    g: 0.08,
                    b: 0.25,
                    a: 1.0,
                ))),
                texture: None,
                tooltip: "",
                advanced: false,
            ),
            (
                name: "emissive_intensity",
                display_name: "Emissive Nits",
                group: "emission",
                order: 4,
                property_type: Float(
                    min: Some(0.0),
                    max: Some(20000.0),
                ),
                default_value: Some(Float(3.0)),
                texture: None,
                tooltip: "",
                advanced: false,
            ),
        ],
    ),
)