"Own" (the adjective) cannot be used on its own. It should be combined with something like "its own", "our own", "her own", or "the object's own". It also isn't used separately to mean something like "separate". Also, "its own" is correct instead of "it's own" which is a misues of the verb.
418 lines
9.4 KiB
C
418 lines
9.4 KiB
C
/* SPDX-FileCopyrightText: 2023 Blender Authors
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
|
|
/** \file
|
|
* \ingroup DNA
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
/* Note that some struct members for color-mapping and color-bands are not initialized here. */
|
|
|
|
/* clang-format off */
|
|
|
|
#define _DNA_DEFAULT_ArmatureGpencilModifierData \
|
|
{ \
|
|
.deformflag = ARM_DEF_VGROUP, \
|
|
.multi = 0, \
|
|
.object = NULL, \
|
|
.vert_coords_prev = NULL, \
|
|
.vgname = "", \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_ArrayGpencilModifierData \
|
|
{ \
|
|
.object = NULL, \
|
|
.material = NULL, \
|
|
.count = 2, \
|
|
.flag = GP_ARRAY_USE_RELATIVE, \
|
|
.offset = {0.0f, 0.0f, 0.0f}, \
|
|
.shift = {1.0f, 0.0f, 0.0f}, \
|
|
.rnd_offset = {0.0f, 0.0f, 0.0f}, \
|
|
.rnd_rot = {0.0f, 0.0f, 0.0f}, \
|
|
.rnd_scale = {0.0f, 0.0f, 0.0f}, \
|
|
.seed = 1, \
|
|
.pass_index = 0, \
|
|
.layername = "", \
|
|
.mat_rpl = 0, \
|
|
.layer_pass = 0, \
|
|
}
|
|
|
|
/* Deliberately set this range to the half the default frame-range
|
|
* to have an immediate effect to suggest use-cases. */
|
|
#define _DNA_DEFAULT_BuildGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.pass_index = 0, \
|
|
.layer_pass = 0, \
|
|
.start_frame = 1, \
|
|
.end_frame = 125, \
|
|
.start_delay = 0.0f, \
|
|
.length = 100.0f, \
|
|
.flag = 0, \
|
|
.mode = 0, \
|
|
.transition = 0, \
|
|
.time_alignment = 0, \
|
|
.time_mode = 0, \
|
|
.speed_fac = 1.2f, \
|
|
.speed_maxgap = 0.5f, \
|
|
.percentage_fac = 0.0f, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_ColorGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.hsv = {0.5f, 1.0f, 1.0f}, \
|
|
.modify_color = GP_MODIFY_COLOR_BOTH, \
|
|
.layer_pass = 0, \
|
|
.curve_intensity = NULL, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_HookGpencilModifierData \
|
|
{ \
|
|
.object = NULL, \
|
|
.material = NULL, \
|
|
.subtarget = "", \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.layer_pass = 0, \
|
|
.flag = 0, \
|
|
.falloff_type = eGPHook_Falloff_Smooth, \
|
|
.parentinv = _DNA_DEFAULT_UNIT_M4, \
|
|
.cent = {0.0f, 0.0f, 0.0f}, \
|
|
.falloff = 0.0f, \
|
|
.force = 0.5f, \
|
|
.curfalloff = NULL, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_LatticeGpencilModifierData \
|
|
{ \
|
|
.object = NULL, \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.strength = 1.0f, \
|
|
.layer_pass = 0, \
|
|
.cache_data = NULL, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_MirrorGpencilModifierData \
|
|
{ \
|
|
.object = NULL, \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.pass_index = 0, \
|
|
.flag = GP_MIRROR_AXIS_X, \
|
|
.layer_pass = 0, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_MultiplyGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.layer_pass = 0, \
|
|
.flags = 0, \
|
|
.duplications = 3, \
|
|
.distance = 0.1f, \
|
|
.offset = 0.0f, \
|
|
.fading_center = 0.5f, \
|
|
.fading_thickness = 0.5f, \
|
|
.fading_opacity = 0.5f, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_NoiseGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.flag = GP_NOISE_FULL_STROKE | GP_NOISE_USE_RANDOM, \
|
|
.factor = 0.5f, \
|
|
.factor_strength = 0.0f, \
|
|
.factor_thickness = 0.0f, \
|
|
.factor_uvs = 0.0f, \
|
|
.noise_scale = 0.0f, \
|
|
.noise_offset = 0.0f, \
|
|
.step = 4, \
|
|
.layer_pass = 0, \
|
|
.seed = 1, \
|
|
.curve_intensity = NULL, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_OffsetGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.stroke_step = 1, \
|
|
.mode = GP_OFFSET_RANDOM, \
|
|
.stroke_start_offset = 0, \
|
|
.loc = {0.0f, 0.0f, 0.0f}, \
|
|
.rot = {0.0f, 0.0f, 0.0f}, \
|
|
.scale = {0.0f, 0.0f, 0.0f}, \
|
|
.layer_pass = 0, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_OpacityGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.factor = 1.0f, \
|
|
.modify_color = GP_MODIFY_COLOR_BOTH, \
|
|
.layer_pass = 0, \
|
|
.hardness = 1.0f, \
|
|
.curve_intensity = NULL, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_OutlineGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.pass_index = 0, \
|
|
.flag = GP_OUTLINE_KEEP_SHAPE, \
|
|
.thickness = 1, \
|
|
.sample_length = 0.0f, \
|
|
.subdiv = 3, \
|
|
.layer_pass = 0, \
|
|
.outline_material = NULL, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_SimplifyGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.factor = 0.0f, \
|
|
.mode = 0, \
|
|
.step = 1, \
|
|
.layer_pass = 0, \
|
|
.length = 0.1f, \
|
|
.distance = 0.1f, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_SmoothGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.flag = GP_SMOOTH_MOD_LOCATION, \
|
|
.factor = 1.0f, \
|
|
.step = 1, \
|
|
.layer_pass = 0, \
|
|
.curve_intensity = NULL, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_SubdivGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.level = 1, \
|
|
.layer_pass = 0, \
|
|
.type = 0, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_TextureGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.uv_offset = 0.0f, \
|
|
.uv_scale = 1.0f, \
|
|
.fill_rotation = 0.0f, \
|
|
.fill_offset = {0.0f, 0.0f}, \
|
|
.fill_scale = 1.0f, \
|
|
.layer_pass = 0, \
|
|
.fit_method = GP_TEX_CONSTANT_LENGTH, \
|
|
.mode = 0, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_ThickGpencilModifierData \
|
|
{ \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.thickness_fac = 1.0f, \
|
|
.thickness = 30, \
|
|
.layer_pass = 0, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_TimeGpencilModifierData \
|
|
{ \
|
|
.layername = "", \
|
|
.layer_pass = 0, \
|
|
.flag = GP_TIME_KEEP_LOOP, \
|
|
.offset = 1, \
|
|
.frame_scale = 1.0f, \
|
|
.mode = 0, \
|
|
.sfra = 1, \
|
|
.efra = 250, \
|
|
.segments = NULL, \
|
|
.segments_len = 1, \
|
|
.segment_active_index = 0, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_TimeGpencilModifierSegment \
|
|
{ \
|
|
.name = "", \
|
|
.seg_start = 1, \
|
|
.seg_end = 2, \
|
|
.seg_mode = 0, \
|
|
.seg_repeat = 1, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_TintGpencilModifierData \
|
|
{ \
|
|
.object = NULL, \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.layer_pass = 0, \
|
|
.flag = 0, \
|
|
.mode = GPPAINT_MODE_BOTH, \
|
|
.factor = 0.5f, \
|
|
.radius = 1.0f, \
|
|
.rgb = {1.0f, 1.0f, 1.0f}, \
|
|
.type = 0, \
|
|
.curve_intensity = NULL, \
|
|
.colorband = NULL, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_WeightProxGpencilModifierData \
|
|
{ \
|
|
.target_vgname = "", \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.layer_pass = 0, \
|
|
.dist_start = 0.0f, \
|
|
.dist_end = 20.0f, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_WeightAngleGpencilModifierData \
|
|
{ \
|
|
.target_vgname = "", \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.axis = 1, \
|
|
.layer_pass = 0, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_LineartGpencilModifierData \
|
|
{ \
|
|
.edge_types = MOD_LINEART_EDGE_FLAG_INIT_TYPE, \
|
|
.thickness = 25, \
|
|
.opacity = 1.0f, \
|
|
.crease_threshold = DEG2RAD(140.0f), \
|
|
.calculation_flags = MOD_LINEART_ALLOW_DUPLI_OBJECTS | MOD_LINEART_ALLOW_CLIPPING_BOUNDARIES | \
|
|
MOD_LINEART_USE_CREASE_ON_SHARP_EDGES | MOD_LINEART_FILTER_FACE_MARK_KEEP_CONTOUR | \
|
|
MOD_LINEART_MATCH_OUTPUT_VGROUP, \
|
|
/* Do not split by default, this is for better chaining quality. */ \
|
|
.angle_splitting_threshold = 0.0f, \
|
|
.chaining_image_threshold = 0.001f, \
|
|
.stroke_depth_offset = 0.05,\
|
|
.chain_smooth_tolerance = 0.0f,\
|
|
.overscan = 0.1f,\
|
|
.shadow_camera_near = 0.1f, \
|
|
.shadow_camera_far = 200.0f, \
|
|
.shadow_camera_size = 200.0f, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_LengthGpencilModifierData \
|
|
{ \
|
|
.start_fac = 0.1f,\
|
|
.end_fac = 0.1f,\
|
|
.overshoot_fac = 0.1f,\
|
|
.pass_index = 0,\
|
|
.material = NULL,\
|
|
.flag = GP_LENGTH_USE_CURVATURE,\
|
|
.point_density = 30.0f,\
|
|
.segment_influence = 0.0f,\
|
|
.max_angle = DEG2RAD(170.0f),\
|
|
.rand_start_fac = 0.0f,\
|
|
.rand_end_fac = 0.0f,\
|
|
.rand_offset = 0.0f,\
|
|
.seed = 0,\
|
|
.step = 4,\
|
|
}
|
|
|
|
#define _DNA_DEFAULT_DashGpencilModifierData \
|
|
{ \
|
|
.dash_offset = 0, \
|
|
.segments = NULL, \
|
|
.segments_len = 1, \
|
|
.segment_active_index = 0, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_DashGpencilModifierSegment \
|
|
{ \
|
|
.name = "", \
|
|
.dash = 2, \
|
|
.gap = 1, \
|
|
.radius = 1.0f, \
|
|
.opacity = 1.0f, \
|
|
.mat_nr = -1, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_ShrinkwrapGpencilModifierData \
|
|
{ \
|
|
.target = NULL, \
|
|
.aux_target = NULL, \
|
|
.keep_dist = 0.05f, \
|
|
.shrink_type = MOD_SHRINKWRAP_NEAREST_SURFACE, \
|
|
.shrink_opts = MOD_SHRINKWRAP_PROJECT_ALLOW_POS_DIR, \
|
|
.shrink_mode = 0, \
|
|
.proj_limit = 0.0f, \
|
|
.proj_axis = 0, \
|
|
.subsurf_levels = 0, \
|
|
.material = NULL, \
|
|
.layername = "", \
|
|
.vgname = "", \
|
|
.pass_index = 0, \
|
|
.flag = 0, \
|
|
.layer_pass = 0, \
|
|
.smooth_factor = 0.05f, \
|
|
.smooth_step = 1, \
|
|
}
|
|
|
|
#define _DNA_DEFAULT_EnvelopeGpencilModifierData \
|
|
{ \
|
|
.spread = 10, \
|
|
.mode = GP_ENVELOPE_SEGMENTS, \
|
|
.mat_nr = -1, \
|
|
.thickness = 1.0f, \
|
|
.strength = 1.0f, \
|
|
.skip = 0, \
|
|
}
|
|
|
|
|
|
/* clang-format off */
|