Blender V5.0
blender::nodes::node_composite_lensdist_cc Namespace Reference

Classes

class  LensDistortionOperation

Functions

static void cmp_node_lensdist_declare (NodeDeclarationBuilder &b)
static void node_composit_init_lensdist (bNodeTree *, bNode *node)
static float compute_distortion_scale (const float distortion, const float distance_squared)
static float3 compute_chromatic_distortion_scale (const float3 &chromatic_distortion, const float distance_squared)
static float2 compute_distorted_uv (const float2 &uv, const float uv_scale, const int2 &size)
static int compute_number_of_integration_steps_heuristic (const float distortion, const bool use_jitter)
static int4 compute_number_of_integration_steps (const float3 &chromatic_distortion, const int2 &size, const float2 &uv, const float distance_squared, const bool use_jitter)
static float get_jitter (const int2 &texel, const int seed, const bool use_jitter)
static float4 integrate_distortion (const int2 &texel, const Result &input, const int2 &size, const float3 &chromatic_distortion, const int start, const int end, const float distance_squared, const float2 &uv, const int steps, const bool use_jitter)
static void radial_lens_distortion (const int2 texel, const Result &input, Result &output, const int2 &size, const float3 &chromatic_distortion, const float scale, const bool use_jitter)
static NodeOperationget_compositor_operation (Context &context, DNode node)

Variables

static const EnumPropertyItem type_items []

Function Documentation

◆ cmp_node_lensdist_declare()

◆ compute_chromatic_distortion_scale()

float3 blender::nodes::node_composite_lensdist_cc::compute_chromatic_distortion_scale ( const float3 & chromatic_distortion,
const float distance_squared )
static

◆ compute_distorted_uv()

float2 blender::nodes::node_composite_lensdist_cc::compute_distorted_uv ( const float2 & uv,
const float uv_scale,
const int2 & size )
static

Definition at line 127 of file node_composite_lensdist.cc.

References size().

Referenced by compute_number_of_integration_steps(), and integrate_distortion().

◆ compute_distortion_scale()

float blender::nodes::node_composite_lensdist_cc::compute_distortion_scale ( const float distortion,
const float distance_squared )
static

Definition at line 110 of file node_composite_lensdist.cc.

References blender::math::max(), and blender::math::sqrt().

Referenced by integrate_distortion().

◆ compute_number_of_integration_steps()

int4 blender::nodes::node_composite_lensdist_cc::compute_number_of_integration_steps ( const float3 & chromatic_distortion,
const int2 & size,
const float2 & uv,
const float distance_squared,
const bool use_jitter )
static

◆ compute_number_of_integration_steps_heuristic()

int blender::nodes::node_composite_lensdist_cc::compute_number_of_integration_steps_heuristic ( const float distortion,
const bool use_jitter )
static

Definition at line 137 of file node_composite_lensdist.cc.

References blender::math::sqrt().

Referenced by compute_number_of_integration_steps().

◆ get_compositor_operation()

NodeOperation * blender::nodes::node_composite_lensdist_cc::get_compositor_operation ( Context & context,
DNode node )
static

Definition at line 534 of file node_composite_lensdist.cc.

◆ get_jitter()

float blender::nodes::node_composite_lensdist_cc::get_jitter ( const int2 & texel,
const int seed,
const bool use_jitter )
static

Definition at line 182 of file node_composite_lensdist.cc.

References blender::noise::hash_to_float(), and seed.

Referenced by integrate_distortion().

◆ integrate_distortion()

float4 blender::nodes::node_composite_lensdist_cc::integrate_distortion ( const int2 & texel,
const Result & input,
const int2 & size,
const float3 & chromatic_distortion,
const int start,
const int end,
const float distance_squared,
const float2 & uv,
const int steps,
const bool use_jitter )
static

◆ node_composit_init_lensdist()

void blender::nodes::node_composite_lensdist_cc::node_composit_init_lensdist ( bNodeTree * ,
bNode * node )
static

Definition at line 93 of file node_composite_lensdist.cc.

References data, MEM_callocN(), and bNode::storage.

◆ radial_lens_distortion()

void blender::nodes::node_composite_lensdist_cc::radial_lens_distortion ( const int2 texel,
const Result & input,
Result & output,
const int2 & size,
const float3 & chromatic_distortion,
const float scale,
const bool use_jitter )
static

Variable Documentation

◆ type_items

const EnumPropertyItem blender::nodes::node_composite_lensdist_cc::type_items[]
static
Initial value:
= {
"RADIAL",
0,
N_("Radial"),
N_("Radially distorts the image to create a barrel or a Pincushion distortion")},
"HORIZONTAL",
0,
N_("Horizontal"),
N_("Horizontally distorts the image to create a channel/color shifting effect")},
{0, nullptr, 0, nullptr, nullptr},
}
@ CMP_NODE_LENS_DISTORTION_RADIAL
@ CMP_NODE_LENS_DISTORTION_HORIZONTAL
#define N_(msgid)

Definition at line 36 of file node_composite_lensdist.cc.

Referenced by cmp_node_lensdist_declare().