Skip to content

TextureCurvature

TextureCurvature#

(Curvature)

Go to User page.

Description#

Utility texture allowing to output the information of the current fragment.

Public Attributes#

Type Name Visual Hint Description
long output VISUAL_HINT_DEFAULT Set which information should be outputted from the texture. The sampled curvature computes a quantity akin to mean curvature, but with values between -1 and 1. It is computed through ray-casting to get a smoother result than the crude value obtained from other modes.
double radius VISUAL_HINT_DISTANCE Defines the radius within which ray-casting occurs.
double bias VISUAL_HINT_DISTANCE Defines the bias, or offset, applied to the position of origin of the ray-casting along the normal.
long sample_count VISUAL_HINT_SAMPLE_PER_PIXEL Samples per shaded point for this ray-casting curvature computation. Note that unless the sampling settings on materials and lights, this one is not gonna be decimated based on camera samples, or splitting factor of the secondary rays.
reference (Group) geometry VISUAL_HINT_GROUP Defines against which geometry the ray-casting will occur, defaulting to the visible geometry as defined at the Layer 3D level.
long intersection_mode VISUAL_HINT_DEFAULT Whithin the set of geometries defined right above, indicates which ones should participate to the curvature computation.
long sidedness VISUAL_HINT_DEFAULT Sidedness of the surface used for this computation. 'Single' keeps the original normal no matter what, whereas 'double' may flip it to be oriented towards the incoming direction.
long display VISUAL_HINT_DEFAULT Chooses between an easier to interpret color-coded display mode, or the raw scalar value that can get negative. In color-coded mode, green is positive and red negative (resp. convex and concave regions).
double gain VISUAL_HINT_DEFAULT Multiplies the output for easier readability.
double offset VISUAL_HINT_DEFAULT Offsets the output (in raw display mode only, and after the gain has been applied) for easier readability.

Inherited Public Attributes#

Type Name Visual Hint Description
bool pass_through VISUAL_HINT_DEFAULT If checked, the current texture is not evaluated and the value of the attribute selected in Pass Through Attribute is directly forwarded.
string master_input VISUAL_HINT_TAG Name of the attribute that will be used as output if Pass Through is enabled.
bool invert VISUAL_HINT_DEFAULT If checked, the texture is inverted.
double opacity VISUAL_HINT_PERCENTAGE Set the opacity of the texture.

CID#

class "TextureCurvature" "Texture" {
    #version 1.02
    icon "../icons/object_icons/texture_curvature.iconrc"
    category "/Texture/Utility"
    doc "Utility texture allowing to output the information of the current fragment."
    attribute_group "curvature" {
        long "output" {
            doc "Set which information should be outputted from the texture. The sampled curvature computes a quantity akin to mean curvature, but with values between -1 and 1. It is computed through ray-casting to get a smoother result than the crude value obtained from other modes."
            preset "Gaussian Curvature" "0"
            preset "Mean Curvature" "1"
            preset "Sampled Curvature" "2"
            value 0
        }
        distance "radius" {
            doc "Defines the radius within which ray-casting occurs."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10000
            ui_range yes 0.0 10
            read_only yes
            value 0.1
        }
        distance "bias" {
            doc "Defines the bias, or offset, applied to the position of origin of the ray-casting along the normal."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 10000
            ui_range yes 0.0 0.001
            read_only yes
            value 0.0001
        }
        sample_per_pixel "sample_count" {
            doc "Samples per shaded point for this ray-casting curvature computation. Note that unless the sampling settings on materials and lights, this one is not gonna be decimated based on camera samples, or splitting factor of the secondary rays."
            texturable yes
            animatable yes
            numeric_range yes 1 4096
            ui_range yes 1 256
            read_only yes
            value 16
        }
    }
    attribute_group "curvature>advanced" {
        collapsed yes
        ui_weight 1000
        group "geometry" {
            doc "Defines against which geometry the ray-casting will occur, defaulting to the visible geometry as defined at the Layer 3D level."
            filter "SceneObject"
            null_label "Use Layer 3D"
            dg_cyclic yes
            read_only yes
            value ""
        }
        long "intersection_mode" {
            doc "Whithin the set of geometries defined right above, indicates which ones should participate to the curvature computation."
            read_only yes
            preset "All" "0"
            preset "Self only" "1"
            preset "Other only" "2"
            value 0
        }
        long "sidedness" {
            doc "Sidedness of the surface used for this computation. \'Single\' keeps the original normal no matter what, whereas \'double\' may flip it to be oriented towards the incoming direction."
            read_only yes
            preset "Single" "0"
            preset "Double" "1"
            value 0
        }
    }
    attribute_group "output" {
        long "display" {
            doc "Chooses between an easier to interpret color-coded display mode, or the raw scalar value that can get negative. In color-coded mode, green is positive and red negative (resp. convex and concave regions)."
            preset "Raw Value" "1"
            preset "Color Coded" "0"
            value 0
        }
        double "gain" {
            doc "Multiplies the output for easier readability."
            texturable yes
            animatable yes
            slider yes
            numeric_range yes 0.0 1000000
            ui_range yes 0.0 1
            value 1
        }
        double "offset" {
            doc "Offsets the output (in raw display mode only, and after the gain has been applied) for easier readability."
            texturable yes
            animatable yes
            slider yes
            ui_range yes 0.0 1
            read_only yes
            value 0.0
        }
    }
}