Blender
V3.3
|
#include <services.h>
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 (const KernelGlobalsCPU *kg, ShaderData *sd, ustring name, TypeDesc type, bool derivatives, void *val) |
static bool | get_object_standard_attribute (const KernelGlobalsCPU *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_alpha |
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_length |
static ustring | u_curve_tangent_normal |
static ustring | u_curve_random |
static ustring | u_is_point |
static ustring | u_point_position |
static ustring | u_point_radius |
static ustring | u_point_random |
static ustring | u_normal_map_normal |
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 74 of file services.h.
OSLRenderServices::OSLRenderServices | ( | OSL::TextureSystem * | texture_system | ) |
Definition at line 127 of file services.cpp.
OSLRenderServices::~OSLRenderServices | ( | ) |
Definition at line 132 of file services.cpp.
References texture_system, and VLOG_INFO.
|
override |
Definition at line 1529 of file services.cpp.
References kernel_globals, NULL, OSLTextureHandle::oiio_handle, options, OSLTextureHandle::processor, R, result, ShaderData, texture_system, and ColorSpaceManager::to_scene_linear().
|
override |
Definition at line 387 of file services.cpp.
|
override |
Definition at line 1116 of file 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 1130 of file services.cpp.
References ATTR_ELEMENT_OBJECT, ATTR_PRIM_TYPES, Attribute, attribute_primitive_type(), get_background_attribute(), get_mesh_attribute(), get_object_attribute(), get_object_standard_attribute(), get_primitive_attribute(), OBJECT_NONE, type, and u_empty.
|
static |
Definition at line 1031 of file services.cpp.
References CAMERA_ORTHOGRAPHIC, camera_world_to_ndc(), kernel_data, 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, u_path_transparent_depth, and zero_float3().
Referenced by get_attribute().
|
override |
Definition at line 307 of file services.cpp.
References copy_matrix(), lamp_fetch_transform(), object_get_inverse_transform(), OBJECT_NONE, PRIMITIVE_LAMP, result, and ShaderData.
|
override |
Definition at line 177 of file services.cpp.
References copy_matrix(), lamp_fetch_transform(), object_get_inverse_transform(), OBJECT_NONE, PRIMITIVE_LAMP, result, ShaderData, and time.
|
override |
Definition at line 360 of file services.cpp.
References copy_matrix(), kernel_data, result, ShaderData, u_camera, u_ndc, u_raster, and u_screen.
|
override |
Definition at line 247 of file services.cpp.
References copy_matrix(), kernel_data, result, ShaderData, u_camera, u_ndc, u_raster, u_screen, and u_world.
|
override |
Definition at line 279 of file services.cpp.
References copy_matrix(), lamp_fetch_transform(), object_get_transform(), OBJECT_NONE, PRIMITIVE_LAMP, result, and ShaderData.
|
override |
Definition at line 139 of file services.cpp.
References copy_matrix(), lamp_fetch_transform(), NULL, object_get_transform(), OBJECT_NONE, PRIMITIVE_LAMP, result, ShaderData, and time.
|
override |
Definition at line 335 of file services.cpp.
References copy_matrix(), from, kernel_data, result, ShaderData, u_camera, u_ndc, u_raster, and u_screen.
|
override |
Definition at line 215 of file services.cpp.
References copy_matrix(), from, kernel_data, result, ShaderData, u_camera, u_ndc, u_raster, u_screen, and u_world.
|
static |
Definition at line 859 of file services.cpp.
References hash_uint2_to_float(), motion_triangle_vertices(), object_alpha(), 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_CURVE, PRIMITIVE_MOTION, PRIMITIVE_POINT, 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_smooth_normal_unnormalized(), triangle_vertices(), type, u_curve_random, 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_point, u_is_smooth, u_material_index, u_normal_map_normal, u_object_alpha, 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, u_particle_velocity, u_point_position, u_point_radius, and u_point_random.
Referenced by get_attribute().
|
override |
Definition at line 1199 of file services.cpp.
References NULL, OSLTextureHandle::OIIO, and textures.
|
override |
Definition at line 1599 of file services.cpp.
References data, dataname(), OSLTextureHandle::OIIO, and OSLTextureHandle::type.
|
override |
Definition at line 1188 of file services.cpp.
|
override |
Definition at line 1723 of file services.cpp.
References get_attribute(), if(), 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 1229 of file services.cpp.
References OSLTextureHandle::oiio_handle, and texture_system.
|
override |
Definition at line 1633 of file services.cpp.
|
override |
Definition at line 1620 of file services.cpp.
|
override |
Definition at line 1644 of file services.cpp.
|
override |
Definition at line 1242 of file services.cpp.
References OSLTextureHandle::AO, OSLTextureHandle::BEVEL, OSLTextureHandle::IES, kernel_globals, kernel_ies_interp(), CCL_NAMESPACE_BEGIN::kernel_tex_image_interp(), make_float3, make_float4, N, NODE_AO_GLOBAL_RADIUS, NODE_AO_INSIDE, NODE_AO_ONLY_LOCAL, NULL, num_samples, OSLTextureHandle::OIIO, OSLTextureHandle::oiio_handle, options, OSLTextureHandle::processor, result, usdtokens::rgba(), ShaderData, state, OSLTextureHandle::SVM, OSLTextureHandle::svm_slots, t, TEX_IMAGE_MISSING_A, TEX_IMAGE_MISSING_B, TEX_IMAGE_MISSING_G, TEX_IMAGE_MISSING_R, texture_system, tile, ColorSpaceManager::to_scene_linear(), OSLTextureHandle::type, int4::w, int4::x, int4::y, and int4::z.
|
override |
Definition at line 1419 of file services.cpp.
References OSLTextureHandle::AO, OSLTextureHandle::BEVEL, OSLTextureHandle::IES, INTERPOLATION_NONE, kernel_globals, CCL_NAMESPACE_BEGIN::kernel_tex_image_interp_3d(), make_float3, NULL, OSLTextureHandle::OIIO, OSLTextureHandle::oiio_handle, options, P(), OSLTextureHandle::processor, result, usdtokens::rgba(), ShaderData, OSLTextureHandle::SVM, OSLTextureHandle::svm_slots, texture_system, ColorSpaceManager::to_scene_linear(), and OSLTextureHandle::type.
|
override |
Definition at line 1655 of file services.cpp.
References BVH_LAYOUT_NONE, Ray::D, Ray::dD, differential_make_compact(), Ray::dP, differential3::dx, differential3::dy, if(), kernel_data, RaySelfPrimitives::light_object, RaySelfPrimitives::light_prim, RaySelfPrimitives::object, OBJECT_NONE, options, Ray::P, P(), PATH_RAY_ALL_VISIBILITY, PATH_RAY_SHADOW_OPAQUE, RaySelfPrimitives::prim, PRIM_NONE, R, scene_intersect(), Ray::self, ShaderData, Ray::time, Ray::tmax, Ray::tmin, and TO_FLOAT3.
OSL::TextureSystem* OSLRenderServices::texture_system |
Definition at line 324 of file services.h.
Referenced by environment(), good(), texture(), texture3d(), and ~OSLRenderServices().
OSLTextureHandleMap OSLRenderServices::textures |
Definition at line 325 of file services.h.
|
static |
Definition at line 318 of file services.h.
|
static |
Definition at line 317 of file services.h.
|
static |
Definition at line 264 of file services.h.
Referenced by get_inverse_matrix(), and get_matrix().
|
static |
Definition at line 293 of file services.h.
|
static |
Definition at line 295 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 294 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 292 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 261 of file services.h.
|
static |
Definition at line 316 of file services.h.
Referenced by get_attribute(), getmessage(), and set_attribute_string().
|
static |
Definition at line 272 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 273 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 288 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 285 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 287 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 286 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 289 of file services.h.
|
static |
Definition at line 308 of file services.h.
Referenced by getmessage().
|
static |
Definition at line 309 of file services.h.
Referenced by getmessage().
|
static |
Definition at line 313 of file services.h.
Referenced by getmessage().
|
static |
Definition at line 262 of file services.h.
|
static |
Definition at line 291 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 296 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 290 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 274 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 310 of file services.h.
Referenced by getmessage().
|
static |
Definition at line 267 of file services.h.
Referenced by get_background_attribute(), get_inverse_matrix(), and get_matrix().
|
static |
Definition at line 311 of file services.h.
Referenced by getmessage().
|
static |
Definition at line 300 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 270 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 269 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 271 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 268 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 275 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 312 of file services.h.
Referenced by getmessage().
|
static |
Definition at line 278 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 284 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 276 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 279 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 280 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 277 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 281 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 282 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 283 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 303 of file services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 304 of file services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 302 of file services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 301 of file services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 306 of file services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 305 of file services.h.
Referenced by get_background_attribute().
|
static |
Definition at line 297 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 298 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 299 of file services.h.
Referenced by get_object_standard_attribute().
|
static |
Definition at line 266 of file services.h.
Referenced by get_inverse_matrix(), and get_matrix().
|
static |
Definition at line 265 of file services.h.
Referenced by get_inverse_matrix(), and get_matrix().
|
static |
Definition at line 307 of file services.h.
Referenced by getmessage().
|
static |
Definition at line 314 of file services.h.
Referenced by getmessage().
|
static |
Definition at line 315 of file services.h.
Referenced by getmessage().
|
static |
Definition at line 263 of file services.h.
Referenced by get_inverse_matrix(), and get_matrix().