diff --git a/CMakeLists.txt b/CMakeLists.txt index 25980544647..5cb6f255d10 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -658,11 +658,7 @@ if(UNIX AND NOT APPLE) else() set(Boost_USE_MULTITHREADED ON) endif() - if(WITH_CYCLES_OSL) - find_package(Boost 1.34 COMPONENTS filesystem python3 regex system thread) # osl_nodes uses boost_python - else() - find_package(Boost 1.34 COMPONENTS filesystem regex system thread) - endif() + find_package(Boost 1.34 COMPONENTS filesystem regex system thread) mark_as_advanced(Boost_DIR) # why doesnt boost do this? endif() @@ -1137,12 +1133,6 @@ elseif(WIN32) debug libboost_date_time-${BOOST_DEBUG_POSTFIX} debug libboost_filesystem-${BOOST_DEBUG_POSTFIX} debug libboost_regex-${BOOST_DEBUG_POSTFIX} debug libboost_system-${BOOST_DEBUG_POSTFIX} debug libboost_thread-${BOOST_DEBUG_POSTFIX}) - if(WITH_CYCLES_OSL) - set(BOOST_LIBRARIES ${BOOST_LIBRARIES} - optimized libboost_python3-${BOOST_POSTFIX} - debug libboost_python3-${BOOST_DEBUG_POSTFIX}) - endif(WITH_CYCLES_OSL) - set(BOOST_DEFINITIONS "-DBOOST_ALL_NO_LIB") endif() @@ -1323,12 +1313,6 @@ elseif(WIN32) debug boost_date_time-${BOOST_DEBUG_POSTFIX} boost_filesystem-${BOOST_DEBUG_POSTFIX} boost_regex-${BOOST_DEBUG_POSTFIX} boost_system-${BOOST_DEBUG_POSTFIX} boost_thread-${BOOST_DEBUG_POSTFIX}) - if(WITH_CYCLES_OSL) - set(BOOST_LIBRARIES ${BOOST_LIBRARIES} - optimized libboost_python3-${BOOST_POSTFIX} - debug libboost_python3-${BOOST_DEBUG_POSTFIX}) - endif(WITH_CYCLES_OSL) - set(BOOST_LIBPATH ${BOOST}/lib) set(BOOST_DEFINITIONS "-DBOOST_ALL_NO_LIB -DBOOST_THREAD_USE_LIB ") endif() @@ -1583,11 +1567,7 @@ elseif(APPLE) if(WITH_BOOST) set(BOOST ${LIBDIR}/boost) set(BOOST_INCLUDE_DIR ${BOOST}/include) - if(WITH_CYCLES_OSL) - set(BOOST_LIBRARIES boost_date_time-mt boost_filesystem-mt boost_python3-mt boost_regex-mt boost_system-mt boost_thread-mt) - else(WITH_CYCLES_OSL) - set(BOOST_LIBRARIES boost_date_time-mt boost_filesystem-mt boost_regex-mt boost_system-mt boost_thread-mt) - endif(WITH_CYCLES_OSL) + set(BOOST_LIBRARIES boost_date_time-mt boost_filesystem-mt boost_regex-mt boost_system-mt boost_thread-mt) set(BOOST_LIBPATH ${BOOST}/lib) set(BOOST_DEFINITIONS) endif() diff --git a/intern/cycles/blender/addon/engine.py b/intern/cycles/blender/addon/engine.py index 05b1f883594..e4f80cb4d5d 100644 --- a/intern/cycles/blender/addon/engine.py +++ b/intern/cycles/blender/addon/engine.py @@ -83,3 +83,4 @@ def available_devices(): def with_osl(): import _cycles return _cycles.with_osl + diff --git a/intern/cycles/blender/addon/enums.py b/intern/cycles/blender/addon/enums.py index 6cc3010eb0e..e63e1e84245 100644 --- a/intern/cycles/blender/addon/enums.py +++ b/intern/cycles/blender/addon/enums.py @@ -60,3 +60,4 @@ panorama_types = ( ('FISHEYE_EQUIDISTANT', "Fisheye Equidistant", "Ideal for fulldomes, ignore the sensor dimensions"), ('FISHEYE_EQUISOLID', "Fisheye Equisolid", "Similar to most fisheye modern lens, take sensor dimensions into consideration"), ) + diff --git a/intern/cycles/kernel/CMakeLists.txt b/intern/cycles/kernel/CMakeLists.txt index d24c7d4128c..82b0605ab6b 100644 --- a/intern/cycles/kernel/CMakeLists.txt +++ b/intern/cycles/kernel/CMakeLists.txt @@ -134,6 +134,7 @@ endif() if(WITH_CYCLES_OSL) add_subdirectory(osl) + add_subdirectory(shaders) endif() # CPU module diff --git a/intern/cycles/kernel/closure/bsdf_microfacet.h b/intern/cycles/kernel/closure/bsdf_microfacet.h index f671e858481..a564b99e759 100644 --- a/intern/cycles/kernel/closure/bsdf_microfacet.h +++ b/intern/cycles/kernel/closure/bsdf_microfacet.h @@ -45,13 +45,10 @@ __device_inline float safe_sqrtf(float f) __device int bsdf_microfacet_ggx_setup(ShaderClosure *sc) { float ag = sc->data0; - float eta = sc->data1; float m_ag = clamp(ag, 1e-4f, 1.0f); - float m_eta = eta; sc->data0 = m_ag; - sc->data1 = m_eta; sc->type = CLOSURE_BSDF_MICROFACET_GGX_ID; return SD_BSDF|SD_BSDF_HAS_EVAL|SD_BSDF_GLOSSY; @@ -82,7 +79,6 @@ __device void bsdf_microfacet_ggx_blur(ShaderClosure *sc, float roughness) __device float3 bsdf_microfacet_ggx_eval_reflect(const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) { float m_ag = sc->data0; - //float m_eta = sc->data1; int m_refractive = sc->type == CLOSURE_BSDF_MICROFACET_GGX_REFRACTION_ID; float3 N = sc->N; @@ -155,7 +151,6 @@ __device float3 bsdf_microfacet_ggx_eval_transmit(const ShaderClosure *sc, const __device int bsdf_microfacet_ggx_sample(const ShaderClosure *sc, float3 Ng, float3 I, float3 dIdx, float3 dIdy, float randu, float randv, float3 *eval, float3 *omega_in, float3 *domega_in_dx, float3 *domega_in_dy, float *pdf) { float m_ag = sc->data0; - float m_eta = sc->data1; int m_refractive = sc->type == CLOSURE_BSDF_MICROFACET_GGX_REFRACTION_ID; float3 N = sc->N; @@ -221,6 +216,7 @@ __device int bsdf_microfacet_ggx_sample(const ShaderClosure *sc, float3 Ng, floa #ifdef __RAY_DIFFERENTIALS__ float3 dRdx, dRdy, dTdx, dTdy; #endif + float m_eta = sc->data1; bool inside; fresnel_dielectric(m_eta, m, I, &R, &T, #ifdef __RAY_DIFFERENTIALS__ @@ -274,12 +270,9 @@ __device int bsdf_microfacet_ggx_sample(const ShaderClosure *sc, float3 Ng, floa __device int bsdf_microfacet_beckmann_setup(ShaderClosure *sc) { float ab = sc->data0; - float eta = sc->data1; float m_ab = clamp(ab, 1e-4f, 1.0f); - float m_eta = eta; sc->data0 = m_ab; - sc->data1 = m_eta; sc->type = CLOSURE_BSDF_MICROFACET_BECKMANN_ID; return SD_BSDF|SD_BSDF_HAS_EVAL|SD_BSDF_GLOSSY; @@ -309,7 +302,6 @@ __device void bsdf_microfacet_beckmann_blur(ShaderClosure *sc, float roughness) __device float3 bsdf_microfacet_beckmann_eval_reflect(const ShaderClosure *sc, const float3 I, const float3 omega_in, float *pdf) { float m_ab = sc->data0; - //float m_eta = sc->data1; int m_refractive = sc->type == CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID; float3 N = sc->N; @@ -386,7 +378,6 @@ __device float3 bsdf_microfacet_beckmann_eval_transmit(const ShaderClosure *sc, __device int bsdf_microfacet_beckmann_sample(const ShaderClosure *sc, float3 Ng, float3 I, float3 dIdx, float3 dIdy, float randu, float randv, float3 *eval, float3 *omega_in, float3 *domega_in_dx, float3 *domega_in_dy, float *pdf) { float m_ab = sc->data0; - float m_eta = sc->data1; int m_refractive = sc->type == CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID; float3 N = sc->N; @@ -456,6 +447,7 @@ __device int bsdf_microfacet_beckmann_sample(const ShaderClosure *sc, float3 Ng, #ifdef __RAY_DIFFERENTIALS__ float3 dRdx, dRdy, dTdx, dTdy; #endif + float m_eta = sc->data1; bool inside; fresnel_dielectric(m_eta, m, I, &R, &T, #ifdef __RAY_DIFFERENTIALS__ diff --git a/intern/cycles/kernel/kernel_triangle.h b/intern/cycles/kernel/kernel_triangle.h index 43cfa330724..e39ae1d4fbc 100644 --- a/intern/cycles/kernel/kernel_triangle.h +++ b/intern/cycles/kernel/kernel_triangle.h @@ -68,6 +68,17 @@ __device_inline float3 triangle_normal_MT(KernelGlobals *kg, int tri_index, int #endif } +/* Return 3 triangle vertex locations */ +__device_inline void triangle_vertices(KernelGlobals *kg, int tri_index, float3 P[3]) +{ + /* load triangle vertices */ + float3 tri_vindex = float4_to_float3(kernel_tex_fetch(__tri_vindex, tri_index)); + + P[0] = float4_to_float3(kernel_tex_fetch(__tri_verts, __float_as_int(tri_vindex.x))); + P[1] = float4_to_float3(kernel_tex_fetch(__tri_verts, __float_as_int(tri_vindex.y))); + P[2] = float4_to_float3(kernel_tex_fetch(__tri_verts, __float_as_int(tri_vindex.z))); +} + __device_inline float3 triangle_smooth_normal(KernelGlobals *kg, int tri_index, float u, float v) { /* load triangle vertices */ diff --git a/intern/cycles/kernel/osl/CMakeLists.txt b/intern/cycles/kernel/osl/CMakeLists.txt index d6449b4349b..8938b16a48f 100644 --- a/intern/cycles/kernel/osl/CMakeLists.txt +++ b/intern/cycles/kernel/osl/CMakeLists.txt @@ -34,4 +34,3 @@ include_directories(SYSTEM ${INC_SYS}) add_library(cycles_kernel_osl ${SRC} ${HEADER_SRC}) -add_subdirectory(nodes) diff --git a/intern/cycles/kernel/osl/osl_services.cpp b/intern/cycles/kernel/osl/osl_services.cpp index 7c415e22012..ade085c795d 100644 --- a/intern/cycles/kernel/osl/osl_services.cpp +++ b/intern/cycles/kernel/osl/osl_services.cpp @@ -345,6 +345,51 @@ static void set_attribute_float(float f[3], TypeDesc type, bool derivatives, voi } } +static bool set_attribute_int(int i, TypeDesc type, bool derivatives, void *val) +{ + if(type.basetype == TypeDesc::INT && type.aggregate == TypeDesc::SCALAR && type.arraylen == 0) { + int *ival = (int *)val; + ival[0] = i; + + if (derivatives) { + ival[1] = 0; + ival[2] = 0; + } + + return true; + } + + return false; +} + +static bool set_attribute_float3_3(float3 P[3], TypeDesc type, bool derivatives, void *val) +{ + if(type.vecsemantics == TypeDesc::POINT && type.arraylen >= 3) { + float *fval = (float *)val; + + fval[0] = P[0].x; + fval[1] = P[0].y; + fval[2] = P[0].z; + + fval[3] = P[1].x; + fval[4] = P[1].y; + fval[5] = P[1].z; + + fval[6] = P[2].x; + fval[7] = P[2].y; + fval[8] = P[2].z; + + if(type.arraylen > 3) + memset(fval + 3*3, 0, sizeof(float)*3*(type.arraylen - 3)); + if (derivatives) + memset(fval + type.arraylen*3, 0, sizeof(float)*2*3*type.arraylen); + + return true; + } + + return false; +} + static bool get_mesh_attribute(KernelGlobals *kg, const ShaderData *sd, const OSLGlobals::Attribute& attr, const TypeDesc& type, bool derivatives, void *val) { @@ -381,43 +426,45 @@ static void get_object_attribute(const OSLGlobals::Attribute& attr, bool derivat static bool get_object_standard_attribute(KernelGlobals *kg, ShaderData *sd, ustring name, TypeDesc type, bool derivatives, void *val) { + /* todo: turn this into hash table + callback once */ + /* Object Attributes */ - if (name == "std::object_location") { + if (name == "object:location") { float3 fval[3]; fval[0] = object_location(kg, sd); fval[1] = fval[2] = make_float3(0.0, 0.0, 0.0); /* derivates set to 0 */ set_attribute_float3(fval, type, derivatives, val); return true; } - else if (name == "std::object_index") { + else if (name == "object:index") { float fval[3]; fval[0] = object_pass_id(kg, sd->object); fval[1] = fval[2] = 0.0; /* derivates set to 0 */ set_attribute_float(fval, type, derivatives, val); return true; } - else if (name == "std::dupli_generated") { + else if (name == "geom:dupli_generated") { float3 fval[3]; fval[0] = object_dupli_generated(kg, sd->object); fval[1] = fval[2] = make_float3(0.0, 0.0, 0.0); /* derivates set to 0 */ set_attribute_float3(fval, type, derivatives, val); return true; } - else if (name == "std::dupli_uv") { + else if (name == "geom:dupli_uv") { float3 fval[3]; fval[0] = object_dupli_uv(kg, sd->object); fval[1] = fval[2] = make_float3(0.0, 0.0, 0.0); /* derivates set to 0 */ set_attribute_float3(fval, type, derivatives, val); return true; } - else if (name == "std::material_index") { + else if (name == "material:index") { float fval[3]; fval[0] = shader_pass_id(kg, sd); fval[1] = fval[2] = 0.0; /* derivates set to 0 */ set_attribute_float(fval, type, derivatives, val); return true; } - else if (name == "std::object_random") { + else if (name == "object:random") { float fval[3]; fval[0] = object_random_number(kg, sd->object); fval[1] = fval[2] = 0.0; /* derivates set to 0 */ @@ -426,7 +473,7 @@ static bool get_object_standard_attribute(KernelGlobals *kg, ShaderData *sd, ust } /* Particle Attributes */ - else if (name == "std::particle_index") { + else if (name == "particle:index") { float fval[3]; uint particle_id = object_particle_id(kg, sd->object); fval[0] = particle_index(kg, particle_id); @@ -434,7 +481,7 @@ static bool get_object_standard_attribute(KernelGlobals *kg, ShaderData *sd, ust set_attribute_float(fval, type, derivatives, val); return true; } - else if (name == "std::particle_age") { + else if (name == "particle:age") { float fval[3]; uint particle_id = object_particle_id(kg, sd->object); fval[0] = particle_age(kg, particle_id); @@ -442,7 +489,7 @@ static bool get_object_standard_attribute(KernelGlobals *kg, ShaderData *sd, ust set_attribute_float(fval, type, derivatives, val); return true; } - else if (name == "std::particle_lifetime") { + else if (name == "particle:lifetime") { float fval[3]; uint particle_id = object_particle_id(kg, sd->object); fval[0] = particle_lifetime(kg, particle_id); @@ -450,7 +497,7 @@ static bool get_object_standard_attribute(KernelGlobals *kg, ShaderData *sd, ust set_attribute_float(fval, type, derivatives, val); return true; } - else if (name == "std::particle_location") { + else if (name == "particle:location") { float3 fval[3]; uint particle_id = object_particle_id(kg, sd->object); fval[0] = particle_location(kg, particle_id); @@ -459,7 +506,7 @@ static bool get_object_standard_attribute(KernelGlobals *kg, ShaderData *sd, ust return true; } #if 0 /* unsupported */ - else if (name == "std::particle_rotation") { + else if (name == "particle:rotation") { float4 fval[3]; uint particle_id = object_particle_id(kg, sd->object); fval[0] = particle_rotation(kg, particle_id); @@ -468,7 +515,7 @@ static bool get_object_standard_attribute(KernelGlobals *kg, ShaderData *sd, ust return true; } #endif - else if (name == "std::particle_size") { + else if (name == "particle:size") { float fval[3]; uint particle_id = object_particle_id(kg, sd->object); fval[0] = particle_size(kg, particle_id); @@ -476,7 +523,7 @@ static bool get_object_standard_attribute(KernelGlobals *kg, ShaderData *sd, ust set_attribute_float(fval, type, derivatives, val); return true; } - else if (name == "std::particle_velocity") { + else if (name == "particle:velocity") { float3 fval[3]; uint particle_id = object_particle_id(kg, sd->object); fval[0] = particle_velocity(kg, particle_id); @@ -484,7 +531,7 @@ static bool get_object_standard_attribute(KernelGlobals *kg, ShaderData *sd, ust set_attribute_float3(fval, type, derivatives, val); return true; } - else if (name == "std::particle_angular_velocity") { + else if (name == "particle:angular_velocity") { float3 fval[3]; uint particle_id = object_particle_id(kg, sd->object); fval[0] = particle_angular_velocity(kg, particle_id); @@ -492,7 +539,17 @@ static bool get_object_standard_attribute(KernelGlobals *kg, ShaderData *sd, ust set_attribute_float3(fval, type, derivatives, val); return true; } - + else if (name == "geom:numpolyvertices") { + return set_attribute_int(3, type, derivatives, val); + } + else if (name == "geom:trianglevertices" || name == "geom:polyvertices") { + float3 P[3]; + triangle_vertices(kg, sd->prim, P); + object_position_transform(kg, sd, &P[0]); + object_position_transform(kg, sd, &P[1]); + object_position_transform(kg, sd, &P[2]); + return set_attribute_float3_3(P, type, derivatives, val); + } else return false; } @@ -501,7 +558,7 @@ static bool get_background_attribute(KernelGlobals *kg, ShaderData *sd, ustring TypeDesc type, bool derivatives, void *val) { /* Ray Length */ - if (name == "std::ray_length") { + if (name == "path:ray_length") { float fval[3]; fval[0] = sd->ray_length; fval[1] = fval[2] = 0.0; /* derivates set to 0 */ diff --git a/intern/cycles/kernel/osl/nodes/CMakeLists.txt b/intern/cycles/kernel/shaders/CMakeLists.txt similarity index 89% rename from intern/cycles/kernel/osl/nodes/CMakeLists.txt rename to intern/cycles/kernel/shaders/CMakeLists.txt index da5441f11e0..00ab52a1d13 100644 --- a/intern/cycles/kernel/osl/nodes/CMakeLists.txt +++ b/intern/cycles/kernel/shaders/CMakeLists.txt @@ -76,11 +76,11 @@ set(SRC_OSO # TODO, add a module to compile OSL foreach(_file ${SRC_OSL}) set(_OSL_FILE ${CMAKE_CURRENT_SOURCE_DIR}/${_file}) - string(REPLACE ".osl" ".oso" _OSO_FILE ${_OSL_FILE}) # TODO, replace extension only + string(REPLACE ".osl" ".oso" _OSO_FILE ${_OSL_FILE}) string(REPLACE ${CMAKE_SOURCE_DIR} ${CMAKE_BINARY_DIR} _OSO_FILE ${_OSO_FILE}) add_custom_command( OUTPUT ${_OSO_FILE} - COMMAND ${OSL_COMPILER} -O2 ${_OSL_FILE} + COMMAND ${OSL_COMPILER} -O2 -I"${CMAKE_CURRENT_SOURCE_DIR}" ${_OSL_FILE} DEPENDS ${_OSL_FILE} ${SRC_OSL_HEADERS}) list(APPEND SRC_OSO ${_OSO_FILE} @@ -94,3 +94,5 @@ add_custom_target(cycles_osl_shaders ALL DEPENDS ${SRC_OSO} ${SRC_OSL_HEADERS}) # CMAKE_CURRENT_SOURCE_DIR is already included in OSO paths delayed_install("" "${SRC_OSO}" ${CYCLES_INSTALL_PATH}/shader) +delayed_install("${CMAKE_CURRENT_SOURCE_DIR}" "${SRC_OSL_HEADERS}" ${CYCLES_INSTALL_PATH}/shader) + diff --git a/intern/cycles/kernel/osl/nodes/node_add_closure.osl b/intern/cycles/kernel/shaders/node_add_closure.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_add_closure.osl rename to intern/cycles/kernel/shaders/node_add_closure.osl diff --git a/intern/cycles/kernel/osl/nodes/node_attribute.osl b/intern/cycles/kernel/shaders/node_attribute.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_attribute.osl rename to intern/cycles/kernel/shaders/node_attribute.osl diff --git a/intern/cycles/kernel/osl/nodes/node_background.osl b/intern/cycles/kernel/shaders/node_background.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_background.osl rename to intern/cycles/kernel/shaders/node_background.osl diff --git a/intern/cycles/kernel/osl/nodes/node_brick_texture.osl b/intern/cycles/kernel/shaders/node_brick_texture.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_brick_texture.osl rename to intern/cycles/kernel/shaders/node_brick_texture.osl diff --git a/intern/cycles/kernel/osl/nodes/node_brightness.osl b/intern/cycles/kernel/shaders/node_brightness.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_brightness.osl rename to intern/cycles/kernel/shaders/node_brightness.osl diff --git a/intern/cycles/kernel/osl/nodes/node_bump.osl b/intern/cycles/kernel/shaders/node_bump.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_bump.osl rename to intern/cycles/kernel/shaders/node_bump.osl diff --git a/intern/cycles/kernel/osl/nodes/node_camera.osl b/intern/cycles/kernel/shaders/node_camera.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_camera.osl rename to intern/cycles/kernel/shaders/node_camera.osl diff --git a/intern/cycles/kernel/osl/nodes/node_checker_texture.osl b/intern/cycles/kernel/shaders/node_checker_texture.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_checker_texture.osl rename to intern/cycles/kernel/shaders/node_checker_texture.osl diff --git a/intern/cycles/kernel/osl/nodes/node_color.h b/intern/cycles/kernel/shaders/node_color.h similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_color.h rename to intern/cycles/kernel/shaders/node_color.h diff --git a/intern/cycles/kernel/osl/nodes/node_combine_rgb.osl b/intern/cycles/kernel/shaders/node_combine_rgb.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_combine_rgb.osl rename to intern/cycles/kernel/shaders/node_combine_rgb.osl diff --git a/intern/cycles/kernel/osl/nodes/node_convert_from_color.osl b/intern/cycles/kernel/shaders/node_convert_from_color.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_convert_from_color.osl rename to intern/cycles/kernel/shaders/node_convert_from_color.osl diff --git a/intern/cycles/kernel/osl/nodes/node_convert_from_float.osl b/intern/cycles/kernel/shaders/node_convert_from_float.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_convert_from_float.osl rename to intern/cycles/kernel/shaders/node_convert_from_float.osl diff --git a/intern/cycles/kernel/osl/nodes/node_convert_from_int.osl b/intern/cycles/kernel/shaders/node_convert_from_int.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_convert_from_int.osl rename to intern/cycles/kernel/shaders/node_convert_from_int.osl diff --git a/intern/cycles/kernel/osl/nodes/node_convert_from_normal.osl b/intern/cycles/kernel/shaders/node_convert_from_normal.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_convert_from_normal.osl rename to intern/cycles/kernel/shaders/node_convert_from_normal.osl diff --git a/intern/cycles/kernel/osl/nodes/node_convert_from_point.osl b/intern/cycles/kernel/shaders/node_convert_from_point.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_convert_from_point.osl rename to intern/cycles/kernel/shaders/node_convert_from_point.osl diff --git a/intern/cycles/kernel/osl/nodes/node_convert_from_vector.osl b/intern/cycles/kernel/shaders/node_convert_from_vector.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_convert_from_vector.osl rename to intern/cycles/kernel/shaders/node_convert_from_vector.osl diff --git a/intern/cycles/kernel/osl/nodes/node_diffuse_bsdf.osl b/intern/cycles/kernel/shaders/node_diffuse_bsdf.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_diffuse_bsdf.osl rename to intern/cycles/kernel/shaders/node_diffuse_bsdf.osl diff --git a/intern/cycles/kernel/osl/nodes/node_emission.osl b/intern/cycles/kernel/shaders/node_emission.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_emission.osl rename to intern/cycles/kernel/shaders/node_emission.osl diff --git a/intern/cycles/kernel/osl/nodes/node_environment_texture.osl b/intern/cycles/kernel/shaders/node_environment_texture.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_environment_texture.osl rename to intern/cycles/kernel/shaders/node_environment_texture.osl diff --git a/intern/cycles/kernel/osl/nodes/node_fresnel.h b/intern/cycles/kernel/shaders/node_fresnel.h similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_fresnel.h rename to intern/cycles/kernel/shaders/node_fresnel.h diff --git a/intern/cycles/kernel/osl/nodes/node_fresnel.osl b/intern/cycles/kernel/shaders/node_fresnel.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_fresnel.osl rename to intern/cycles/kernel/shaders/node_fresnel.osl diff --git a/intern/cycles/kernel/osl/nodes/node_gamma.osl b/intern/cycles/kernel/shaders/node_gamma.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_gamma.osl rename to intern/cycles/kernel/shaders/node_gamma.osl diff --git a/intern/cycles/kernel/osl/nodes/node_geometry.osl b/intern/cycles/kernel/shaders/node_geometry.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_geometry.osl rename to intern/cycles/kernel/shaders/node_geometry.osl diff --git a/intern/cycles/kernel/osl/nodes/node_glass_bsdf.osl b/intern/cycles/kernel/shaders/node_glass_bsdf.osl similarity index 91% rename from intern/cycles/kernel/osl/nodes/node_glass_bsdf.osl rename to intern/cycles/kernel/shaders/node_glass_bsdf.osl index f3fcce572cf..30b9d301f32 100644 --- a/intern/cycles/kernel/osl/nodes/node_glass_bsdf.osl +++ b/intern/cycles/kernel/shaders/node_glass_bsdf.osl @@ -34,10 +34,10 @@ shader node_glass_bsdf( if (distribution == "Sharp") BSDF = Color * (Fr * reflection(Normal) + (1.0 - Fr) * refraction(Normal, eta)); else if (distribution == "Beckmann") - BSDF = Color * (Fr * microfacet_beckmann(Normal, Roughness, eta) + + BSDF = Color * (Fr * microfacet_beckmann(Normal, Roughness) + (1.0 - Fr) * microfacet_beckmann_refraction(Normal, Roughness, eta)); else if (distribution == "GGX") - BSDF = Color * (Fr * microfacet_ggx(Normal, Roughness, eta) + + BSDF = Color * (Fr * microfacet_ggx(Normal, Roughness) + (1.0 - Fr) * microfacet_ggx_refraction(Normal, Roughness, eta)); } diff --git a/intern/cycles/kernel/osl/nodes/node_glossy_bsdf.osl b/intern/cycles/kernel/shaders/node_glossy_bsdf.osl similarity index 90% rename from intern/cycles/kernel/osl/nodes/node_glossy_bsdf.osl rename to intern/cycles/kernel/shaders/node_glossy_bsdf.osl index 48d61ea0ab5..03340c74af5 100644 --- a/intern/cycles/kernel/osl/nodes/node_glossy_bsdf.osl +++ b/intern/cycles/kernel/shaders/node_glossy_bsdf.osl @@ -29,9 +29,9 @@ shader node_glossy_bsdf( if (distribution == "Sharp") BSDF = Color * reflection(Normal); else if (distribution == "Beckmann") - BSDF = Color * microfacet_beckmann(Normal, Roughness, 1.0); + BSDF = Color * microfacet_beckmann(Normal, Roughness); else if (distribution == "GGX") - BSDF = Color * microfacet_ggx(Normal, Roughness, 1.0); + BSDF = Color * microfacet_ggx(Normal, Roughness); } diff --git a/intern/cycles/kernel/osl/nodes/node_gradient_texture.osl b/intern/cycles/kernel/shaders/node_gradient_texture.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_gradient_texture.osl rename to intern/cycles/kernel/shaders/node_gradient_texture.osl diff --git a/intern/cycles/kernel/osl/nodes/node_holdout.osl b/intern/cycles/kernel/shaders/node_holdout.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_holdout.osl rename to intern/cycles/kernel/shaders/node_holdout.osl diff --git a/intern/cycles/kernel/osl/nodes/node_hsv.osl b/intern/cycles/kernel/shaders/node_hsv.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_hsv.osl rename to intern/cycles/kernel/shaders/node_hsv.osl diff --git a/intern/cycles/kernel/osl/nodes/node_image_texture.osl b/intern/cycles/kernel/shaders/node_image_texture.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_image_texture.osl rename to intern/cycles/kernel/shaders/node_image_texture.osl diff --git a/intern/cycles/kernel/osl/nodes/node_invert.osl b/intern/cycles/kernel/shaders/node_invert.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_invert.osl rename to intern/cycles/kernel/shaders/node_invert.osl diff --git a/intern/cycles/kernel/osl/nodes/node_layer_weight.osl b/intern/cycles/kernel/shaders/node_layer_weight.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_layer_weight.osl rename to intern/cycles/kernel/shaders/node_layer_weight.osl diff --git a/intern/cycles/kernel/osl/nodes/node_light_falloff.osl b/intern/cycles/kernel/shaders/node_light_falloff.osl similarity index 96% rename from intern/cycles/kernel/osl/nodes/node_light_falloff.osl rename to intern/cycles/kernel/shaders/node_light_falloff.osl index 3877b6d5bdc..7ffa6fe0ffb 100644 --- a/intern/cycles/kernel/osl/nodes/node_light_falloff.osl +++ b/intern/cycles/kernel/shaders/node_light_falloff.osl @@ -27,7 +27,7 @@ shader node_light_falloff( { float ray_length = 0.0; float strength = Strength; - getattribute("std::ray_length", ray_length); + getattribute("path:ray_length", ray_length); if (Smooth > 0.0) { float squared = ray_length*ray_length; diff --git a/intern/cycles/kernel/osl/nodes/node_light_path.osl b/intern/cycles/kernel/shaders/node_light_path.osl similarity index 96% rename from intern/cycles/kernel/osl/nodes/node_light_path.osl rename to intern/cycles/kernel/shaders/node_light_path.osl index ca92a5e6553..9e3f6c7b4a9 100644 --- a/intern/cycles/kernel/osl/nodes/node_light_path.osl +++ b/intern/cycles/kernel/shaders/node_light_path.osl @@ -36,6 +36,6 @@ shader node_light_path( IsReflectionRay = raytype("reflection"); IsTransmissionRay = raytype("refraction"); - getattribute("std::ray_length", RayLength); + getattribute("path:ray_length", RayLength); } diff --git a/intern/cycles/kernel/osl/nodes/node_magic_texture.osl b/intern/cycles/kernel/shaders/node_magic_texture.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_magic_texture.osl rename to intern/cycles/kernel/shaders/node_magic_texture.osl diff --git a/intern/cycles/kernel/osl/nodes/node_mapping.osl b/intern/cycles/kernel/shaders/node_mapping.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_mapping.osl rename to intern/cycles/kernel/shaders/node_mapping.osl diff --git a/intern/cycles/kernel/osl/nodes/node_math.osl b/intern/cycles/kernel/shaders/node_math.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_math.osl rename to intern/cycles/kernel/shaders/node_math.osl diff --git a/intern/cycles/kernel/osl/nodes/node_mix.osl b/intern/cycles/kernel/shaders/node_mix.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_mix.osl rename to intern/cycles/kernel/shaders/node_mix.osl diff --git a/intern/cycles/kernel/osl/nodes/node_mix_closure.osl b/intern/cycles/kernel/shaders/node_mix_closure.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_mix_closure.osl rename to intern/cycles/kernel/shaders/node_mix_closure.osl diff --git a/intern/cycles/kernel/osl/nodes/node_musgrave_texture.osl b/intern/cycles/kernel/shaders/node_musgrave_texture.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_musgrave_texture.osl rename to intern/cycles/kernel/shaders/node_musgrave_texture.osl diff --git a/intern/cycles/kernel/osl/nodes/node_noise_texture.osl b/intern/cycles/kernel/shaders/node_noise_texture.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_noise_texture.osl rename to intern/cycles/kernel/shaders/node_noise_texture.osl diff --git a/intern/cycles/kernel/osl/nodes/node_normal.osl b/intern/cycles/kernel/shaders/node_normal.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_normal.osl rename to intern/cycles/kernel/shaders/node_normal.osl diff --git a/intern/cycles/kernel/osl/nodes/node_object_info.osl b/intern/cycles/kernel/shaders/node_object_info.osl similarity index 83% rename from intern/cycles/kernel/osl/nodes/node_object_info.osl rename to intern/cycles/kernel/shaders/node_object_info.osl index 0d503258179..c3b1ff29f09 100644 --- a/intern/cycles/kernel/osl/nodes/node_object_info.osl +++ b/intern/cycles/kernel/shaders/node_object_info.osl @@ -24,9 +24,9 @@ shader node_object_info( output float MaterialIndex = 0.0, output float Random = 0.0) { - getattribute("std::object_location", Location); - getattribute("std::object_index", ObjectIndex); - getattribute("std::material_index", MaterialIndex); - getattribute("std::object_random", Random); + getattribute("object:location", Location); + getattribute("object:index", ObjectIndex); + getattribute("material:index", MaterialIndex); + getattribute("object:random", Random); } diff --git a/intern/cycles/kernel/osl/nodes/node_output_displacement.osl b/intern/cycles/kernel/shaders/node_output_displacement.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_output_displacement.osl rename to intern/cycles/kernel/shaders/node_output_displacement.osl diff --git a/intern/cycles/kernel/osl/nodes/node_output_surface.osl b/intern/cycles/kernel/shaders/node_output_surface.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_output_surface.osl rename to intern/cycles/kernel/shaders/node_output_surface.osl diff --git a/intern/cycles/kernel/osl/nodes/node_output_volume.osl b/intern/cycles/kernel/shaders/node_output_volume.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_output_volume.osl rename to intern/cycles/kernel/shaders/node_output_volume.osl diff --git a/intern/cycles/kernel/osl/nodes/node_particle_info.osl b/intern/cycles/kernel/shaders/node_particle_info.osl similarity index 75% rename from intern/cycles/kernel/osl/nodes/node_particle_info.osl rename to intern/cycles/kernel/shaders/node_particle_info.osl index ba51ccbd953..5e59ad1a990 100644 --- a/intern/cycles/kernel/osl/nodes/node_particle_info.osl +++ b/intern/cycles/kernel/shaders/node_particle_info.osl @@ -27,12 +27,12 @@ shader node_particle_info( output vector Velocity = point(0.0, 0.0, 0.0), output vector AngularVelocity = point(0.0, 0.0, 0.0)) { - getattribute("std::particle_index", Index); - getattribute("std::particle_age", Age); - getattribute("std::particle_lifetime", Lifetime); - getattribute("std::particle_location", Location); - getattribute("std::particle_size", Size); - getattribute("std::particle_velocity", Velocity); - getattribute("std::particle_angular_velocity", AngularVelocity); + getattribute("particle:index", Index); + getattribute("particle:age", Age); + getattribute("particle:lifetime", Lifetime); + getattribute("particle:location", Location); + getattribute("particle:size", Size); + getattribute("particle:velocity", Velocity); + getattribute("particle:angular_velocity", AngularVelocity); } diff --git a/intern/cycles/kernel/osl/nodes/node_rgb_ramp.osl b/intern/cycles/kernel/shaders/node_rgb_ramp.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_rgb_ramp.osl rename to intern/cycles/kernel/shaders/node_rgb_ramp.osl diff --git a/intern/cycles/kernel/osl/nodes/node_separate_rgb.osl b/intern/cycles/kernel/shaders/node_separate_rgb.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_separate_rgb.osl rename to intern/cycles/kernel/shaders/node_separate_rgb.osl diff --git a/intern/cycles/kernel/osl/nodes/node_set_normal.osl b/intern/cycles/kernel/shaders/node_set_normal.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_set_normal.osl rename to intern/cycles/kernel/shaders/node_set_normal.osl diff --git a/intern/cycles/kernel/osl/nodes/node_sky_texture.osl b/intern/cycles/kernel/shaders/node_sky_texture.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_sky_texture.osl rename to intern/cycles/kernel/shaders/node_sky_texture.osl diff --git a/intern/cycles/kernel/osl/nodes/node_texture.h b/intern/cycles/kernel/shaders/node_texture.h similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_texture.h rename to intern/cycles/kernel/shaders/node_texture.h diff --git a/intern/cycles/kernel/osl/nodes/node_texture_coordinate.osl b/intern/cycles/kernel/shaders/node_texture_coordinate.osl similarity index 92% rename from intern/cycles/kernel/osl/nodes/node_texture_coordinate.osl rename to intern/cycles/kernel/shaders/node_texture_coordinate.osl index 405ed118c2b..791838dfffe 100644 --- a/intern/cycles/kernel/osl/nodes/node_texture_coordinate.osl +++ b/intern/cycles/kernel/shaders/node_texture_coordinate.osl @@ -44,12 +44,12 @@ shader node_texture_coordinate( } else { if (from_dupli) { - getattribute("std::dupli_generated", Generated); - getattribute("std::dupli_uv", UV); + getattribute("geom:dupli_generated", Generated); + getattribute("geom:dupli_uv", UV); } else { - getattribute("std::generated", Generated); - getattribute("std::uv", UV); + getattribute("geom:generated", Generated); + getattribute("geom:uv", UV); } Object = transform("object", P); diff --git a/intern/cycles/kernel/osl/nodes/node_translucent_bsdf.osl b/intern/cycles/kernel/shaders/node_translucent_bsdf.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_translucent_bsdf.osl rename to intern/cycles/kernel/shaders/node_translucent_bsdf.osl diff --git a/intern/cycles/kernel/osl/nodes/node_transparent_bsdf.osl b/intern/cycles/kernel/shaders/node_transparent_bsdf.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_transparent_bsdf.osl rename to intern/cycles/kernel/shaders/node_transparent_bsdf.osl diff --git a/intern/cycles/kernel/osl/nodes/node_value.osl b/intern/cycles/kernel/shaders/node_value.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_value.osl rename to intern/cycles/kernel/shaders/node_value.osl diff --git a/intern/cycles/kernel/osl/nodes/node_vector_math.osl b/intern/cycles/kernel/shaders/node_vector_math.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_vector_math.osl rename to intern/cycles/kernel/shaders/node_vector_math.osl diff --git a/intern/cycles/kernel/osl/nodes/node_velvet_bsdf.osl b/intern/cycles/kernel/shaders/node_velvet_bsdf.osl similarity index 94% rename from intern/cycles/kernel/osl/nodes/node_velvet_bsdf.osl rename to intern/cycles/kernel/shaders/node_velvet_bsdf.osl index 4bb4e39a1ba..3aa662bdd08 100644 --- a/intern/cycles/kernel/osl/nodes/node_velvet_bsdf.osl +++ b/intern/cycles/kernel/shaders/node_velvet_bsdf.osl @@ -27,6 +27,6 @@ shader node_velvet_bsdf( { float sigma = clamp(Sigma, 0.0, 1.0); - BSDF = Color * ashikhmin_velvet(Normal, sigma, 1.0); + BSDF = Color * ashikhmin_velvet(Normal, sigma); } diff --git a/intern/cycles/kernel/osl/nodes/node_voronoi_texture.osl b/intern/cycles/kernel/shaders/node_voronoi_texture.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_voronoi_texture.osl rename to intern/cycles/kernel/shaders/node_voronoi_texture.osl diff --git a/intern/cycles/kernel/osl/nodes/node_ward_bsdf.osl b/intern/cycles/kernel/shaders/node_ward_bsdf.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_ward_bsdf.osl rename to intern/cycles/kernel/shaders/node_ward_bsdf.osl diff --git a/intern/cycles/kernel/osl/nodes/node_wave_texture.osl b/intern/cycles/kernel/shaders/node_wave_texture.osl similarity index 100% rename from intern/cycles/kernel/osl/nodes/node_wave_texture.osl rename to intern/cycles/kernel/shaders/node_wave_texture.osl diff --git a/intern/cycles/kernel/osl/nodes/oslutil.h b/intern/cycles/kernel/shaders/oslutil.h similarity index 100% rename from intern/cycles/kernel/osl/nodes/oslutil.h rename to intern/cycles/kernel/shaders/oslutil.h diff --git a/intern/cycles/kernel/osl/nodes/stdosl.h b/intern/cycles/kernel/shaders/stdosl.h similarity index 78% rename from intern/cycles/kernel/osl/nodes/stdosl.h rename to intern/cycles/kernel/shaders/stdosl.h index e5accf4eb54..4237291c7a4 100644 --- a/intern/cycles/kernel/osl/nodes/stdosl.h +++ b/intern/cycles/kernel/shaders/stdosl.h @@ -434,81 +434,18 @@ string concat (string a, string b, string c, string d, string e, string f) { closure color diffuse(normal N) BUILTIN; closure color oren_nayar(normal N, float sigma) BUILTIN; closure color translucent(normal N) BUILTIN; -closure color reflection(normal N, float eta) BUILTIN; -closure color reflection(normal N) { return reflection (N, 0.0); } +closure color reflection(normal N) BUILTIN; closure color refraction(normal N, float eta) BUILTIN; -closure color dielectric(normal N, float eta) BUILTIN; closure color transparent() BUILTIN; -closure color microfacet_ggx(normal N, float ag, float eta) BUILTIN; +closure color microfacet_ggx(normal N, float ag) BUILTIN; closure color microfacet_ggx_refraction(normal N, float ag, float eta) BUILTIN; -closure color microfacet_beckmann(normal N, float ab, float eta) BUILTIN; +closure color microfacet_beckmann(normal N, float ab) BUILTIN; closure color microfacet_beckmann_refraction(normal N, float ab, float eta) BUILTIN; closure color ward(normal N, vector T,float ax, float ay) BUILTIN; -closure color phong(normal N, float exponent) BUILTIN; -closure color phong_ramp(normal N, float exponent, color colors[8]) BUILTIN; -closure color hair_diffuse(vector T) BUILTIN; -closure color hair_specular(vector T, float offset, float exponent) BUILTIN; -closure color ashikhmin_velvet(normal N, float sigma, float eta) BUILTIN; -closure color westin_backscatter(normal N, float roughness) BUILTIN; -closure color westin_sheen(normal N, float edginess) BUILTIN; -closure color bssrdf_cubic(color radius) BUILTIN; -closure color emission(float inner_angle, float outer_angle) BUILTIN; -closure color emission(float outer_angle) BUILTIN; +closure color ashikhmin_velvet(normal N, float sigma) BUILTIN; closure color emission() BUILTIN; -closure color debug(string tag) BUILTIN; closure color background() BUILTIN; closure color holdout() BUILTIN; -closure color subsurface(float eta, float g, color mfp, color albedo) BUILTIN; - -closure color cloth(normal N, float s, float t, float dsdx, float dtdx, float dsdy, float dtdy, - float area_scaled, vector dPdu, color diff_warp_col, color diff_weft_col, - color spec_warp_col, color spec_weft_col, float fresnel_warp, float fresnel_weft, - float spread_x_mult, float spread_y_mult, int pattern, float pattern_angle, - float warp_width_scale, float weft_width_scale, float thread_count_mult_u, - float thread_count_mult_v) BUILTIN; -closure color cloth_specular(normal N, color spec_col[4], float eta[4], int thread_pattern[4], - float pattern_weight[4], int current_thread, float brdf_interp, - float btf_interp, float uux, float vvx, float area_scaled, vector dPdu, - float eccentricity[4], float angle[4], float Kx[4], float Ky[4], - float Sx[4], float Sy[4]) BUILTIN; -closure color fakefur_diffuse(normal N, vector T, float fur_reflectivity, float fur_transmission, - float shadow_start, float shadow_end, float fur_attenuation, float fur_density, - float fur_avg_radius, float fur_length, float fur_shadow_fraction) BUILTIN; -closure color fakefur_specular(normal N, vector T, float offset, float exp, float fur_reflectivity, - float fur_transmission, float shadow_start, float shadow_end, - float fur_attenuation, float fur_density, float fur_avg_radius, - float fur_length, float fur_shadow_fraction) BUILTIN; - -closure color fakefur_skin(vector N, vector T, float fur_reflectivity, float fur_transmission, - float shadow_start, float shadow_end, float fur_attenuation, float fur_density, - float fur_avg_radius, float fur_length) BUILTIN; - - -closure color cloth(normal N, float s, float t, color diff_warp, color diff_weft, - color spec_warp, color spec_weft, float fresnel_warp, float fresnel_weft, - float spread_x_mult, float spread_y_mult, int pattern, float pattern_angle, - float warp_width_scale, float weft_width_scale, float thread_count_mult_u, - float thread_count_mult_v) -{ - - return cloth(N, s, t, Dx(s), Dx(t), Dy(s), Dy(t), area(P), dPdu, diff_warp, diff_weft, spec_warp, spec_weft, - fresnel_warp, fresnel_weft, spread_x_mult, spread_y_mult, pattern, pattern_angle, - warp_width_scale, weft_width_scale, thread_count_mult_u, thread_count_mult_v); -} - -closure color cloth(normal N, float s, float t, color diff_warp, color diff_weft, - color spec_warp, color spec_weft, float fresnel_warp, float fresnel_weft, - float spread_x_mult, float spread_y_mult, int pattern, float pattern_angle, - float warp_width_scale, float weft_width_scale, float thread_count_mult_u, - float thread_count_mult_v, string tok, string val) -{ - - return cloth(N, s, t, Dx(s), Dx(t), Dy(s), Dy(t), area(P), dPdu, diff_warp, diff_weft, spec_warp, spec_weft, - fresnel_warp, fresnel_weft, spread_x_mult, spread_y_mult, pattern, pattern_angle, - warp_width_scale, weft_width_scale, thread_count_mult_u, thread_count_mult_v, tok, val); -} - - // Renderer state int raytype (string typename) BUILTIN; diff --git a/intern/cycles/render/mesh.cpp b/intern/cycles/render/mesh.cpp index 3c41b4f1ad3..13c06a922cc 100644 --- a/intern/cycles/render/mesh.cpp +++ b/intern/cycles/render/mesh.cpp @@ -366,8 +366,8 @@ void MeshManager::update_osl_attributes(Device *device, Scene *scene, vectorattribute_map[i][stdname] = osl_attr; } else if(req.name != ustring()) { diff --git a/intern/cycles/util/util_md5.h b/intern/cycles/util/util_md5.h index 43e08e64f39..aab177d9fe6 100644 --- a/intern/cycles/util/util_md5.h +++ b/intern/cycles/util/util_md5.h @@ -44,7 +44,7 @@ public: bool append_file(const string& filepath); string get_hex(); - protected: +protected: void process(const uint8_t *data); void finish(uint8_t digest[16]); diff --git a/source/creator/CMakeLists.txt b/source/creator/CMakeLists.txt index 1d5f762d706..c06669c3ac2 100644 --- a/source/creator/CMakeLists.txt +++ b/source/creator/CMakeLists.txt @@ -737,14 +737,6 @@ elseif(APPLE) endif() - #OSL shader_headers needed - if(WITH_CYCLES_OSL) - install( - FILES ${LIBDIR}/osl/shaders/oslutil.h ${LIBDIR}/osl/shaders/stdosl.h - DESTINATION ${TARGETDIR}/blender.app/Contents/shaders/ - ) - endif() - # install blenderplayer bundle - copy of blender.app above. re-using macros et al # note we are using OSX Bundle as base and copying Blender dummy bundle on top of it if(WITH_GAMEENGINE AND WITH_PLAYER)