I18n: Manually extract many node socket menu items
Node menu sockets' items are not currently exposed to RNA, and need to be extracted manually for now. Pull Request: https://projects.blender.org/blender/blender/pulls/147579
This commit is contained in:
@@ -21,20 +21,20 @@ static const EnumPropertyItem type_items[] = {
|
||||
{CMP_NODE_ALPHA_OVER_OPERATION_TYPE_OVER,
|
||||
"OVER",
|
||||
ICON_NONE,
|
||||
"Over",
|
||||
"The foreground goes over the background according to the alpha of the foreground"},
|
||||
N_("Over"),
|
||||
N_("The foreground goes over the background according to the alpha of the foreground")},
|
||||
{CMP_NODE_ALPHA_OVER_OPERATION_TYPE_DISJOINT_OVER,
|
||||
"DISJOINT_OVER",
|
||||
ICON_NONE,
|
||||
"Disjoint Over",
|
||||
"The foreground goes over the background according to the alpha of the foreground while "
|
||||
"assuming the background is being held out by the foreground"},
|
||||
N_("Disjoint Over"),
|
||||
N_("The foreground goes over the background according to the alpha of the foreground while "
|
||||
"assuming the background is being held out by the foreground")},
|
||||
{CMP_NODE_ALPHA_OVER_OPERATION_TYPE_CONJOINT_OVER,
|
||||
"CONJOINT_OVER",
|
||||
ICON_NONE,
|
||||
"Conjoint Over",
|
||||
"The foreground goes over the background according to the alpha of the foreground but the "
|
||||
"foreground completely covers the background if it is more opaque"},
|
||||
N_("Conjoint Over"),
|
||||
N_("The foreground goes over the background according to the alpha of the foreground but the "
|
||||
"foreground completely covers the background if it is more opaque")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -30,14 +30,14 @@
|
||||
namespace blender::nodes::node_composite_blur_cc {
|
||||
|
||||
static const EnumPropertyItem type_items[] = {
|
||||
{R_FILTER_BOX, "FLAT", 0, "Flat", ""},
|
||||
{R_FILTER_TENT, "TENT", 0, "Tent", ""},
|
||||
{R_FILTER_QUAD, "QUAD", 0, "Quadratic", ""},
|
||||
{R_FILTER_CUBIC, "CUBIC", 0, "Cubic", ""},
|
||||
{R_FILTER_GAUSS, "GAUSS", 0, "Gaussian", ""},
|
||||
{R_FILTER_FAST_GAUSS, "FAST_GAUSS", 0, "Fast Gaussian", ""},
|
||||
{R_FILTER_CATROM, "CATROM", 0, "Catrom", ""},
|
||||
{R_FILTER_MITCH, "MITCH", 0, "Mitch", ""},
|
||||
{R_FILTER_BOX, "FLAT", 0, N_("Flat"), ""},
|
||||
{R_FILTER_TENT, "TENT", 0, N_("Tent"), ""},
|
||||
{R_FILTER_QUAD, "QUAD", 0, N_("Quadratic"), ""},
|
||||
{R_FILTER_CUBIC, "CUBIC", 0, N_("Cubic"), ""},
|
||||
{R_FILTER_GAUSS, "GAUSS", 0, N_("Gaussian"), ""},
|
||||
{R_FILTER_FAST_GAUSS, "FAST_GAUSS", 0, N_("Fast Gaussian"), ""},
|
||||
{R_FILTER_CATROM, "CATROM", 0, N_("Catrom"), ""},
|
||||
{R_FILTER_MITCH, "MITCH", 0, N_("Mitch"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -24,10 +24,10 @@
|
||||
namespace blender::nodes::node_composite_boxmask_cc {
|
||||
|
||||
static const EnumPropertyItem operation_items[] = {
|
||||
{CMP_NODE_MASKTYPE_ADD, "ADD", 0, "Add", ""},
|
||||
{CMP_NODE_MASKTYPE_SUBTRACT, "SUBTRACT", 0, "Subtract", ""},
|
||||
{CMP_NODE_MASKTYPE_MULTIPLY, "MULTIPLY", 0, "Multiply", ""},
|
||||
{CMP_NODE_MASKTYPE_NOT, "NOT", 0, "Not", ""},
|
||||
{CMP_NODE_MASKTYPE_ADD, "ADD", 0, N_("Add"), ""},
|
||||
{CMP_NODE_MASKTYPE_SUBTRACT, "SUBTRACT", 0, N_("Subtract"), ""},
|
||||
{CMP_NODE_MASKTYPE_MULTIPLY, "MULTIPLY", 0, N_("Multiply"), ""},
|
||||
{CMP_NODE_MASKTYPE_NOT, "NOT", 0, N_("Not"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -20,14 +20,22 @@
|
||||
namespace blender::nodes::node_composite_channel_matte_cc {
|
||||
|
||||
static const EnumPropertyItem color_space_items[] = {
|
||||
{CMP_NODE_CHANNEL_MATTE_CS_RGB, "RGB", 0, "RGB", "RGB (Red, Green, Blue) color space"},
|
||||
{CMP_NODE_CHANNEL_MATTE_CS_HSV, "HSV", 0, "HSV", "HSV (Hue, Saturation, Value) color space"},
|
||||
{CMP_NODE_CHANNEL_MATTE_CS_YUV, "YUV", 0, "YUV", "YUV (Y - luma, U V - chroma) color space"},
|
||||
{CMP_NODE_CHANNEL_MATTE_CS_RGB, "RGB", 0, N_("RGB"), N_("RGB (Red, Green, Blue) color space")},
|
||||
{CMP_NODE_CHANNEL_MATTE_CS_HSV,
|
||||
"HSV",
|
||||
0,
|
||||
N_("HSV"),
|
||||
N_("HSV (Hue, Saturation, Value) color space")},
|
||||
{CMP_NODE_CHANNEL_MATTE_CS_YUV,
|
||||
"YUV",
|
||||
0,
|
||||
N_("YUV"),
|
||||
N_("YUV (Y - luma, U V - chroma) color space")},
|
||||
{CMP_NODE_CHANNEL_MATTE_CS_YCC,
|
||||
"YCC",
|
||||
0,
|
||||
"YCbCr",
|
||||
"YCbCr (Y - luma, Cb - blue-difference chroma, Cr - red-difference chroma) color space"},
|
||||
N_("YCbCr"),
|
||||
N_("YCbCr (Y - luma, Cb - blue-difference chroma, Cr - red-difference chroma) color space")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -35,13 +35,13 @@ static const EnumPropertyItem limit_method_items[] = {
|
||||
{CMP_NODE_COLOR_SPILL_LIMIT_ALGORITHM_SINGLE,
|
||||
"SINGLE",
|
||||
0,
|
||||
"Single",
|
||||
"Limit by a single channel"},
|
||||
N_("Single"),
|
||||
N_("Limit by a single channel")},
|
||||
{CMP_NODE_COLOR_SPILL_LIMIT_ALGORITHM_AVERAGE,
|
||||
"AVERAGE",
|
||||
0,
|
||||
"Average",
|
||||
"Limit by the average of the other two channels"},
|
||||
N_("Average"),
|
||||
N_("Limit by the average of the other two channels")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
@@ -62,6 +62,7 @@ static void cmp_node_color_spill_declare(NodeDeclarationBuilder &b)
|
||||
.default_value(RGBChannel::G)
|
||||
.static_items(rgb_channel_items)
|
||||
.expanded()
|
||||
.translation_context(BLT_I18NCONTEXT_COLOR)
|
||||
.optional_label();
|
||||
b.add_input<decl::Menu>("Limit Method")
|
||||
.default_value(CMP_NODE_COLOR_SPILL_LIMIT_ALGORITHM_SINGLE)
|
||||
@@ -72,6 +73,7 @@ static void cmp_node_color_spill_declare(NodeDeclarationBuilder &b)
|
||||
.default_value(RGBChannel::R)
|
||||
.static_items(rgb_channel_items)
|
||||
.expanded()
|
||||
.translation_context(BLT_I18NCONTEXT_COLOR)
|
||||
.optional_label()
|
||||
.usage_by_menu("Limit Method", CMP_NODE_COLOR_SPILL_LIMIT_ALGORITHM_SINGLE);
|
||||
b.add_input<decl::Float>("Limit Strength")
|
||||
|
||||
@@ -33,17 +33,17 @@
|
||||
namespace blender::nodes::node_composite_colorbalance_cc {
|
||||
|
||||
static const EnumPropertyItem type_items[] = {
|
||||
{CMP_NODE_COLOR_BALANCE_LGG, "LIFT_GAMMA_GAIN", 0, "Lift/Gamma/Gain", ""},
|
||||
{CMP_NODE_COLOR_BALANCE_LGG, "LIFT_GAMMA_GAIN", 0, N_("Lift/Gamma/Gain"), ""},
|
||||
{CMP_NODE_COLOR_BALANCE_ASC_CDL,
|
||||
"OFFSET_POWER_SLOPE",
|
||||
0,
|
||||
"Offset/Power/Slope (ASC-CDL)",
|
||||
"ASC-CDL standard color correction"},
|
||||
N_("Offset/Power/Slope (ASC-CDL)"),
|
||||
N_("ASC-CDL standard color correction")},
|
||||
{CMP_NODE_COLOR_BALANCE_WHITEPOINT,
|
||||
"WHITEPOINT",
|
||||
0,
|
||||
"White Point",
|
||||
"Chromatic adaption from a different white point"},
|
||||
N_("White Point"),
|
||||
N_("Chromatic adaption from a different white point")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -20,14 +20,14 @@ static const EnumPropertyItem kernel_data_type_items[] = {
|
||||
{int(KernelDataType::Float),
|
||||
"FLOAT",
|
||||
0,
|
||||
"Float",
|
||||
"The kernel is a float and will be convolved with all input channels"},
|
||||
N_("Float"),
|
||||
N_("The kernel is a float and will be convolved with all input channels")},
|
||||
{int(KernelDataType::Color),
|
||||
"COLOR",
|
||||
0,
|
||||
"Color",
|
||||
"The kernel is a color and each channel of the kernel will be convolved with each respective "
|
||||
"channel in the input"},
|
||||
N_("Color"),
|
||||
N_("The kernel is a color and each channel of the kernel will be convolved with each "
|
||||
"respective channel in the input")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -40,34 +40,34 @@ static const EnumPropertyItem prefilter_items[] = {
|
||||
{CMP_NODE_DENOISE_PREFILTER_NONE,
|
||||
"NONE",
|
||||
0,
|
||||
"None",
|
||||
"No prefiltering, use when guiding passes are noise-free"},
|
||||
N_("None"),
|
||||
N_("No prefiltering, use when guiding passes are noise-free")},
|
||||
{CMP_NODE_DENOISE_PREFILTER_FAST,
|
||||
"FAST",
|
||||
0,
|
||||
"Fast",
|
||||
"Denoise image and guiding passes together. Improves quality when guiding passes are noisy "
|
||||
"using least amount of extra processing time."},
|
||||
N_("Fast"),
|
||||
N_("Denoise image and guiding passes together. Improves quality when guiding passes are "
|
||||
"noisy using least amount of extra processing time.")},
|
||||
{CMP_NODE_DENOISE_PREFILTER_ACCURATE,
|
||||
"ACCURATE",
|
||||
0,
|
||||
"Accurate",
|
||||
"Prefilter noisy guiding passes before denoising image. Improves quality when guiding "
|
||||
"passes are noisy using extra processing time."},
|
||||
N_("Accurate"),
|
||||
N_("Prefilter noisy guiding passes before denoising image. Improves quality when guiding "
|
||||
"passes are noisy using extra processing time.")},
|
||||
{0, nullptr, 0, nullptr, nullptr}};
|
||||
|
||||
static const EnumPropertyItem quality_items[] = {
|
||||
{CMP_NODE_DENOISE_QUALITY_SCENE,
|
||||
"FOLLOW_SCENE",
|
||||
0,
|
||||
"Follow Scene",
|
||||
"Use the scene's denoising quality setting"},
|
||||
N_("Follow Scene"),
|
||||
N_("Use the scene's denoising quality setting")},
|
||||
{CMP_NODE_DENOISE_QUALITY_HIGH, "HIGH", 0, "High", "High quality"},
|
||||
{CMP_NODE_DENOISE_QUALITY_BALANCED,
|
||||
"BALANCED",
|
||||
0,
|
||||
"Balanced",
|
||||
"Balanced between performance and quality"},
|
||||
N_("Balanced"),
|
||||
N_("Balanced between performance and quality")},
|
||||
{CMP_NODE_DENOISE_QUALITY_FAST, "FAST", 0, "Fast", "High performance"},
|
||||
{0, nullptr, 0, nullptr, nullptr}};
|
||||
|
||||
|
||||
@@ -30,10 +30,10 @@
|
||||
namespace blender::nodes::node_composite_dilate_cc {
|
||||
|
||||
static const EnumPropertyItem type_items[] = {
|
||||
{CMP_NODE_DILATE_ERODE_STEP, "STEP", 0, "Steps", ""},
|
||||
{CMP_NODE_DILATE_ERODE_DISTANCE_THRESHOLD, "THRESHOLD", 0, "Threshold", ""},
|
||||
{CMP_NODE_DILATE_ERODE_DISTANCE, "DISTANCE", 0, "Distance", ""},
|
||||
{CMP_NODE_DILATE_ERODE_DISTANCE_FEATHER, "FEATHER", 0, "Feather", ""},
|
||||
{CMP_NODE_DILATE_ERODE_STEP, "STEP", 0, N_("Steps"), ""},
|
||||
{CMP_NODE_DILATE_ERODE_DISTANCE_THRESHOLD, "THRESHOLD", 0, N_("Threshold"), ""},
|
||||
{CMP_NODE_DILATE_ERODE_DISTANCE, "DISTANCE", 0, N_("Distance"), ""},
|
||||
{CMP_NODE_DILATE_ERODE_DISTANCE_FEATHER, "FEATHER", 0, N_("Feather"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -18,8 +18,8 @@
|
||||
namespace blender::nodes::node_composite_distance_matte_cc {
|
||||
|
||||
static const EnumPropertyItem color_space_items[] = {
|
||||
{CMP_NODE_DISTANCE_MATTE_COLOR_SPACE_RGBA, "RGB", 0, "RGB", "RGB color space"},
|
||||
{CMP_NODE_DISTANCE_MATTE_COLOR_SPACE_YCCA, "YCC", 0, "YCC", "YCbCr color space"},
|
||||
{CMP_NODE_DISTANCE_MATTE_COLOR_SPACE_RGBA, "RGB", 0, N_("RGB"), N_("RGB color space")},
|
||||
{CMP_NODE_DISTANCE_MATTE_COLOR_SPACE_YCCA, "YCC", 0, N_("YCC"), N_("YCbCr color space")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -22,10 +22,10 @@
|
||||
namespace blender::nodes::node_composite_ellipsemask_cc {
|
||||
|
||||
static const EnumPropertyItem operation_items[] = {
|
||||
{CMP_NODE_MASKTYPE_ADD, "ADD", 0, "Add", ""},
|
||||
{CMP_NODE_MASKTYPE_SUBTRACT, "SUBTRACT", 0, "Subtract", ""},
|
||||
{CMP_NODE_MASKTYPE_MULTIPLY, "MULTIPLY", 0, "Multiply", ""},
|
||||
{CMP_NODE_MASKTYPE_NOT, "NOT", 0, "Not", ""},
|
||||
{CMP_NODE_MASKTYPE_ADD, "ADD", 0, N_("Add"), ""},
|
||||
{CMP_NODE_MASKTYPE_SUBTRACT, "SUBTRACT", 0, N_("Subtract"), ""},
|
||||
{CMP_NODE_MASKTYPE_MULTIPLY, "MULTIPLY", 0, N_("Multiply"), ""},
|
||||
{CMP_NODE_MASKTYPE_NOT, "NOT", 0, N_("Not"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -20,18 +20,22 @@
|
||||
namespace blender::nodes::node_composite_filter_cc {
|
||||
|
||||
static const EnumPropertyItem type_items[] = {
|
||||
{CMP_NODE_FILTER_SOFT, "SOFTEN", 0, "Soften", ""},
|
||||
{CMP_NODE_FILTER_SHARP_BOX, "SHARPEN", 0, "Box Sharpen", "An aggressive sharpening filter"},
|
||||
{CMP_NODE_FILTER_SOFT, "SOFTEN", 0, N_("Soften"), ""},
|
||||
{CMP_NODE_FILTER_SHARP_BOX,
|
||||
"SHARPEN",
|
||||
0,
|
||||
N_("Box Sharpen"),
|
||||
N_("An aggressive sharpening filter")},
|
||||
{CMP_NODE_FILTER_SHARP_DIAMOND,
|
||||
"SHARPEN_DIAMOND",
|
||||
0,
|
||||
"Diamond Sharpen",
|
||||
"A moderate sharpening filter"},
|
||||
{CMP_NODE_FILTER_LAPLACE, "LAPLACE", 0, "Laplace", ""},
|
||||
{CMP_NODE_FILTER_SOBEL, "SOBEL", 0, "Sobel", ""},
|
||||
{CMP_NODE_FILTER_PREWITT, "PREWITT", 0, "Prewitt", ""},
|
||||
{CMP_NODE_FILTER_KIRSCH, "KIRSCH", 0, "Kirsch", ""},
|
||||
{CMP_NODE_FILTER_SHADOW, "SHADOW", 0, "Shadow", ""},
|
||||
N_("Diamond Sharpen"),
|
||||
N_("A moderate sharpening filter")},
|
||||
{CMP_NODE_FILTER_LAPLACE, "LAPLACE", 0, N_("Laplace"), ""},
|
||||
{CMP_NODE_FILTER_SOBEL, "SOBEL", 0, N_("Sobel"), ""},
|
||||
{CMP_NODE_FILTER_PREWITT, "PREWITT", 0, N_("Prewitt"), ""},
|
||||
{CMP_NODE_FILTER_KIRSCH, "KIRSCH", 0, N_("Kirsch"), ""},
|
||||
{CMP_NODE_FILTER_SHADOW, "SHADOW", 0, N_("Shadow"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -50,20 +50,20 @@
|
||||
namespace blender::nodes::node_composite_glare_cc {
|
||||
|
||||
static const EnumPropertyItem type_items[] = {
|
||||
{CMP_NODE_GLARE_BLOOM, "BLOOM", 0, "Bloom", ""},
|
||||
{CMP_NODE_GLARE_GHOST, "GHOSTS", 0, "Ghosts", ""},
|
||||
{CMP_NODE_GLARE_STREAKS, "STREAKS", 0, "Streaks", ""},
|
||||
{CMP_NODE_GLARE_FOG_GLOW, "FOG_GLOW", 0, "Fog Glow", ""},
|
||||
{CMP_NODE_GLARE_SIMPLE_STAR, "SIMPLE_STAR", 0, "Simple Star", ""},
|
||||
{CMP_NODE_GLARE_SUN_BEAMS, "SUN_BEAMS", 0, "Sun Beams", ""},
|
||||
{CMP_NODE_GLARE_KERNEL, "KERNEL", 0, "Kernel", ""},
|
||||
{CMP_NODE_GLARE_BLOOM, "BLOOM", 0, N_("Bloom"), ""},
|
||||
{CMP_NODE_GLARE_GHOST, "GHOSTS", 0, N_("Ghosts"), ""},
|
||||
{CMP_NODE_GLARE_STREAKS, "STREAKS", 0, N_("Streaks"), ""},
|
||||
{CMP_NODE_GLARE_FOG_GLOW, "FOG_GLOW", 0, N_("Fog Glow"), ""},
|
||||
{CMP_NODE_GLARE_SIMPLE_STAR, "SIMPLE_STAR", 0, N_("Simple Star"), ""},
|
||||
{CMP_NODE_GLARE_SUN_BEAMS, "SUN_BEAMS", 0, N_("Sun Beams"), ""},
|
||||
{CMP_NODE_GLARE_KERNEL, "KERNEL", 0, N_("Kernel"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
static const EnumPropertyItem quality_items[] = {
|
||||
{CMP_NODE_GLARE_QUALITY_HIGH, "HIGH", 0, "High", ""},
|
||||
{CMP_NODE_GLARE_QUALITY_MEDIUM, "MEDIUM", 0, "Medium", ""},
|
||||
{CMP_NODE_GLARE_QUALITY_LOW, "LOW", 0, "Low", ""},
|
||||
{CMP_NODE_GLARE_QUALITY_HIGH, "HIGH", 0, N_("High"), ""},
|
||||
{CMP_NODE_GLARE_QUALITY_MEDIUM, "MEDIUM", 0, N_("Medium"), ""},
|
||||
{CMP_NODE_GLARE_QUALITY_LOW, "LOW", 0, N_("Low"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
@@ -76,14 +76,14 @@ static const EnumPropertyItem kernel_data_type_items[] = {
|
||||
{int(KernelDataType::Float),
|
||||
"FLOAT",
|
||||
0,
|
||||
"Float",
|
||||
"The kernel is a float and will be convolved with all input channels"},
|
||||
N_("Float"),
|
||||
N_("The kernel is a float and will be convolved with all input channels")},
|
||||
{int(KernelDataType::Color),
|
||||
"COLOR",
|
||||
0,
|
||||
"Color",
|
||||
"The kernel is a color and each channel of the kernel will be convolved with each respective "
|
||||
"channel in the input"},
|
||||
N_("Color"),
|
||||
N_("The kernel is a color and each channel of the kernel will be convolved with each "
|
||||
"respective channel in the input")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -27,12 +27,16 @@
|
||||
namespace blender::nodes::node_composite_kuwahara_cc {
|
||||
|
||||
static const EnumPropertyItem type_items[] = {
|
||||
{CMP_NODE_KUWAHARA_CLASSIC, "CLASSIC", 0, "Classic", "Fast but less accurate variation"},
|
||||
{CMP_NODE_KUWAHARA_CLASSIC,
|
||||
"CLASSIC",
|
||||
0,
|
||||
N_("Classic"),
|
||||
N_("Fast but less accurate variation")},
|
||||
{CMP_NODE_KUWAHARA_ANISOTROPIC,
|
||||
"ANISOTROPIC",
|
||||
0,
|
||||
"Anisotropic",
|
||||
"Accurate but slower variation"},
|
||||
N_("Anisotropic"),
|
||||
N_("Accurate but slower variation")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -37,13 +37,13 @@ static const EnumPropertyItem type_items[] = {
|
||||
{CMP_NODE_LENS_DISTORTION_RADIAL,
|
||||
"RADIAL",
|
||||
0,
|
||||
"Radial",
|
||||
"Radially distorts the image to create a barrel or a Pincushion distortion"},
|
||||
N_("Radial"),
|
||||
N_("Radially distorts the image to create a barrel or a Pincushion distortion")},
|
||||
{CMP_NODE_LENS_DISTORTION_HORIZONTAL,
|
||||
"HORIZONTAL",
|
||||
0,
|
||||
"Horizontal",
|
||||
"Horizontally distorts the image to create a channel/color shifting effect"},
|
||||
N_("Horizontal"),
|
||||
N_("Horizontally distorts the image to create a channel/color shifting effect")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -23,11 +23,11 @@
|
||||
namespace blender::nodes::node_composite_levels_cc {
|
||||
|
||||
static const EnumPropertyItem channel_items[] = {
|
||||
{CMP_NODE_LEVLES_LUMINANCE, "COMBINED_RGB", 0, "Combined", "Combined RGB"},
|
||||
{CMP_NODE_LEVLES_RED, "RED", 0, "Red", "Red Channel"},
|
||||
{CMP_NODE_LEVLES_GREEN, "GREEN", 0, "Green", "Green Channel"},
|
||||
{CMP_NODE_LEVLES_BLUE, "BLUE", 0, "Blue", "Blue Channel"},
|
||||
{CMP_NODE_LEVLES_LUMINANCE_BT709, "LUMINANCE", 0, "Luminance", "Luminance Channel"},
|
||||
{CMP_NODE_LEVLES_LUMINANCE, "COMBINED_RGB", 0, N_("Combined"), N_("Combined RGB")},
|
||||
{CMP_NODE_LEVLES_RED, "RED", 0, N_("Red"), N_("Red Channel")},
|
||||
{CMP_NODE_LEVLES_GREEN, "GREEN", 0, N_("Green"), N_("Green Channel")},
|
||||
{CMP_NODE_LEVLES_BLUE, "BLUE", 0, N_("Blue"), N_("Blue Channel")},
|
||||
{CMP_NODE_LEVLES_LUMINANCE_BT709, "LUMINANCE", 0, N_("Luminance"), N_("Luminance Channel")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -23,12 +23,12 @@ namespace blender::nodes::node_composite_mask_cc {
|
||||
|
||||
static const EnumPropertyItem size_source_items[] = {
|
||||
{0, "SCENE", 0, "Scene Size", ""},
|
||||
{CMP_NODE_MASK_FLAG_SIZE_FIXED, "FIXED", 0, "Fixed", "Use pixel size for the buffer"},
|
||||
{CMP_NODE_MASK_FLAG_SIZE_FIXED, "FIXED", 0, N_("Fixed"), N_("Use pixel size for the buffer")},
|
||||
{CMP_NODE_MASK_FLAG_SIZE_FIXED_SCENE,
|
||||
"FIXED_SCENE",
|
||||
0,
|
||||
"Fixed/Scene",
|
||||
"Pixel size scaled by scene percentage"},
|
||||
N_("Fixed/Scene"),
|
||||
N_("Pixel size scaled by scene percentage")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -31,8 +31,8 @@
|
||||
namespace blender::nodes::node_composite_moviedistortion_cc {
|
||||
|
||||
static const EnumPropertyItem type_items[] = {
|
||||
{int(compositor::DistortionType::Distort), "UNDISTORT", 0, "Undistort", ""},
|
||||
{int(compositor::DistortionType::Undistort), "DISTORT", 0, "Distort", ""},
|
||||
{int(compositor::DistortionType::Distort), "UNDISTORT", 0, N_("Undistort"), ""},
|
||||
{int(compositor::DistortionType::Undistort), "DISTORT", 0, N_("Distort"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -22,13 +22,13 @@ static const EnumPropertyItem type_items[] = {
|
||||
{CMP_NODE_ALPHA_CONVERT_PREMULTIPLY,
|
||||
"STRAIGHT_TO_PREMULTIPLIED",
|
||||
0,
|
||||
"To Premultiplied",
|
||||
"Convert straight to premultiplied"},
|
||||
N_("To Premultiplied"),
|
||||
N_("Convert straight to premultiplied")},
|
||||
{CMP_NODE_ALPHA_CONVERT_UNPREMULTIPLY,
|
||||
"PREMULTIPLIED_TO_STRAIGHT",
|
||||
0,
|
||||
"To Straight",
|
||||
"Convert premultiplied to straight"},
|
||||
N_("To Straight"),
|
||||
N_("Convert premultiplied to straight")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -31,18 +31,18 @@
|
||||
namespace blender::nodes::node_composite_scale_cc {
|
||||
|
||||
static const EnumPropertyItem type_items[] = {
|
||||
{CMP_NODE_SCALE_RELATIVE, "RELATIVE", 0, "Relative", ""},
|
||||
{CMP_NODE_SCALE_ABSOLUTE, "ABSOLUTE", 0, "Absolute", ""},
|
||||
{CMP_NODE_SCALE_RENDER_PERCENT, "SCENE_SIZE", 0, "Scene Size", ""},
|
||||
{CMP_NODE_SCALE_RENDER_SIZE, "RENDER_SIZE", 0, "Render Size", ""},
|
||||
{CMP_NODE_SCALE_RELATIVE, "RELATIVE", 0, N_("Relative"), ""},
|
||||
{CMP_NODE_SCALE_ABSOLUTE, "ABSOLUTE", 0, N_("Absolute"), ""},
|
||||
{CMP_NODE_SCALE_RENDER_PERCENT, "SCENE_SIZE", 0, N_("Scene Size"), ""},
|
||||
{CMP_NODE_SCALE_RENDER_SIZE, "RENDER_SIZE", 0, N_("Render Size"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
/* Matches bgpic_camera_frame_items[]. */
|
||||
static const EnumPropertyItem frame_type_items[] = {
|
||||
{CMP_NODE_SCALE_RENDER_SIZE_STRETCH, "STRETCH", 0, "Stretch", ""},
|
||||
{CMP_NODE_SCALE_RENDER_SIZE_FIT, "FIT", 0, "Fit", ""},
|
||||
{CMP_NODE_SCALE_RENDER_SIZE_CROP, "CROP", 0, "Crop", ""},
|
||||
{CMP_NODE_SCALE_RENDER_SIZE_STRETCH, "STRETCH", 0, N_("Stretch"), ""},
|
||||
{CMP_NODE_SCALE_RENDER_SIZE_FIT, "FIT", 0, N_("Fit"), ""},
|
||||
{CMP_NODE_SCALE_RENDER_SIZE_CROP, "CROP", 0, N_("Crop"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -22,13 +22,13 @@ static const EnumPropertyItem type_items[] = {
|
||||
{CMP_NODE_SETALPHA_MODE_APPLY,
|
||||
"APPLY",
|
||||
0,
|
||||
"Apply Mask",
|
||||
"Multiply the input image's RGBA channels by the alpha input value"},
|
||||
N_("Apply Mask"),
|
||||
N_("Multiply the input image's RGBA channels by the alpha input value")},
|
||||
{CMP_NODE_SETALPHA_MODE_REPLACE_ALPHA,
|
||||
"REPLACE_ALPHA",
|
||||
0,
|
||||
"Replace Alpha",
|
||||
"Replace the input image's alpha channel by the alpha input value"},
|
||||
N_("Replace Alpha"),
|
||||
N_("Replace the input image's alpha channel by the alpha input value")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -28,13 +28,13 @@ static const EnumPropertyItem type_items[] = {
|
||||
{CMP_NODE_TONE_MAP_PHOTORECEPTOR,
|
||||
"RD_PHOTORECEPTOR",
|
||||
0,
|
||||
"R/D Photoreceptor",
|
||||
"More advanced algorithm based on eye physiology, by Reinhard and Devlin"},
|
||||
N_("R/D Photoreceptor"),
|
||||
N_("More advanced algorithm based on eye physiology, by Reinhard and Devlin")},
|
||||
{CMP_NODE_TONE_MAP_SIMPLE,
|
||||
"RH_SIMPLE",
|
||||
0,
|
||||
"Rh Simple",
|
||||
"Simpler photographic algorithm by Reinhard"},
|
||||
N_("Rh Simple"),
|
||||
N_("Simpler photographic algorithm by Reinhard")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -38,26 +38,26 @@ static const EnumPropertyItem mode_items[] = {
|
||||
{CMP_NODE_TRACK_POSITION_ABSOLUTE,
|
||||
"ABSOLUTE",
|
||||
0,
|
||||
"Absolute",
|
||||
"Returns the position and speed of the marker at the current scene frame relative to the "
|
||||
"zero origin of the tracking space"},
|
||||
N_("Absolute"),
|
||||
N_("Returns the position and speed of the marker at the current scene frame relative to the "
|
||||
"zero origin of the tracking space")},
|
||||
{CMP_NODE_TRACK_POSITION_RELATIVE_START,
|
||||
"RELATIVE_START",
|
||||
0,
|
||||
"Relative Start",
|
||||
"Returns the position and speed of the marker at the current scene frame relative to the "
|
||||
"position of the first non-disabled marker in the track"},
|
||||
N_("Relative Start"),
|
||||
N_("Returns the position and speed of the marker at the current scene frame relative to the "
|
||||
"position of the first non-disabled marker in the track")},
|
||||
{CMP_NODE_TRACK_POSITION_RELATIVE_FRAME,
|
||||
"RELATIVE_FRAME",
|
||||
0,
|
||||
"Relative Frame",
|
||||
"Returns the position and speed of the marker at the current scene frame relative to the "
|
||||
"position of the marker at the current scene frame plus the user given relative frame"},
|
||||
N_("Relative Frame"),
|
||||
N_("Returns the position and speed of the marker at the current scene frame relative to the "
|
||||
"position of the marker at the current scene frame plus the user given relative frame")},
|
||||
{CMP_NODE_TRACK_POSITION_ABSOLUTE_FRAME,
|
||||
"ABSOLUTE_FRAME",
|
||||
0,
|
||||
"Absolute Frame",
|
||||
"Returns the position and speed of the marker at the given absolute frame"},
|
||||
N_("Absolute Frame"),
|
||||
N_("Returns the position and speed of the marker at the given absolute frame")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -19,18 +19,18 @@ const EnumPropertyItem rna_enum_node_match_string_items[] = {
|
||||
{int(MatchStringOperation::StartsWith),
|
||||
"STARTS_WITH",
|
||||
0,
|
||||
"Starts With",
|
||||
"True when the first input starts with the second"},
|
||||
N_("Starts With"),
|
||||
N_("True when the first input starts with the second")},
|
||||
{int(MatchStringOperation::EndsWith),
|
||||
"ENDS_WITH",
|
||||
0,
|
||||
"Ends With",
|
||||
"True when the first input ends with the second"},
|
||||
N_("Ends With"),
|
||||
N_("True when the first input ends with the second")},
|
||||
{int(MatchStringOperation::Contains),
|
||||
"CONTAINS",
|
||||
0,
|
||||
"Contains",
|
||||
"True when the first input contains the second as a substring"},
|
||||
N_("Contains"),
|
||||
N_("True when the first input contains the second as a substring")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -23,8 +23,8 @@ namespace blender::nodes::node_geo_curve_fill_cc {
|
||||
NODE_STORAGE_FUNCS(NodeGeometryCurveFill)
|
||||
|
||||
static const EnumPropertyItem mode_items[] = {
|
||||
{GEO_NODE_CURVE_FILL_MODE_TRIANGULATED, "TRIANGLES", 0, "Triangles", ""},
|
||||
{GEO_NODE_CURVE_FILL_MODE_NGONS, "NGONS", 0, "N-gons", ""},
|
||||
{GEO_NODE_CURVE_FILL_MODE_TRIANGULATED, "TRIANGLES", 0, N_("Triangles"), ""},
|
||||
{GEO_NODE_CURVE_FILL_MODE_NGONS, "NGONS", 0, N_("N-gons"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -19,13 +19,13 @@ static EnumPropertyItem mode_items[] = {
|
||||
{GEO_NODE_CURVE_FILLET_BEZIER,
|
||||
"BEZIER",
|
||||
0,
|
||||
"Bézier",
|
||||
"Align Bézier handles to create circular arcs at each control point"},
|
||||
N_("Bézier"),
|
||||
N_("Align Bézier handles to create circular arcs at each control point")},
|
||||
{GEO_NODE_CURVE_FILLET_POLY,
|
||||
"POLY",
|
||||
0,
|
||||
"Poly",
|
||||
"Add control points along a circular arc (handle type is vector if Bézier Spline)"},
|
||||
N_("Poly"),
|
||||
N_("Add control points along a circular arc (handle type is vector if Bézier Spline)")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -23,20 +23,21 @@ static EnumPropertyItem mode_items[] = {
|
||||
{GEO_NODE_CURVE_RESAMPLE_EVALUATED,
|
||||
"EVALUATED",
|
||||
0,
|
||||
"Evaluated",
|
||||
"Output the input spline's evaluated points, based on the resolution attribute for NURBS "
|
||||
"and Bézier splines. Poly splines are unchanged"},
|
||||
N_("Evaluated"),
|
||||
N_("Output the input spline's evaluated points, based on the resolution attribute for NURBS "
|
||||
"and Bézier splines. Poly splines are unchanged")},
|
||||
{GEO_NODE_CURVE_RESAMPLE_COUNT,
|
||||
"COUNT",
|
||||
0,
|
||||
"Count",
|
||||
"Sample the specified number of points along each spline"},
|
||||
N_("Count"),
|
||||
N_("Sample the specified number of points along each spline")},
|
||||
{GEO_NODE_CURVE_RESAMPLE_LENGTH,
|
||||
"LENGTH",
|
||||
0,
|
||||
"Length",
|
||||
"Calculate the number of samples by splitting each spline into segments with the specified "
|
||||
"length"},
|
||||
N_("Length"),
|
||||
N_("Calculate the number of samples by splitting each spline into segments with the "
|
||||
"specified "
|
||||
"length")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -30,13 +30,13 @@ static const EnumPropertyItem mode_items[] = {
|
||||
{GEO_NODE_DISTRIBUTE_POINTS_IN_VOLUME_DENSITY_RANDOM,
|
||||
"DENSITY_RANDOM",
|
||||
0,
|
||||
"Random",
|
||||
"Distribute points randomly inside of the volume"},
|
||||
N_("Random"),
|
||||
N_("Distribute points randomly inside of the volume")},
|
||||
{GEO_NODE_DISTRIBUTE_POINTS_IN_VOLUME_DENSITY_GRID,
|
||||
"DENSITY_GRID",
|
||||
0,
|
||||
"Grid",
|
||||
"Distribute the points in a grid pattern inside of the volume"},
|
||||
N_("Grid"),
|
||||
N_("Distribute the points in a grid pattern inside of the volume")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -43,20 +43,21 @@ static void node_declare(NodeDeclarationBuilder &b)
|
||||
{int(Mode::Inactive),
|
||||
"INACTIVE",
|
||||
0,
|
||||
"Inactive",
|
||||
"Turn inactive voxels and tiles into inactive background tiles"},
|
||||
N_("Inactive"),
|
||||
N_("Turn inactive voxels and tiles into inactive background tiles")},
|
||||
{int(Mode::Threshold),
|
||||
"THRESHOLD",
|
||||
0,
|
||||
"Threshold",
|
||||
"Turn regions where all voxels have the same value and active state (within a tolerance "
|
||||
"threshold) into inactive background tiles"},
|
||||
N_("Threshold"),
|
||||
N_("Turn regions where all voxels have the same value and active state (within a tolerance "
|
||||
"threshold) into inactive background tiles")},
|
||||
{int(Mode::SDF),
|
||||
"SDF",
|
||||
0,
|
||||
"SDF",
|
||||
"Replace inactive tiles with inactive nodes. Faster than tolerance-based pruning, useful "
|
||||
"for cases like narrow-band SDF grids with only inside or outside background values."},
|
||||
N_("SDF"),
|
||||
N_("Replace inactive tiles with inactive nodes. Faster than tolerance-based pruning, "
|
||||
"useful for cases like narrow-band SDF grids with only inside or outside background "
|
||||
"values.")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
b.add_input<decl::Menu>("Mode")
|
||||
|
||||
@@ -19,13 +19,13 @@ static EnumPropertyItem mode_items[] = {
|
||||
{GEO_NODE_MERGE_BY_DISTANCE_MODE_ALL,
|
||||
"ALL",
|
||||
0,
|
||||
"All",
|
||||
"Merge all close selected points, whether or not they are connected"},
|
||||
N_("All"),
|
||||
N_("Merge all close selected points, whether or not they are connected")},
|
||||
{GEO_NODE_MERGE_BY_DISTANCE_MODE_CONNECTED,
|
||||
"CONNECTED",
|
||||
0,
|
||||
"Connected",
|
||||
"Only merge mesh vertices along existing edges. This method can be much faster"},
|
||||
N_("Connected"),
|
||||
N_("Only merge mesh vertices along existing edges. This method can be much faster")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -25,13 +25,13 @@ static EnumPropertyItem resolution_mode_items[] = {
|
||||
{MESH_TO_VOLUME_RESOLUTION_MODE_VOXEL_AMOUNT,
|
||||
"VOXEL_AMOUNT",
|
||||
0,
|
||||
"Amount",
|
||||
"Desired number of voxels along one axis"},
|
||||
N_("Amount"),
|
||||
N_("Desired number of voxels along one axis")},
|
||||
{MESH_TO_VOLUME_RESOLUTION_MODE_VOXEL_SIZE,
|
||||
"VOXEL_SIZE",
|
||||
0,
|
||||
"Size",
|
||||
"Desired voxel side length"},
|
||||
N_("Size"),
|
||||
N_("Desired voxel side length")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -128,13 +128,13 @@ static EnumPropertyItem resolution_mode_items[] = {
|
||||
{GEO_NODE_POINTS_TO_VOLUME_RESOLUTION_MODE_AMOUNT,
|
||||
"VOXEL_AMOUNT",
|
||||
0,
|
||||
"Amount",
|
||||
"Specify the approximate number of voxels along the diagonal"},
|
||||
N_("Amount"),
|
||||
N_("Specify the approximate number of voxels along the diagonal")},
|
||||
{GEO_NODE_POINTS_TO_VOLUME_RESOLUTION_MODE_SIZE,
|
||||
"VOXEL_SIZE",
|
||||
0,
|
||||
"Size",
|
||||
"Specify the voxel side length"},
|
||||
N_("Size"),
|
||||
N_("Specify the voxel side length")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -29,13 +29,13 @@ static EnumPropertyItem interpolation_items[] = {
|
||||
{GEO_NODE_RAYCAST_INTERPOLATED,
|
||||
"INTERPOLATED",
|
||||
0,
|
||||
"Interpolated",
|
||||
"Interpolate the attribute from the corners of the hit face"},
|
||||
N_("Interpolated"),
|
||||
N_("Interpolate the attribute from the corners of the hit face")},
|
||||
{GEO_NODE_RAYCAST_NEAREST,
|
||||
"NEAREST",
|
||||
0,
|
||||
"Nearest",
|
||||
"Use the attribute value of the closest mesh element"},
|
||||
N_("Nearest"),
|
||||
N_("Use the attribute value of the closest mesh element")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -15,13 +15,17 @@ enum class PatternMode {
|
||||
};
|
||||
|
||||
static const EnumPropertyItem pattern_mode_items[] = {
|
||||
{int(PatternMode::Exact), "EXACT", 0, "Exact", "Remove the one attribute with the given name"},
|
||||
{int(PatternMode::Exact),
|
||||
"EXACT",
|
||||
0,
|
||||
N_("Exact"),
|
||||
N_("Remove the one attribute with the given name")},
|
||||
{int(PatternMode::Wildcard),
|
||||
"WILDCARD",
|
||||
0,
|
||||
"Wildcard",
|
||||
"Remove all attributes that match the pattern which is allowed to contain a single "
|
||||
"wildcard (*)"},
|
||||
N_("Wildcard"),
|
||||
N_("Remove all attributes that match the pattern which is allowed to contain a single "
|
||||
"wildcard (*)")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -30,9 +30,9 @@ enum class InterpolationMode {
|
||||
};
|
||||
|
||||
static const EnumPropertyItem interpolation_mode_items[] = {
|
||||
{int(InterpolationMode::Nearest), "NEAREST", 0, "Nearest Neighbor", ""},
|
||||
{int(InterpolationMode::TriLinear), "TRILINEAR", 0, "Trilinear", ""},
|
||||
{int(InterpolationMode::TriQuadratic), "TRIQUADRATIC", 0, "Triquadratic", ""},
|
||||
{int(InterpolationMode::Nearest), "NEAREST", 0, N_("Nearest Neighbor"), ""},
|
||||
{int(InterpolationMode::TriLinear), "TRILINEAR", 0, N_("Trilinear"), ""},
|
||||
{int(InterpolationMode::TriQuadratic), "TRIQUADRATIC", 0, N_("Triquadratic"), ""},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -30,13 +30,13 @@ static const EnumPropertyItem scale_mode_items[] = {
|
||||
{GEO_NODE_SCALE_ELEMENTS_UNIFORM,
|
||||
"UNIFORM",
|
||||
ICON_NONE,
|
||||
"Uniform",
|
||||
"Scale elements by the same factor in every direction"},
|
||||
N_("Uniform"),
|
||||
N_("Scale elements by the same factor in every direction")},
|
||||
{GEO_NODE_SCALE_ELEMENTS_SINGLE_AXIS,
|
||||
"SINGLE_AXIS",
|
||||
ICON_NONE,
|
||||
"Single Axis",
|
||||
"Scale elements in a single direction"},
|
||||
N_("Single Axis"),
|
||||
N_("Scale elements in a single direction")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -16,9 +16,9 @@ static EnumPropertyItem mode_items[] = {
|
||||
{GEO_NODE_TRANSFORM_MODE_COMPONENTS,
|
||||
"COMPONENTS",
|
||||
0,
|
||||
"Components",
|
||||
"Provide separate location, rotation and scale"},
|
||||
{GEO_NODE_TRANSFORM_MODE_MATRIX, "MATRIX", 0, "Matrix", "Use a transformation matrix"},
|
||||
N_("Components"),
|
||||
N_("Provide separate location, rotation and scale")},
|
||||
{GEO_NODE_TRANSFORM_MODE_MATRIX, "MATRIX", 0, N_("Matrix"), N_("Use a transformation matrix")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -16,28 +16,28 @@ static const EnumPropertyItem rna_node_geometry_triangulate_quad_method_items[]
|
||||
{int(geometry::TriangulateQuadMode::Beauty),
|
||||
"BEAUTY",
|
||||
0,
|
||||
"Beauty",
|
||||
"Split the quads in nice triangles, slower method"},
|
||||
N_("Beauty"),
|
||||
N_("Split the quads in nice triangles, slower method")},
|
||||
{int(geometry::TriangulateQuadMode::Fixed),
|
||||
"FIXED",
|
||||
0,
|
||||
"Fixed",
|
||||
"Split the quads on the first and third vertices"},
|
||||
N_("Fixed"),
|
||||
N_("Split the quads on the first and third vertices")},
|
||||
{int(geometry::TriangulateQuadMode::Alternate),
|
||||
"FIXED_ALTERNATE",
|
||||
0,
|
||||
"Fixed Alternate",
|
||||
"Split the quads on the 2nd and 4th vertices"},
|
||||
N_("Fixed Alternate"),
|
||||
N_("Split the quads on the 2nd and 4th vertices")},
|
||||
{int(geometry::TriangulateQuadMode::ShortEdge),
|
||||
"SHORTEST_DIAGONAL",
|
||||
0,
|
||||
"Shortest Diagonal",
|
||||
"Split the quads along their shortest diagonal"},
|
||||
N_("Shortest Diagonal"),
|
||||
N_("Split the quads along their shortest diagonal")},
|
||||
{int(geometry::TriangulateQuadMode::LongEdge),
|
||||
"LONGEST_DIAGONAL",
|
||||
0,
|
||||
"Longest Diagonal",
|
||||
"Split the quads along their longest diagonal"},
|
||||
N_("Longest Diagonal"),
|
||||
N_("Split the quads along their longest diagonal")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
@@ -45,13 +45,13 @@ static const EnumPropertyItem rna_node_geometry_triangulate_ngon_method_items[]
|
||||
{int(geometry::TriangulateNGonMode::Beauty),
|
||||
"BEAUTY",
|
||||
0,
|
||||
"Beauty",
|
||||
"Arrange the new triangles evenly (slow)"},
|
||||
N_("Beauty"),
|
||||
N_("Arrange the new triangles evenly (slow)")},
|
||||
{int(geometry::TriangulateNGonMode::EarClip),
|
||||
"CLIP",
|
||||
0,
|
||||
"Clip",
|
||||
"Split the polygons with an ear clipping algorithm"},
|
||||
N_("Clip"),
|
||||
N_("Split the polygons with an ear clipping algorithm")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -22,18 +22,18 @@ static const EnumPropertyItem shape_method_items[] = {
|
||||
{int(ShapeMethod::Aabb),
|
||||
"AABB",
|
||||
0,
|
||||
"Bounding Box",
|
||||
"Use axis-aligned bounding boxes for packing (fastest, least space efficient)"},
|
||||
N_("Bounding Box"),
|
||||
N_("Use axis-aligned bounding boxes for packing (fastest, least space efficient)")},
|
||||
{int(ShapeMethod::Convex),
|
||||
"CONVEX",
|
||||
0,
|
||||
"Convex Hull",
|
||||
"Use convex hull approximation of islands (good balance of speed and space efficiency)"},
|
||||
N_("Convex Hull"),
|
||||
N_("Use convex hull approximation of islands (good balance of speed and space efficiency)")},
|
||||
{int(ShapeMethod::Concave),
|
||||
"CONCAVE",
|
||||
0,
|
||||
"Exact Shape",
|
||||
"Use exact geometry for most efficient packing (slowest)"},
|
||||
N_("Exact Shape"),
|
||||
N_("Use exact geometry for most efficient packing (slowest)")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -20,16 +20,16 @@ static EnumPropertyItem method_items[] = {
|
||||
{int(Method::Exact),
|
||||
"EXACT",
|
||||
0,
|
||||
"Exact",
|
||||
"Calculation using the MikkTSpace library, consistent with tangents used elsewhere in "
|
||||
"Blender"},
|
||||
N_("Exact"),
|
||||
N_("Calculation using the MikkTSpace library, consistent with tangents used elsewhere in "
|
||||
"Blender")},
|
||||
{int(Method::Fast),
|
||||
"FAST",
|
||||
0,
|
||||
"Fast",
|
||||
"Significantly faster method that approximates tangents interpolated across face corners "
|
||||
"with matching UVs. For a value actually tangential to the surface, use the cross product "
|
||||
"with the normal."},
|
||||
N_("Fast"),
|
||||
N_("Significantly faster method that approximates tangents interpolated across face corners "
|
||||
"with matching UVs. For a value actually tangential to the surface, use the cross product "
|
||||
"with the normal.")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -17,14 +17,14 @@ static EnumPropertyItem method_items[] = {
|
||||
{GEO_NODE_UV_UNWRAP_METHOD_ANGLE_BASED,
|
||||
"ANGLE_BASED",
|
||||
0,
|
||||
"Angle Based",
|
||||
"This method gives a good 2D representation of a mesh"},
|
||||
N_("Angle Based"),
|
||||
N_("This method gives a good 2D representation of a mesh")},
|
||||
{GEO_NODE_UV_UNWRAP_METHOD_CONFORMAL,
|
||||
"CONFORMAL",
|
||||
0,
|
||||
"Conformal",
|
||||
"Uses LSCM (Least Squares Conformal Mapping). This usually gives a less accurate UV "
|
||||
"mapping than Angle Based, but works better for simpler objects"},
|
||||
N_("Conformal"),
|
||||
N_("Uses LSCM (Least Squares Conformal Mapping). This usually gives a less accurate UV "
|
||||
"mapping than Angle Based, but works better for simpler objects")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
@@ -27,13 +27,13 @@ static EnumPropertyItem resolution_mode_items[] = {
|
||||
{VOLUME_TO_MESH_RESOLUTION_MODE_VOXEL_AMOUNT,
|
||||
"VOXEL_AMOUNT",
|
||||
0,
|
||||
"Amount",
|
||||
"Desired number of voxels along one axis"},
|
||||
N_("Amount"),
|
||||
N_("Desired number of voxels along one axis")},
|
||||
{VOLUME_TO_MESH_RESOLUTION_MODE_VOXEL_SIZE,
|
||||
"VOXEL_SIZE",
|
||||
0,
|
||||
"Size",
|
||||
"Desired voxel side length"},
|
||||
N_("Size"),
|
||||
N_("Desired voxel side length")},
|
||||
{0, nullptr, 0, nullptr, nullptr},
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user