From f8c29c999f0f0a6ed7e8a8ba1de444fdc5bdd3f2 Mon Sep 17 00:00:00 2001 From: Lukas Toenne Date: Mon, 3 Sep 2012 18:51:02 +0000 Subject: Fix for Cycles OSL: The RenderServices pointer in ShadingSystem is no longer accessible from the interface class (presumably because it is just the base class pointer anyway and would have to be casted). The OSLRenderServices pointer to our own implementation is now stored alongside the ShadingSystem in the kernel globals, so it can be accessed in thread_init. --- intern/cycles/kernel/osl/osl_globals.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'intern/cycles/kernel/osl/osl_globals.h') diff --git a/intern/cycles/kernel/osl/osl_globals.h b/intern/cycles/kernel/osl/osl_globals.h index 9a7985d6e95..075c68824e6 100644 --- a/intern/cycles/kernel/osl/osl_globals.h +++ b/intern/cycles/kernel/osl/osl_globals.h @@ -30,12 +30,15 @@ CCL_NAMESPACE_BEGIN +class OSLRenderServices; + struct OSLGlobals { /* use */ bool use; /* shading system */ OSL::ShadingSystem *ss; + OSLRenderServices *services; /* shader states */ vector surface_state; -- cgit v1.2.3