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:
authorBrecht Van Lommel <brechtvanlommel@pandora.be>2012-12-15 14:18:42 +0400
committerBrecht Van Lommel <brechtvanlommel@pandora.be>2012-12-15 14:18:42 +0400
commit06888b7bebf66c5b05dd1a8106e35c57458252c0 (patch)
treeab9a5c6412438c8988a4e8116432ecd3b5705df3 /intern/cycles/kernel/kernel_emission.h
parent35dd893c368548b5d9d7bb56a1b9db07c71165d2 (diff)
Cycles OSL minor optimizations: recycle shading context, don't do memory
allocations for trace data, avoid some virtual function calls. Only helps a few percentages.
Diffstat (limited to 'intern/cycles/kernel/kernel_emission.h')
-rw-r--r--intern/cycles/kernel/kernel_emission.h6
1 files changed, 3 insertions, 3 deletions
diff --git a/intern/cycles/kernel/kernel_emission.h b/intern/cycles/kernel/kernel_emission.h
index 6d650a0158d..e56633c9358 100644
--- a/intern/cycles/kernel/kernel_emission.h
+++ b/intern/cycles/kernel/kernel_emission.h
@@ -42,7 +42,7 @@ __device float3 direct_emissive_eval(KernelGlobals *kg, float rando,
ray.time = time;
#endif
shader_setup_from_background(kg, &sd, &ray);
- eval = shader_eval_background(kg, &sd, 0);
+ eval = shader_eval_background(kg, &sd, 0, SHADER_CONTEXT_EMISSION);
}
else
#endif
@@ -52,7 +52,7 @@ __device float3 direct_emissive_eval(KernelGlobals *kg, float rando,
/* no path flag, we're evaluating this for all closures. that's weak but
* we'd have to do multiple evaluations otherwise */
- shader_eval_surface(kg, &sd, rando, 0);
+ shader_eval_surface(kg, &sd, rando, 0, SHADER_CONTEXT_EMISSION);
/* evaluate emissive closure */
if(sd.flag & SD_EMISSION)
@@ -170,7 +170,7 @@ __device float3 indirect_background(KernelGlobals *kg, Ray *ray, int path_flag,
/* evaluate background closure */
ShaderData sd;
shader_setup_from_background(kg, &sd, ray);
- float3 L = shader_eval_background(kg, &sd, path_flag);
+ float3 L = shader_eval_background(kg, &sd, path_flag, SHADER_CONTEXT_EMISSION);
shader_release(kg, &sd);
#ifdef __BACKGROUND_MIS__