|
Blender
V2.93
|
#include <osl_services.h>
Inherits OSL::RendererServices.
Public Member Functions | |
| OSLRenderServices (OSL::TextureSystem *texture_system) | |
| ~OSLRenderServices () | |
| bool | get_matrix (OSL::ShaderGlobals *sg, OSL::Matrix44 &result, OSL::TransformationPtr xform, float time) override |
| bool | get_inverse_matrix (OSL::ShaderGlobals *sg, OSL::Matrix44 &result, OSL::TransformationPtr xform, float time) override |
| bool | get_matrix (OSL::ShaderGlobals *sg, OSL::Matrix44 &result, ustring from, float time) override |
| bool | get_inverse_matrix (OSL::ShaderGlobals *sg, OSL::Matrix44 &result, ustring to, float time) override |
| bool | get_matrix (OSL::ShaderGlobals *sg, OSL::Matrix44 &result, OSL::TransformationPtr xform) override |
| bool | get_inverse_matrix (OSL::ShaderGlobals *sg, OSL::Matrix44 &result, OSL::TransformationPtr xform) override |
| bool | get_matrix (OSL::ShaderGlobals *sg, OSL::Matrix44 &result, ustring from) override |
| bool | get_inverse_matrix (OSL::ShaderGlobals *sg, OSL::Matrix44 &result, ustring from) override |
| bool | get_array_attribute (OSL::ShaderGlobals *sg, bool derivatives, ustring object, TypeDesc type, ustring name, int index, void *val) override |
| bool | get_attribute (OSL::ShaderGlobals *sg, bool derivatives, ustring object, TypeDesc type, ustring name, void *val) override |
| bool | get_attribute (ShaderData *sd, bool derivatives, ustring object_name, TypeDesc type, ustring name, void *val) |
| bool | get_userdata (bool derivatives, ustring name, TypeDesc type, OSL::ShaderGlobals *sg, void *val) override |
| int | pointcloud_search (OSL::ShaderGlobals *sg, ustring filename, const OSL::Vec3 ¢er, float radius, int max_points, bool sort, size_t *out_indices, float *out_distances, int derivs_offset) override |
| int | pointcloud_get (OSL::ShaderGlobals *sg, ustring filename, size_t *indices, int count, ustring attr_name, TypeDesc attr_type, void *out_data) override |
| bool | pointcloud_write (OSL::ShaderGlobals *sg, ustring filename, const OSL::Vec3 &pos, int nattribs, const ustring *names, const TypeDesc *types, const void **data) override |
| bool | trace (TraceOpt &options, OSL::ShaderGlobals *sg, const OSL::Vec3 &P, const OSL::Vec3 &dPdx, const OSL::Vec3 &dPdy, const OSL::Vec3 &R, const OSL::Vec3 &dRdx, const OSL::Vec3 &dRdy) override |
| bool | getmessage (OSL::ShaderGlobals *sg, ustring source, ustring name, TypeDesc type, void *val, bool derivatives) override |
| TextureSystem::TextureHandle * | get_texture_handle (ustring filename) override |
| bool | good (TextureSystem::TextureHandle *texture_handle) override |
| bool | texture (ustring filename, TextureSystem::TextureHandle *texture_handle, TexturePerthread *texture_thread_info, TextureOpt &options, OSL::ShaderGlobals *sg, float s, float t, float dsdx, float dtdx, float dsdy, float dtdy, int nchannels, float *result, float *dresultds, float *dresultdt, ustring *errormessage) override |
| bool | texture3d (ustring filename, TextureHandle *texture_handle, TexturePerthread *texture_thread_info, TextureOpt &options, OSL::ShaderGlobals *sg, const OSL::Vec3 &P, const OSL::Vec3 &dPdx, const OSL::Vec3 &dPdy, const OSL::Vec3 &dPdz, int nchannels, float *result, float *dresultds, float *dresultdt, float *dresultdr, ustring *errormessage) override |
| bool | environment (ustring filename, TextureHandle *texture_handle, TexturePerthread *texture_thread_info, TextureOpt &options, OSL::ShaderGlobals *sg, const OSL::Vec3 &R, const OSL::Vec3 &dRdx, const OSL::Vec3 &dRdy, int nchannels, float *result, float *dresultds, float *dresultdt, ustring *errormessage) override |
| bool | get_texture_info (OSL::ShaderGlobals *sg, ustring filename, TextureHandle *texture_handle, int subimage, ustring dataname, TypeDesc datatype, void *data) override |
Static Public Member Functions | |
| static bool | get_background_attribute (KernelGlobals *kg, ShaderData *sd, ustring name, TypeDesc type, bool derivatives, void *val) |
| static bool | get_object_standard_attribute (KernelGlobals *kg, ShaderData *sd, ustring name, TypeDesc type, bool derivatives, void *val) |
Public Attributes | |
| OSL::TextureSystem * | texture_system |
| OSLTextureHandleMap | textures |
Static Public Attributes | |
| static ustring | u_distance |
| static ustring | u_index |
| static ustring | u_world |
| static ustring | u_camera |
| static ustring | u_screen |
| static ustring | u_raster |
| static ustring | u_ndc |
| static ustring | u_object_location |
| static ustring | u_object_color |
| static ustring | u_object_index |
| static ustring | u_geom_dupli_generated |
| static ustring | u_geom_dupli_uv |
| static ustring | u_material_index |
| static ustring | u_object_random |
| static ustring | u_particle_index |
| static ustring | u_particle_random |
| static ustring | u_particle_age |
| static ustring | u_particle_lifetime |
| static ustring | u_particle_location |
| static ustring | u_particle_rotation |
| static ustring | u_particle_size |
| static ustring | u_particle_velocity |
| static ustring | u_particle_angular_velocity |
| static ustring | u_geom_numpolyvertices |
| static ustring | u_geom_trianglevertices |
| static ustring | u_geom_polyvertices |
| static ustring | u_geom_name |
| static ustring | u_geom_undisplaced |
| static ustring | u_is_smooth |
| static ustring | u_is_curve |
| static ustring | u_curve_thickness |
| static ustring | u_curve_tangent_normal |
| static ustring | u_curve_random |
| static ustring | u_path_ray_length |
| static ustring | u_path_ray_depth |
| static ustring | u_path_diffuse_depth |
| static ustring | u_path_glossy_depth |
| static ustring | u_path_transparent_depth |
| static ustring | u_path_transmission_depth |
| static ustring | u_trace |
| static ustring | u_hit |
| static ustring | u_hitdist |
| static ustring | u_N |
| static ustring | u_Ng |
| static ustring | u_P |
| static ustring | u_I |
| static ustring | u_u |
| static ustring | u_v |
| static ustring | u_empty |
| static ustring | u_at_bevel |
| static ustring | u_at_ao |
Definition at line 79 of file osl_services.h.
| OSLRenderServices::OSLRenderServices | ( | OSL::TextureSystem * | texture_system | ) |
Definition at line 129 of file osl_services.cpp.
| OSLRenderServices::~OSLRenderServices | ( | ) |
Definition at line 134 of file osl_services.cpp.
References texture_system, and VLOG.
|
override |
Definition at line 1444 of file osl_services.cpp.
References NULL, OSLTextureHandle::oiio_handle, options, OSLTextureHandle::processor, R, result, ShaderData, texture_system, and ColorSpaceManager::to_scene_linear().
|
override |
Definition at line 393 of file osl_services.cpp.
|
override |
Definition at line 1065 of file osl_services.cpp.
References NULL, ShaderData, and type.
Referenced by getmessage().
| bool OSLRenderServices::get_attribute | ( | ShaderData * | sd, |
| bool | derivatives, | ||
| ustring | object_name, | ||
| TypeDesc | type, | ||
| ustring | name, | ||
| void * | val | ||
| ) |
Definition at line 1079 of file osl_services.cpp.
References ATTR_ELEMENT_OBJECT, ATTR_PRIM_TYPES, attribute_primitive_type(), get_background_attribute(), get_mesh_attribute(), get_object_attribute(), get_object_standard_attribute(), get_primitive_attribute(), kg, OBJECT_NONE, type, and u_empty.
|
static |
Definition at line 991 of file osl_services.cpp.
References CAMERA_ORTHOGRAPHIC, camera_world_to_ndc(), kernel_data, kg, OBJECT_NONE, PATH_RAY_CAMERA, set_attribute_float(), set_attribute_float3(), set_attribute_int(), state, type, u_ndc, u_path_diffuse_depth, u_path_glossy_depth, u_path_ray_depth, u_path_ray_length, u_path_transmission_depth, and u_path_transparent_depth.
Referenced by get_attribute().
|
override |
Definition at line 310 of file osl_services.cpp.
References copy_matrix(), kg, object_fetch_transform(), OBJECT_INVERSE_TRANSFORM, OBJECT_NONE, PRIMITIVE_LAMP, result, and ShaderData.
|
override |
Definition at line 178 of file osl_services.cpp.
References copy_matrix(), kg, object_fetch_transform(), OBJECT_INVERSE_TRANSFORM, OBJECT_NONE, PRIMITIVE_LAMP, result, ShaderData, and time.
|
override |
Definition at line 366 of file osl_services.cpp.
References copy_matrix(), kernel_data, kg, result, ShaderData, u_camera, u_ndc, u_raster, and u_screen.
|
override |
Definition at line 247 of file osl_services.cpp.
References copy_matrix(), kernel_data, kg, result, ShaderData, u_camera, u_ndc, u_raster, u_screen, and u_world.
|
override |
Definition at line 279 of file osl_services.cpp.
References copy_matrix(), kg, object_fetch_transform(), OBJECT_NONE, OBJECT_TRANSFORM, PRIMITIVE_LAMP, result, and ShaderData.
|
override |
Definition at line 141 of file osl_services.cpp.
References copy_matrix(), kg, NULL, object_fetch_transform(), OBJECT_NONE, OBJECT_TRANSFORM, PRIMITIVE_LAMP, result, ShaderData, and time.
|
override |
Definition at line 341 of file osl_services.cpp.
References copy_matrix(), from, kernel_data, kg, result, ShaderData, u_camera, u_ndc, u_raster, and u_screen.
|
override |
Definition at line 215 of file osl_services.cpp.
References copy_matrix(), from, kernel_data, kg, result, ShaderData, u_camera, u_ndc, u_raster, u_screen, and u_world.
|
static |
Definition at line 860 of file osl_services.cpp.
References hash_uint2_to_float(), kg, motion_triangle_vertices(), object_color(), object_dupli_generated(), object_dupli_uv(), object_location(), object_particle_id(), object_pass_id(), object_position_transform(), object_random_number(), P(), particle_age(), particle_angular_velocity(), particle_index(), particle_lifetime(), particle_location(), particle_rotation(), particle_size(), particle_velocity(), PRIMITIVE_ALL_CURVE, PRIMITIVE_ALL_TRIANGLE, PRIMITIVE_TRIANGLE, SD_OBJECT_TRANSFORM_APPLIED, set_attribute_float(), set_attribute_float3(), set_attribute_float3_3(), set_attribute_float4(), set_attribute_int(), set_attribute_string(), shader_pass_id(), SHADER_SMOOTH_NORMAL, triangle_vertices(), type, u_curve_tangent_normal, u_curve_thickness, u_geom_dupli_generated, u_geom_dupli_uv, u_geom_name, u_geom_numpolyvertices, u_geom_polyvertices, u_geom_trianglevertices, u_is_curve, u_is_smooth, u_material_index, u_object_color, u_object_index, u_object_location, u_object_random, u_particle_age, u_particle_angular_velocity, u_particle_index, u_particle_lifetime, u_particle_location, u_particle_random, u_particle_rotation, u_particle_size, and u_particle_velocity.
Referenced by get_attribute().
|
override |
Definition at line 1148 of file osl_services.cpp.
References NULL, OSLTextureHandle::OIIO, and textures.
|
override |
Definition at line 1514 of file osl_services.cpp.
References data, dataname(), OSLTextureHandle::OIIO, and OSLTextureHandle::type.
|
override |
Definition at line 1137 of file osl_services.cpp.
|
override |
Definition at line 1629 of file osl_services.cpp.
References get_attribute(), if(), kg, set_attribute_float(), set_attribute_float3(), set_attribute_int(), shader_setup_from_ray(), ShaderData, type, u_empty, u_hit, u_hitdist, u_I, u_N, u_Ng, u_P, u_trace, u_u, and u_v.
|
override |
Definition at line 1178 of file osl_services.cpp.
References OSLTextureHandle::oiio_handle, and texture_system.
|
override |
Definition at line 1548 of file osl_services.cpp.
|
override |
Definition at line 1535 of file osl_services.cpp.
|
override |
Definition at line 1559 of file osl_services.cpp.
|
override |
Definition at line 1191 of file osl_services.cpp.
References OSLTextureHandle::AO, OSLTextureHandle::BEVEL, OSLTextureHandle::IES, kernel_ies_interp(), CCL_NAMESPACE_BEGIN::kernel_tex_image_interp(), make_float3, N, NODE_AO_GLOBAL_RADIUS, NODE_AO_INSIDE, NODE_AO_ONLY_LOCAL, NULL, OSLTextureHandle::OIIO, OSLTextureHandle::oiio_handle, options, OSLTextureHandle::processor, result, ShaderData, state, OSLTextureHandle::SVM, OSLTextureHandle::svm_slot, t, texture_system, ColorSpaceManager::to_scene_linear(), and OSLTextureHandle::type.
|
override |
Definition at line 1334 of file osl_services.cpp.
References OSLTextureHandle::AO, OSLTextureHandle::BEVEL, OSLTextureHandle::IES, INTERPOLATION_NONE, CCL_NAMESPACE_BEGIN::kernel_tex_image_interp_3d(), make_float3, NULL, OSLTextureHandle::OIIO, OSLTextureHandle::oiio_handle, options, P(), OSLTextureHandle::processor, result, ShaderData, OSLTextureHandle::SVM, OSLTextureHandle::svm_slot, texture_system, ColorSpaceManager::to_scene_linear(), and OSLTextureHandle::type.
|
override |
Definition at line 1570 of file osl_services.cpp.
References BVH_LAYOUT_NONE, Ray::D, Ray::dD, dot(), Ray::dP, differential3::dx, differential3::dy, if(), kernel_data, kg, options, Ray::P, P(), PATH_RAY_ALL_VISIBILITY, PATH_RAY_SHADOW_OPAQUE, R, ray_offset(), scene_intersect(), ShaderData, Ray::t, Ray::time, and TO_FLOAT3.
| OSL::TextureSystem* OSLRenderServices::texture_system |
Definition at line 314 of file osl_services.h.
Referenced by environment(), good(), texture(), texture3d(), and ~OSLRenderServices().
| OSLTextureHandleMap OSLRenderServices::textures |
Definition at line 315 of file osl_services.h.
|
static |
Definition at line 308 of file osl_services.h.
|
static |
Definition at line 307 of file osl_services.h.
|
static |
Definition at line 261 of file osl_services.h.
Referenced by get_inverse_matrix(), and get_matrix().
|
static |
Definition at line 290 of file osl_services.h.
|
static |
Definition at line 289 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 288 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 258 of file osl_services.h.
|
static |
Definition at line 306 of file osl_services.h.
Referenced by get_attribute(), getmessage(), and set_attribute_string().
|
static |
Definition at line 268 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 269 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 284 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 281 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 283 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 282 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 285 of file osl_services.h.
|
static |
Definition at line 298 of file osl_services.h.
Referenced by getmessage().
|
static |
Definition at line 299 of file osl_services.h.
Referenced by getmessage().
|
static |
Definition at line 303 of file osl_services.h.
Referenced by getmessage().
|
static |
Definition at line 259 of file osl_services.h.
|
static |
Definition at line 287 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 286 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 270 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 300 of file osl_services.h.
Referenced by getmessage().
|
static |
Definition at line 264 of file osl_services.h.
Referenced by get_background_attribute(), get_inverse_matrix(), and get_matrix().
|
static |
Definition at line 301 of file osl_services.h.
Referenced by getmessage().
|
static |
Definition at line 266 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 267 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 265 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 271 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 302 of file osl_services.h.
Referenced by getmessage().
|
static |
Definition at line 274 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 280 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 272 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 275 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 276 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 273 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 277 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 278 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 279 of file osl_services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 293 of file osl_services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 294 of file osl_services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 292 of file osl_services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 291 of file osl_services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 296 of file osl_services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 295 of file osl_services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 263 of file osl_services.h.
Referenced by get_inverse_matrix(), and get_matrix().
|
static |
Definition at line 262 of file osl_services.h.
Referenced by get_inverse_matrix(), and get_matrix().
|
static |
Definition at line 297 of file osl_services.h.
Referenced by getmessage().
|
static |
Definition at line 304 of file osl_services.h.
Referenced by getmessage().
|
static |
Definition at line 305 of file osl_services.h.
Referenced by getmessage().
|
static |
Definition at line 260 of file osl_services.h.
Referenced by get_inverse_matrix(), and get_matrix().