From 8e5609665fefb004ce2e759a49e063479cf01b3d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20Foucault?= Date: Tue, 13 Jun 2017 15:56:04 +0200 Subject: Probe: Add grid probe parameters. --- source/blender/makesdna/DNA_lightprobe_types.h | 6 ++++++ source/blender/makesrna/intern/rna_lightprobe.c | 19 ++++++++++++++++++- 2 files changed, 24 insertions(+), 1 deletion(-) (limited to 'source') diff --git a/source/blender/makesdna/DNA_lightprobe_types.h b/source/blender/makesdna/DNA_lightprobe_types.h index 559b02f5497..b66ea443570 100644 --- a/source/blender/makesdna/DNA_lightprobe_types.h +++ b/source/blender/makesdna/DNA_lightprobe_types.h @@ -54,6 +54,11 @@ typedef struct LightProbe { float clipsta, clipend; + int grid_resolution_x; /* Irradiance grid resolution */ + int grid_resolution_y; + int grid_resolution_z; + int pad1; + struct Object *parallax_ob; /* Object to use as a parallax origin */ struct Image *image; /* Image to use on as lighting data */ @@ -67,6 +72,7 @@ enum { LIGHTPROBE_TYPE_CUBE = 0, LIGHTPROBE_TYPE_PLANAR = 1, LIGHTPROBE_TYPE_IMAGE = 2, + LIGHTPROBE_TYPE_GRID = 3, }; /* Probe->flag */ diff --git a/source/blender/makesrna/intern/rna_lightprobe.c b/source/blender/makesrna/intern/rna_lightprobe.c index 6b9751f293a..fc1c05d8ad1 100644 --- a/source/blender/makesrna/intern/rna_lightprobe.c +++ b/source/blender/makesrna/intern/rna_lightprobe.c @@ -63,9 +63,10 @@ static EnumPropertyItem parallax_type_items[] = { }; static EnumPropertyItem lightprobe_type_items[] = { - {LIGHTPROBE_TYPE_CUBE, "CUBEMAP", ICON_NONE, "Cubemap", ""}, + {LIGHTPROBE_TYPE_CUBE, "CUBEMAP", ICON_NONE, "Cubemap", "Capture reflections"}, // {LIGHTPROBE_TYPE_PLANAR, "PLANAR", ICON_NONE, "Planar", ""}, // {LIGHTPROBE_TYPE_IMAGE, "IMAGE", ICON_NONE, "Image", ""}, + {LIGHTPROBE_TYPE_GRID, "GRID", ICON_NONE, "Grid", "Volume used for precomputing indirect lighting"}, {0, NULL, 0, NULL, NULL} }; @@ -145,6 +146,22 @@ static void rna_def_lightprobe(BlenderRNA *brna) RNA_def_property_ui_text(prop, "Parallax Radius", "Lowest corner of the parallax bounding box"); RNA_def_property_update(prop, NC_MATERIAL | ND_SHADING, NULL); + /* irradiance grid */ + prop = RNA_def_property(srna, "grid_resolution_x", PROP_INT, PROP_PIXEL); + RNA_def_property_range(prop, 1, 256); + RNA_def_property_ui_text(prop, "Resolution X", "Number of sample along the x axis of the volume"); + RNA_def_property_update(prop, NC_MATERIAL | ND_SHADING, NULL); + + prop = RNA_def_property(srna, "grid_resolution_y", PROP_INT, PROP_PIXEL); + RNA_def_property_range(prop, 1, 256); + RNA_def_property_ui_text(prop, "Resolution Y", "Number of sample along the y axis of the volume"); + RNA_def_property_update(prop, NC_MATERIAL | ND_SHADING, NULL); + + prop = RNA_def_property(srna, "grid_resolution_z", PROP_INT, PROP_PIXEL); + RNA_def_property_range(prop, 1, 256); + RNA_def_property_ui_text(prop, "Resolution Z", "Number of sample along the z axis of the volume"); + RNA_def_property_update(prop, NC_MATERIAL | ND_SHADING, NULL); + /* common */ rna_def_animdata_common(srna); } -- cgit v1.2.3