Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLukas Stockner <lukas.stockner@freenet.de>2017-01-19 01:53:24 +0300
committerLukas Stockner <lukas.stockner@freenet.de>2017-01-20 07:46:32 +0300
commit1049ea8476dc3644989caa078f3d64bf67c1efee (patch)
tree485141429ec09157a1a1b51da9e92c80d02703a0 /source/blender/makesdna
parentca6d583008ffb5f0d23ab66a324f5ad5311da951 (diff)
Cycles/Render API: Get rid of Render Pass flags and port Denoising passes to the new system
This also means that the temporary uint64_t passflag hack is removed now.
Diffstat (limited to 'source/blender/makesdna')
-rw-r--r--source/blender/makesdna/DNA_node_types.h9
-rw-r--r--source/blender/makesdna/DNA_scene_types.h53
2 files changed, 42 insertions, 20 deletions
diff --git a/source/blender/makesdna/DNA_node_types.h b/source/blender/makesdna/DNA_node_types.h
index 3a7e2b6f7f8..03794bdc9d5 100644
--- a/source/blender/makesdna/DNA_node_types.h
+++ b/source/blender/makesdna/DNA_node_types.h
@@ -159,7 +159,8 @@ typedef enum eNodeSocketFlag {
SOCK_COLLAPSED = 64, /* socket collapsed in UI */
SOCK_HIDE_VALUE = 128, /* hide socket value, if it gets auto default */
SOCK_AUTO_HIDDEN__DEPRECATED = 256, /* socket hidden automatically, to distinguish from manually hidden */
- SOCK_NO_INTERNAL_LINK = 512
+ SOCK_NO_INTERNAL_LINK = 512,
+ SOCK_VIRTUAL = 1024 /* socket behaves like SOCK_UNAVAIL, but is drawn with dashed links */
} eNodeSocketFlag;
/* limit data in bNode to what we want to see saved? */
@@ -569,9 +570,9 @@ typedef struct NodeEllipseMask {
/* layer info for image node outputs */
typedef struct NodeImageLayer {
/* index in the Image->layers->passes lists */
- int pass_index;
- /* render pass flag, in case this is an original render pass */
- int pass_flag;
+ int pass_index DNA_DEPRECATED;
+ /* render pass name */
+ char pass_name[64]; /* amount defined in openexr_multi.h */
} NodeImageLayer;
typedef struct NodeBlurData {
diff --git a/source/blender/makesdna/DNA_scene_types.h b/source/blender/makesdna/DNA_scene_types.h
index 88a3e5247a4..85da31667d5 100644
--- a/source/blender/makesdna/DNA_scene_types.h
+++ b/source/blender/makesdna/DNA_scene_types.h
@@ -234,7 +234,9 @@ typedef struct SceneRenderLayer {
int samples;
float pass_alpha_threshold;
-
+
+ IDProperty *prop;
+
struct FreestyleConfig freestyleConfig;
} SceneRenderLayer;
@@ -303,23 +305,42 @@ typedef enum ScenePassType {
SCE_PASS_SUBSURFACE_DIRECT = (1 << 28),
SCE_PASS_SUBSURFACE_INDIRECT = (1 << 29),
SCE_PASS_SUBSURFACE_COLOR = (1 << 30),
- SCE_PASS_DEBUG = (1 << 31), /* This is a virtual pass. */
} ScenePassType;
-/* MSVC doesn't like 64-bit enum values. */
-#define SCE_PASS_DENOISE_NORMAL (((uint64_t) 1) << 32)
-#define SCE_PASS_DENOISE_NORMAL_VAR (((uint64_t) 1) << 33)
-#define SCE_PASS_DENOISE_ALBEDO (((uint64_t) 1) << 34)
-#define SCE_PASS_DENOISE_ALBEDO_VAR (((uint64_t) 1) << 35)
-#define SCE_PASS_DENOISE_DEPTH (((uint64_t) 1) << 36)
-#define SCE_PASS_DENOISE_DEPTH_VAR (((uint64_t) 1) << 37)
-#define SCE_PASS_DENOISE_SHADOW_A (((uint64_t) 1) << 38)
-#define SCE_PASS_DENOISE_SHADOW_B (((uint64_t) 1) << 39)
-#define SCE_PASS_DENOISE_NOISY (((uint64_t) 1) << 40) /* The original noisy image (only the components that are denoised). */
-#define SCE_PASS_DENOISE_NOISY_VAR (((uint64_t) 1) << 41)
-#define SCE_PASS_DENOISE_CLEAN (((uint64_t) 1) << 42) /* If present, these image components are added to the denoised image. */
-#define SCE_PASS_DENOISE_NOISY_B (((uint64_t) 1) << 43)
-#define SCE_PASS_DENOISE_NOISY_B_VAR (((uint64_t) 1) << 44)
+#define RE_PASSNAME_COMBINED "Combined"
+#define RE_PASSNAME_Z "Depth"
+#define RE_PASSNAME_VECTOR "Vector"
+#define RE_PASSNAME_NORMAL "Normal"
+#define RE_PASSNAME_UV "UV"
+#define RE_PASSNAME_RGBA "Color"
+#define RE_PASSNAME_EMIT "Emit"
+#define RE_PASSNAME_DIFFUSE "Diffuse"
+#define RE_PASSNAME_SPEC "Spec"
+#define RE_PASSNAME_SHADOW "Shadow"
+
+#define RE_PASSNAME_AO "AO"
+#define RE_PASSNAME_ENVIRONMENT "Env"
+#define RE_PASSNAME_INDIRECT "Indirect"
+#define RE_PASSNAME_REFLECT "Reflect"
+#define RE_PASSNAME_REFRACT "Refract"
+#define RE_PASSNAME_INDEXOB "IndexOB"
+#define RE_PASSNAME_INDEXMA "IndexMA"
+#define RE_PASSNAME_MIST "Mist"
+
+#define RE_PASSNAME_RAYHITS "RayHits"
+#define RE_PASSNAME_DIFFUSE_DIRECT "DiffDir"
+#define RE_PASSNAME_DIFFUSE_INDIRECT "DiffInd"
+#define RE_PASSNAME_DIFFUSE_COLOR "DiffCol"
+#define RE_PASSNAME_GLOSSY_DIRECT "GlossDir"
+#define RE_PASSNAME_GLOSSY_INDIRECT "GlossInd"
+#define RE_PASSNAME_GLOSSY_COLOR "GlossCol"
+#define RE_PASSNAME_TRANSM_DIRECT "TransDir"
+#define RE_PASSNAME_TRANSM_INDIRECT "TransInd"
+#define RE_PASSNAME_TRANSM_COLOR "TransCol"
+
+#define RE_PASSNAME_SUBSURFACE_DIRECT "SubsurfaceDir"
+#define RE_PASSNAME_SUBSURFACE_INDIRECT "SubsurfaceInd"
+#define RE_PASSNAME_SUBSURFACE_COLOR "SubsurfaceCol"
/* note, srl->passflag is treestore element 'nr' in outliner, short still... */