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/osl/osl_shader.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/osl/osl_shader.h')
-rw-r--r--intern/cycles/kernel/osl/osl_shader.h12
1 files changed, 4 insertions, 8 deletions
diff --git a/intern/cycles/kernel/osl/osl_shader.h b/intern/cycles/kernel/osl/osl_shader.h
index e614f240dc1..2e46a2de42c 100644
--- a/intern/cycles/kernel/osl/osl_shader.h
+++ b/intern/cycles/kernel/osl/osl_shader.h
@@ -55,10 +55,10 @@ public:
static void thread_free(KernelGlobals *kg);
/* eval */
- static void eval_surface(KernelGlobals *kg, ShaderData *sd, float randb, int path_flag);
- static float3 eval_background(KernelGlobals *kg, ShaderData *sd, int path_flag);
- static void eval_volume(KernelGlobals *kg, ShaderData *sd, float randb, int path_flag);
- static void eval_displacement(KernelGlobals *kg, ShaderData *sd);
+ static void eval_surface(KernelGlobals *kg, ShaderData *sd, float randb, int path_flag, ShaderContext ctx);
+ static float3 eval_background(KernelGlobals *kg, ShaderData *sd, int path_flag, ShaderContext ctx);
+ static void eval_volume(KernelGlobals *kg, ShaderData *sd, float randb, int path_flag, ShaderContext ctx);
+ static void eval_displacement(KernelGlobals *kg, ShaderData *sd, ShaderContext ctx);
/* sample & eval */
static int bsdf_sample(const ShaderData *sd, const ShaderClosure *sc,
@@ -73,10 +73,6 @@ public:
static float3 volume_eval_phase(const ShaderClosure *sc,
const float3 omega_in, const float3 omega_out);
- /* release */
- static void init(KernelGlobals *kg, ShaderData *sd);
- static void release(KernelGlobals *kg, ShaderData *sd);
-
/* attributes */
static int find_attribute(KernelGlobals *kg, const ShaderData *sd, uint id);
};