|
Blender V4.3
|
#include "kernel/tables.h"#include "kernel/util/differential.h"#include "kernel/osl/osl.h"#include "kernel/svm/math_util.h"#include "kernel/util/color.h"#include "kernel/geom/object.h"#include "util/transform.h"#include "kernel/geom/geom.h"#include "kernel/svm/noise.h"#include "util/hash.h"#include "kernel/util/ies.h"Go to the source code of this file.
Namespaces | |
| namespace | DeviceStrings |
Typedefs | |
| typedef long long | TypeDesc |
| #define OSL_NOISE_IMPL | ( | name, | |
| op ) |
Definition at line 1374 of file services_gpu.h.
| #define OSL_OP_IMPL_DFDF | ( | name, | |
| op ) |
Definition at line 1794 of file services_gpu.h.
| #define OSL_OP_IMPL_DFDFDF | ( | name, | |
| op ) |
Definition at line 1873 of file services_gpu.h.
| #define OSL_OP_IMPL_DFDFDFDF | ( | name, | |
| op ) |
Definition at line 2066 of file services_gpu.h.
| #define OSL_OP_IMPL_DFDFDFF | ( | name, | |
| op ) |
Definition at line 2058 of file services_gpu.h.
| #define OSL_OP_IMPL_DFDFF | ( | name, | |
| op ) |
Definition at line 1865 of file services_gpu.h.
| #define OSL_OP_IMPL_DFDFFDF | ( | name, | |
| op ) |
Definition at line 2050 of file services_gpu.h.
| #define OSL_OP_IMPL_DFDFFF | ( | name, | |
| op ) |
Definition at line 2042 of file services_gpu.h.
| #define OSL_OP_IMPL_DFDV | ( | name, | |
| op ) |
Definition at line 1801 of file services_gpu.h.
| #define OSL_OP_IMPL_DFDVDV | ( | name, | |
| op ) |
Definition at line 1897 of file services_gpu.h.
| #define OSL_OP_IMPL_DFDVV | ( | name, | |
| op ) |
Definition at line 1889 of file services_gpu.h.
| #define OSL_OP_IMPL_DFFDF | ( | name, | |
| op ) |
Definition at line 1857 of file services_gpu.h.
| #define OSL_OP_IMPL_DFFDFDF | ( | name, | |
| op ) |
Definition at line 2033 of file services_gpu.h.
| #define OSL_OP_IMPL_DFFDFF | ( | name, | |
| op ) |
Definition at line 2025 of file services_gpu.h.
| #define OSL_OP_IMPL_DFFFDF | ( | name, | |
| op ) |
Definition at line 2017 of file services_gpu.h.
| #define OSL_OP_IMPL_DFVDV | ( | name, | |
| op ) |
Definition at line 1881 of file services_gpu.h.
| #define OSL_OP_IMPL_DVDV | ( | name, | |
| op ) |
Definition at line 1825 of file services_gpu.h.
| #define OSL_OP_IMPL_DVDV_ | ( | name, | |
| op ) |
Definition at line 1832 of file services_gpu.h.
| #define OSL_OP_IMPL_DVDVDF_ | ( | name, | |
| op ) |
Definition at line 1983 of file services_gpu.h.
| #define OSL_OP_IMPL_DVDVDV | ( | name, | |
| op ) |
Definition at line 1993 of file services_gpu.h.
| #define OSL_OP_IMPL_DVDVDV_ | ( | name, | |
| op ) |
Definition at line 2001 of file services_gpu.h.
| #define OSL_OP_IMPL_DVDVF_ | ( | name, | |
| op ) |
Definition at line 1937 of file services_gpu.h.
| #define OSL_OP_IMPL_DVDVV | ( | name, | |
| op ) |
Definition at line 1965 of file services_gpu.h.
| #define OSL_OP_IMPL_DVDVV_ | ( | name, | |
| op ) |
Definition at line 1973 of file services_gpu.h.
| #define OSL_OP_IMPL_DVVDF_ | ( | name, | |
| op ) |
Definition at line 1927 of file services_gpu.h.
| #define OSL_OP_IMPL_DVVDV | ( | name, | |
| op ) |
Definition at line 1947 of file services_gpu.h.
| #define OSL_OP_IMPL_DVVDV_ | ( | name, | |
| op ) |
Definition at line 1955 of file services_gpu.h.
| #define OSL_OP_IMPL_FF | ( | name, | |
| op ) |
Definition at line 1789 of file services_gpu.h.
| #define OSL_OP_IMPL_FFF | ( | name, | |
| op ) |
Definition at line 1847 of file services_gpu.h.
| #define OSL_OP_IMPL_FFFF | ( | name, | |
| op ) |
Definition at line 2012 of file services_gpu.h.
| #define OSL_OP_IMPL_FV | ( | name, | |
| op ) |
Definition at line 1808 of file services_gpu.h.
| #define OSL_OP_IMPL_FVV | ( | name, | |
| op ) |
Definition at line 1852 of file services_gpu.h.
| #define OSL_OP_IMPL_IF | ( | name, | |
| op ) |
Definition at line 1784 of file services_gpu.h.
| #define OSL_OP_IMPL_II | ( | name, | |
| op ) |
Definition at line 1779 of file services_gpu.h.
| #define OSL_OP_IMPL_III | ( | name, | |
| op ) |
Definition at line 1842 of file services_gpu.h.
| #define OSL_OP_IMPL_VV | ( | name, | |
| op ) |
Definition at line 1813 of file services_gpu.h.
| #define OSL_OP_IMPL_VV_ | ( | name, | |
| op ) |
Definition at line 1818 of file services_gpu.h.
| #define OSL_OP_IMPL_VVF_ | ( | name, | |
| op ) |
Definition at line 1905 of file services_gpu.h.
| #define OSL_OP_IMPL_VVV | ( | name, | |
| op ) |
Definition at line 1913 of file services_gpu.h.
| #define OSL_OP_IMPL_VVV_ | ( | name, | |
| op ) |
Definition at line 1919 of file services_gpu.h.
| #define OSL_OP_IMPL_XX | ( | name, | |
| op ) |
Definition at line 2077 of file services_gpu.h.
| #define OSL_OP_IMPL_XXX | ( | name, | |
| op ) |
Definition at line 2083 of file services_gpu.h.
| typedef long long TypeDesc |
Definition at line 811 of file services_gpu.h.
| ccl_device_forceinline Transform convert_transform | ( | ccl_private const float * | m | ) |
Definition at line 492 of file services_gpu.h.
References make_transform().
Referenced by osl_div_mfm(), osl_div_mmm(), osl_mul_mmm(), osl_transform_dvmdv(), osl_transform_vmv(), osl_transformn_dvmdv(), osl_transformn_vmv(), osl_transformv_dvmdv(), and osl_transformv_vmv().
| ccl_device_forceinline void copy_identity_matrix | ( | ccl_private float * | res, |
| float | value = 1.0f ) |
Definition at line 473 of file services_gpu.h.
Referenced by osl_div_m_ff(), osl_get_inverse_matrix(), and osl_get_matrix().
| ccl_device_forceinline void copy_matrix | ( | ccl_private float * | res, |
| const ProjectionTransform & | tfm ) |
Definition at line 454 of file services_gpu.h.
References ProjectionTransform::w, ProjectionTransform::x, ProjectionTransform::y, and ProjectionTransform::z.
| ccl_device_forceinline void copy_matrix | ( | ccl_private float * | res, |
| const Transform & | tfm ) |
Definition at line 435 of file services_gpu.h.
References Transform::x, Transform::y, and Transform::z.
Referenced by osl_div_mfm(), osl_div_mmm(), osl_get_inverse_matrix(), osl_get_matrix(), osl_mul_mmm(), osl_transpose_mm(), and set_attribute_matrix().
| ccl_device_inline bool get_background_attribute | ( | KernelGlobals | kg, |
| ccl_private ShaderData * | sd, | ||
| DeviceString | name, | ||
| TypeDesc | type, | ||
| bool | derivatives, | ||
| ccl_private void * | val ) |
Definition at line 1026 of file services_gpu.h.
References set_attribute_float(), and DeviceStrings::u_path_ray_length.
Referenced by get_object_standard_attribute().
| ccl_device_inline bool get_object_attribute | ( | KernelGlobals | kg, |
| ccl_private ShaderData * | sd, | ||
| const AttributeDescriptor & | desc, | ||
| TypeDesc | type, | ||
| bool | derivatives, | ||
| ccl_private void * | val ) |
Definition at line 1042 of file services_gpu.h.
References NODE_ATTR_FLOAT, NODE_ATTR_FLOAT2, NODE_ATTR_FLOAT3, NODE_ATTR_FLOAT4, NODE_ATTR_MATRIX, NODE_ATTR_RGBA, primitive_attribute_matrix(), primitive_surface_attribute_float(), primitive_surface_attribute_float2(), primitive_surface_attribute_float3(), primitive_surface_attribute_float4(), set_attribute_float(), set_attribute_float2(), set_attribute_float3(), set_attribute_float4(), set_attribute_matrix(), and AttributeDescriptor::type.
Referenced by osl_get_attribute().
| ccl_device_inline bool get_object_standard_attribute | ( | KernelGlobals | kg, |
| ccl_private ShaderData * | sd, | ||
| DeviceString | name, | ||
| TypeDesc | type, | ||
| bool | derivatives, | ||
| ccl_private void * | val ) |
Definition at line 1101 of file services_gpu.h.
References get_background_attribute(), hash_uint2_to_float(), object_alpha(), object_color(), object_dupli_generated(), object_dupli_uv(), object_location(), object_particle_id(), object_pass_id(), object_random_number(), particle_age(), particle_angular_velocity(), particle_index(), particle_lifetime(), particle_location(), particle_rotation(), particle_size(), particle_velocity(), PRIMITIVE_CURVE, PRIMITIVE_LAMP, PRIMITIVE_POINT, PRIMITIVE_TRIANGLE, set_attribute_float(), set_attribute_float3(), set_attribute_float4(), shader_pass_id(), SHADER_SMOOTH_NORMAL, triangle_smooth_normal_unnormalized(), DeviceStrings::u_curve_random, DeviceStrings::u_curve_tangent_normal, DeviceStrings::u_curve_thickness, DeviceStrings::u_geom_dupli_generated, DeviceStrings::u_geom_dupli_uv, DeviceStrings::u_geom_name, DeviceStrings::u_geom_numpolyvertices, DeviceStrings::u_geom_polyvertices, DeviceStrings::u_geom_trianglevertices, DeviceStrings::u_is_curve, DeviceStrings::u_is_point, DeviceStrings::u_is_smooth, DeviceStrings::u_material_index, DeviceStrings::u_normal_map_normal, DeviceStrings::u_object_alpha, DeviceStrings::u_object_color, DeviceStrings::u_object_index, DeviceStrings::u_object_is_light, DeviceStrings::u_object_location, DeviceStrings::u_object_random, DeviceStrings::u_particle_age, DeviceStrings::u_particle_angular_velocity, DeviceStrings::u_particle_index, DeviceStrings::u_particle_lifetime, DeviceStrings::u_particle_location, DeviceStrings::u_particle_random, DeviceStrings::u_particle_rotation, DeviceStrings::u_particle_size, DeviceStrings::u_particle_velocity, DeviceStrings::u_point_position, DeviceStrings::u_point_radius, and DeviceStrings::u_point_random.
Referenced by osl_get_attribute().
| ccl_device_forceinline float hashnoise_1d | ( | float | p | ) |
Definition at line 1530 of file services_gpu.h.
References __float_as_uint, and hash_uint().
| ccl_device_forceinline float hashnoise_2d | ( | float2 | p | ) |
Definition at line 1535 of file services_gpu.h.
| ccl_device_forceinline float hashnoise_3d | ( | float3 | p | ) |
Definition at line 1541 of file services_gpu.h.
| ccl_device_forceinline float hashnoise_4d | ( | float4 | p | ) |
Definition at line 1548 of file services_gpu.h.
| ccl_device_extern ccl_private OSLClosure * osl_add_closure_closure | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private OSLClosure * | a, | ||
| ccl_private OSLClosure * | b ) |
Definition at line 186 of file services_gpu.h.
References b, ccl_private, OSL_CLOSURE_ADD_ID, and ShaderData.
| ccl_device_extern ccl_private OSLClosure * osl_allocate_closure_component | ( | ccl_private ShaderGlobals * | sg, |
| int | id, | ||
| int | size ) |
Definition at line 215 of file services_gpu.h.
References ccl_private, OSLClosure::id, one_float3(), and ShaderData.
| ccl_device_extern ccl_private OSLClosure * osl_allocate_weighted_closure_component | ( | ccl_private ShaderGlobals * | sg, |
| int | id, | ||
| int | size, | ||
| ccl_private const float3 * | weight ) |
Definition at line 235 of file services_gpu.h.
References ccl_private, OSLClosure::id, and ShaderData.
| ccl_device_extern float osl_area | ( | ccl_private const float3 * | p | ) |
Definition at line 2277 of file services_gpu.h.
| ccl_device_extern void osl_blackbody_vf | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float3 * | result, | ||
| float | temperature ) |
Definition at line 313 of file services_gpu.h.
References max, rec709_to_rgb(), svm_math_blackbody_color_rec709(), and zero_float3().
| ccl_device_extern void osl_calculatenormal | ( | ccl_private float3 * | res, |
| ccl_private ShaderGlobals * | sg, | ||
| ccl_private const float3 * | p ) |
Definition at line 2265 of file services_gpu.h.
References cross().
| ccl_device_extern void osl_div_m_ff | ( | ccl_private float * | res, |
| float | a, | ||
| float | b ) |
Definition at line 539 of file services_gpu.h.
References b, and copy_identity_matrix().
| ccl_device_extern void osl_div_mfm | ( | ccl_private float * | res, |
| float | a, | ||
| ccl_private const float * | b ) |
Definition at line 530 of file services_gpu.h.
References b, convert_transform(), copy_matrix(), and transform_inverse().
| ccl_device_extern void osl_div_mmf | ( | ccl_private float * | res, |
| ccl_private const float * | a, | ||
| float | b ) |
Definition at line 523 of file services_gpu.h.
References b.
| ccl_device_extern void osl_div_mmm | ( | ccl_private float * | res, |
| ccl_private const float * | a, | ||
| ccl_private const float * | b ) |
Definition at line 514 of file services_gpu.h.
References b, convert_transform(), copy_matrix(), and transform_inverse().
| ccl_device_extern bool osl_environment | ( | ccl_private ShaderGlobals * | sg, |
| DeviceString | filename, | ||
| ccl_private void * | texture_handle, | ||
| ccl_private OSLTextureOptions * | opt, | ||
| ccl_private const float3 * | R, | ||
| ccl_private const float3 * | dRdx, | ||
| ccl_private const float3 * | dRdy, | ||
| int | nchannels, | ||
| ccl_private float * | result, | ||
| ccl_private float * | dresultds, | ||
| ccl_private float * | dresultdt, | ||
| ccl_private float * | alpha, | ||
| ccl_private float * | dalphax, | ||
| ccl_private float * | dalphay, | ||
| ccl_private void * | errormessage ) |
Definition at line 1716 of file services_gpu.h.
| ccl_device_extern void osl_error | ( | ccl_private ShaderGlobals * | sg, |
| const char * | format, | ||
| void * | args ) |
Definition at line 260 of file services_gpu.h.
| ccl_device_extern float osl_filterwidth_fdf | ( | ccl_private const float * | x | ) |
Definition at line 2282 of file services_gpu.h.
References sqrtf.
Referenced by osl_filterwidth_vdv().
| ccl_device_extern void osl_filterwidth_vdv | ( | ccl_private float * | res, |
| ccl_private const float * | x ) |
Definition at line 2287 of file services_gpu.h.
References osl_filterwidth_fdf().
| ccl_device_extern bool osl_get_attribute | ( | ccl_private ShaderGlobals * | sg, |
| int | derivatives, | ||
| DeviceString | object_name, | ||
| DeviceString | name, | ||
| int | array_lookup, | ||
| int | index, | ||
| TypeDesc | type, | ||
| ccl_private void * | res ) |
Definition at line 1267 of file services_gpu.h.
References DeviceStrings::_emptystring_, ATTR_STD_NOT_FOUND, ccl_private, find_attribute(), get_object_attribute(), get_object_standard_attribute(), AttributeDescriptor::offset, and ShaderData.
| ccl_device_extern bool osl_get_from_to_matrix | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float * | res, | ||
| DeviceString | from, | ||
| DeviceString | to ) |
Definition at line 700 of file services_gpu.h.
References osl_get_inverse_matrix(), osl_get_matrix(), and osl_mul_mmm().
Referenced by osl_transform_triple().
| ccl_device_extern bool osl_get_inverse_matrix | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float * | res, | ||
| DeviceString | to ) |
Definition at line 643 of file services_gpu.h.
References ccl_private, copy_identity_matrix(), copy_matrix(), kernel_data, lamp_fetch_transform(), object_get_inverse_transform(), OBJECT_NONE, PRIMITIVE_LAMP, ShaderData, DeviceStrings::u_camera, DeviceStrings::u_common, DeviceStrings::u_ndc, DeviceStrings::u_object, DeviceStrings::u_raster, DeviceStrings::u_screen, DeviceStrings::u_shader, and DeviceStrings::u_world.
Referenced by osl_get_from_to_matrix(), and osl_transform_triple().
| ccl_device_extern bool osl_get_matrix | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float * | res, | ||
| DeviceString | from ) |
Definition at line 599 of file services_gpu.h.
References ccl_private, copy_identity_matrix(), copy_matrix(), kernel_data, lamp_fetch_transform(), object_get_transform(), OBJECT_NONE, PRIMITIVE_LAMP, ShaderData, DeviceStrings::u_camera, DeviceStrings::u_common, DeviceStrings::u_ndc, DeviceStrings::u_object, DeviceStrings::u_raster, DeviceStrings::u_screen, DeviceStrings::u_shader, and DeviceStrings::u_world.
Referenced by osl_get_from_to_matrix(), osl_prepend_matrix_from(), and osl_transform_triple().
| ccl_device_extern OSLNoiseOptions * osl_get_noise_options | ( | ccl_private ShaderGlobals * | sg | ) |
Definition at line 1344 of file services_gpu.h.
| ccl_device_extern ccl_private OSLTextureOptions * osl_get_texture_options | ( | ccl_private ShaderGlobals * | sg | ) |
Definition at line 1566 of file services_gpu.h.
| ccl_device_extern bool osl_get_textureinfo | ( | ccl_private ShaderGlobals * | sg, |
| DeviceString | filename, | ||
| ccl_private void * | texture_handle, | ||
| DeviceString | dataname, | ||
| int | basetype, | ||
| int | arraylen, | ||
| int | aggegrate, | ||
| ccl_private void * | data, | ||
| ccl_private void * | errormessage ) |
Definition at line 1748 of file services_gpu.h.
Referenced by osl_get_textureinfo_st().
| ccl_device_extern bool osl_get_textureinfo_st | ( | ccl_private ShaderGlobals * | sg, |
| DeviceString | filename, | ||
| ccl_private void * | texture_handle, | ||
| float | s, | ||
| float | t, | ||
| DeviceString | dataname, | ||
| int | basetype, | ||
| int | arraylen, | ||
| int | aggegrate, | ||
| ccl_private void * | data, | ||
| ccl_private void * | errormessage ) |
Definition at line 1761 of file services_gpu.h.
References osl_get_textureinfo().
| ccl_device_extern uint osl_hash_if | ( | float | x | ) |
Definition at line 1323 of file services_gpu.h.
References __float_as_uint, and hash_uint().
| ccl_device_extern uint osl_hash_iff | ( | float | x, |
| float | y ) |
Definition at line 1328 of file services_gpu.h.
References __float_as_uint, and hash_uint2().
| ccl_device_extern uint osl_hash_ii | ( | int | x | ) |
Definition at line 1318 of file services_gpu.h.
References hash_uint().
| ccl_device_extern uint osl_hash_iv | ( | ccl_private const float3 * | v | ) |
Definition at line 1333 of file services_gpu.h.
References __float_as_uint, hash_uint3(), and v.
| ccl_device_extern uint osl_hash_ivf | ( | ccl_private const float3 * | v, |
| float | w ) |
Definition at line 1338 of file services_gpu.h.
References __float_as_uint, hash_uint4(), v, and w().
| ccl_device_extern void osl_luminance_dfdv | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float * | result, | ||
| ccl_private float3 * | color ) |
Definition at line 340 of file services_gpu.h.
References osl_luminance_fv().
| ccl_device_extern void osl_luminance_fv | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float * | result, | ||
| ccl_private float3 * | color ) |
Definition at line 333 of file services_gpu.h.
References linear_rgb_to_gray().
Referenced by osl_luminance_dfdv().
| ccl_device_extern ccl_private OSLClosure * osl_mul_closure_color | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private OSLClosure * | a, | ||
| ccl_private const float3 * | weight ) |
Definition at line 128 of file services_gpu.h.
References ccl_private, OSLClosure::id, one_float3(), OSL_CLOSURE_MUL_ID, ShaderData, and zero_float3().
| ccl_device_extern ccl_private OSLClosure * osl_mul_closure_float | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private OSLClosure * | a, | ||
| float | weight ) |
Definition at line 157 of file services_gpu.h.
References ccl_private, OSLClosure::id, make_float3(), OSL_CLOSURE_MUL_ID, and ShaderData.
| ccl_device_extern void osl_mul_mmf | ( | ccl_private float * | res, |
| ccl_private const float * | a, | ||
| float | b ) |
Definition at line 507 of file services_gpu.h.
References b.
| ccl_device_extern void osl_mul_mmm | ( | ccl_private float * | res, |
| ccl_private const float * | a, | ||
| ccl_private const float * | b ) |
Definition at line 498 of file services_gpu.h.
References b, convert_transform(), and copy_matrix().
Referenced by osl_get_from_to_matrix(), and osl_prepend_matrix_from().
| ccl_device_extern void osl_noiseparams_set_anisotropic | ( | ccl_private OSLNoiseOptions * | opt, |
| int | anisotropic ) |
Definition at line 1349 of file services_gpu.h.
| ccl_device_extern void osl_noiseparams_set_bandwidth | ( | ccl_private OSLNoiseOptions * | opt, |
| float | bandwidth ) |
Definition at line 1364 of file services_gpu.h.
| ccl_device_extern void osl_noiseparams_set_direction | ( | ccl_private OSLNoiseOptions * | opt, |
| float3 * | direction ) |
Definition at line 1359 of file services_gpu.h.
| ccl_device_extern void osl_noiseparams_set_do_filter | ( | ccl_private OSLNoiseOptions * | opt, |
| int | do_filter ) |
Definition at line 1354 of file services_gpu.h.
| ccl_device_extern void osl_noiseparams_set_impulses | ( | ccl_private OSLNoiseOptions * | opt, |
| float | impulses ) |
Definition at line 1369 of file services_gpu.h.
| ccl_device_extern void osl_prepend_color_from | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float3 * | res, | ||
| DeviceString | from ) |
Definition at line 349 of file services_gpu.h.
References hsl_to_rgb(), hsv_to_rgb(), DeviceStrings::u_hsl, DeviceStrings::u_hsv, DeviceStrings::u_xyy, DeviceStrings::u_xyz, xyY_to_xyz(), and xyz_to_rgb().
| ccl_device_extern bool osl_prepend_matrix_from | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float * | res, | ||
| DeviceString | from ) |
Definition at line 687 of file services_gpu.h.
References osl_get_matrix(), and osl_mul_mmm().
| ccl_device_extern void osl_printf | ( | ccl_private ShaderGlobals * | sg, |
| const char * | format, | ||
| void * | args ) |
Definition at line 262 of file services_gpu.h.
| ccl_device_extern uint osl_range_check | ( | int | indexvalue, |
| int | length, | ||
| DeviceString | symname, | ||
| ccl_private ShaderGlobals * | sg, | ||
| DeviceString | sourcefile, | ||
| int | sourceline, | ||
| DeviceString | groupname, | ||
| int | layer, | ||
| DeviceString | layername, | ||
| DeviceString | shadername ) |
Definition at line 268 of file services_gpu.h.
References printf, and result.
Referenced by osl_range_check_err().
| ccl_device_extern uint osl_range_check_err | ( | int | indexvalue, |
| int | length, | ||
| DeviceString | symname, | ||
| ccl_private ShaderGlobals * | sg, | ||
| DeviceString | sourcefile, | ||
| int | sourceline, | ||
| DeviceString | groupname, | ||
| int | layer, | ||
| DeviceString | layername, | ||
| DeviceString | shadername ) |
Definition at line 288 of file services_gpu.h.
References osl_range_check().
| ccl_device_extern bool osl_raytype_bit | ( | ccl_private ShaderGlobals * | sg, |
| int | bit ) |
Definition at line 2294 of file services_gpu.h.
| ccl_device_extern void osl_sincos_dfdfdf | ( | ccl_private const float * | a, |
| ccl_private float * | b, | ||
| ccl_private float * | c ) |
Definition at line 2137 of file services_gpu.h.
| ccl_device_extern void osl_sincos_dfdff | ( | ccl_private const float * | a, |
| ccl_private float * | b, | ||
| ccl_private float * | c ) |
Definition at line 2121 of file services_gpu.h.
| ccl_device_extern void osl_sincos_dffdf | ( | ccl_private const float * | a, |
| ccl_private float * | b, | ||
| ccl_private float * | c ) |
Definition at line 2129 of file services_gpu.h.
| ccl_device_extern void osl_sincos_dvdvdv | ( | ccl_private const float3 * | a, |
| ccl_private float3 * | b, | ||
| ccl_private float3 * | c ) |
Definition at line 2173 of file services_gpu.h.
| ccl_device_extern void osl_sincos_dvdvv | ( | ccl_private const float3 * | a, |
| ccl_private float3 * | b, | ||
| ccl_private float3 * | c ) |
Definition at line 2153 of file services_gpu.h.
| ccl_device_extern void osl_sincos_dvvdv | ( | ccl_private const float3 * | a, |
| ccl_private float3 * | b, | ||
| ccl_private float3 * | c ) |
Definition at line 2163 of file services_gpu.h.
| ccl_device_extern void osl_sincos_fff | ( | float | a, |
| ccl_private float * | b, | ||
| ccl_private float * | c ) |
Definition at line 2117 of file services_gpu.h.
References b.
| ccl_device_extern void osl_sincos_vvv | ( | ccl_private const float3 * | a, |
| ccl_private float3 * | b, | ||
| ccl_private float3 * | c ) |
Definition at line 2145 of file services_gpu.h.
| ccl_device_extern bool osl_texture | ( | ccl_private ShaderGlobals * | sg, |
| DeviceString | filename, | ||
| ccl_private void * | texture_handle, | ||
| ccl_private OSLTextureOptions * | opt, | ||
| float | s, | ||
| float | t, | ||
| float | dsdx, | ||
| float | dtdx, | ||
| float | dsdy, | ||
| float | dtdy, | ||
| int | nchannels, | ||
| ccl_private float * | result, | ||
| ccl_private float * | dresultdx, | ||
| ccl_private float * | dresultdy, | ||
| ccl_private float * | alpha, | ||
| ccl_private float * | dalphadx, | ||
| ccl_private float * | dalphady, | ||
| ccl_private void * | errormessage ) |
Definition at line 1622 of file services_gpu.h.
References kernel_ies_interp(), kernel_tex_image_interp(), OSL_TEXTURE_HANDLE_SLOT, OSL_TEXTURE_HANDLE_TYPE, OSL_TEXTURE_HANDLE_TYPE_IES, and OSL_TEXTURE_HANDLE_TYPE_SVM.
| ccl_device_extern bool osl_texture3d | ( | ccl_private ShaderGlobals * | sg, |
| DeviceString | filename, | ||
| ccl_private void * | texture_handle, | ||
| ccl_private OSLTextureOptions * | opt, | ||
| ccl_private const float3 * | P, | ||
| ccl_private const float3 * | dPdx, | ||
| ccl_private const float3 * | dPdy, | ||
| ccl_private const float3 * | dPdz, | ||
| int | nchannels, | ||
| ccl_private float * | result, | ||
| ccl_private float * | dresultds, | ||
| ccl_private float * | dresultdt, | ||
| ccl_private float * | alpha, | ||
| ccl_private float * | dalphadx, | ||
| ccl_private float * | dalphady, | ||
| ccl_private void * | errormessage ) |
Definition at line 1673 of file services_gpu.h.
References INTERPOLATION_NONE, kernel_tex_image_interp_3d(), OSL_TEXTURE_HANDLE_SLOT, OSL_TEXTURE_HANDLE_TYPE, OSL_TEXTURE_HANDLE_TYPE_SVM, and P.
| ccl_device_extern void osl_texture_set_fill | ( | ccl_private OSLTextureOptions * | opt, |
| float | fill ) |
Definition at line 1601 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_firstchannel | ( | ccl_private OSLTextureOptions * | opt, |
| int | firstchannel ) |
Definition at line 1572 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_interp_code | ( | ccl_private OSLTextureOptions * | opt, |
| int | mode ) |
Definition at line 1605 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_missingcolor_alpha | ( | ccl_private OSLTextureOptions * | opt, |
| int | nchannels, | ||
| float | alpha ) |
Definition at line 1616 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_missingcolor_arena | ( | ccl_private OSLTextureOptions * | opt, |
| ccl_private float3 * | color ) |
Definition at line 1611 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_rblur | ( | ccl_private OSLTextureOptions * | opt, |
| float | blur ) |
Definition at line 1589 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_rwidth | ( | ccl_private OSLTextureOptions * | opt, |
| float | width ) |
Definition at line 1597 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_rwrap_code | ( | ccl_private OSLTextureOptions * | opt, |
| int | mode ) |
Definition at line 1581 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_sblur | ( | ccl_private OSLTextureOptions * | opt, |
| float | blur ) |
Definition at line 1585 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_stblur | ( | ccl_private OSLTextureOptions * | opt, |
| float | blur ) |
Definition at line 1591 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_stwidth | ( | ccl_private OSLTextureOptions * | opt, |
| float | width ) |
Definition at line 1599 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_stwrap_code | ( | ccl_private OSLTextureOptions * | opt, |
| int | mode ) |
Definition at line 1583 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_subimage | ( | ccl_private OSLTextureOptions * | opt, |
| int | subimage ) |
Definition at line 1607 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_swidth | ( | ccl_private OSLTextureOptions * | opt, |
| float | width ) |
Definition at line 1593 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_swrap_code | ( | ccl_private OSLTextureOptions * | opt, |
| int | mode ) |
Definition at line 1577 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_tblur | ( | ccl_private OSLTextureOptions * | opt, |
| float | blur ) |
Definition at line 1587 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_time | ( | ccl_private OSLTextureOptions * | opt, |
| float | time ) |
Definition at line 1603 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_twidth | ( | ccl_private OSLTextureOptions * | opt, |
| float | width ) |
Definition at line 1595 of file services_gpu.h.
| ccl_device_extern void osl_texture_set_twrap_code | ( | ccl_private OSLTextureOptions * | opt, |
| int | mode ) |
Definition at line 1579 of file services_gpu.h.
| ccl_device_extern void osl_transform_dvmdv | ( | ccl_private float3 * | res, |
| ccl_private const float * | m, | ||
| ccl_private const float3 * | v ) |
Definition at line 553 of file services_gpu.h.
References convert_transform(), transform_point(), and v.
Referenced by osl_transform_triple().
| ccl_device_extern bool osl_transform_triple | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float3 * | p_in, | ||
| int | p_in_derivs, | ||
| ccl_private float3 * | p_out, | ||
| int | p_out_derivs, | ||
| DeviceString | from, | ||
| DeviceString | to, | ||
| int | vectype ) |
Definition at line 714 of file services_gpu.h.
References osl_get_from_to_matrix(), osl_get_inverse_matrix(), osl_get_matrix(), osl_transform_dvmdv(), osl_transform_vmv(), osl_transformn_dvmdv(), osl_transformn_vmv(), osl_transformv_dvmdv(), osl_transformv_vmv(), DeviceStrings::u_common, and zero_float3().
Referenced by osl_transform_triple_nonlinear().
| ccl_device_extern bool osl_transform_triple_nonlinear | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float3 * | p_in, | ||
| int | p_in_derivs, | ||
| ccl_private float3 * | p_out, | ||
| int | p_out_derivs, | ||
| DeviceString | from, | ||
| DeviceString | to, | ||
| int | vectype ) |
Definition at line 784 of file services_gpu.h.
References osl_transform_triple().
| ccl_device_extern void osl_transform_vmv | ( | ccl_private float3 * | res, |
| ccl_private const float * | m, | ||
| ccl_private const float3 * | v ) |
Definition at line 545 of file services_gpu.h.
References convert_transform(), transform_point(), and v.
Referenced by osl_transform_triple().
| ccl_device_extern bool osl_transformc | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float3 * | c_in, | ||
| int | c_in_derivs, | ||
| ccl_private float3 * | c_out, | ||
| int | c_out_derivs, | ||
| DeviceString | from, | ||
| DeviceString | to ) |
Definition at line 367 of file services_gpu.h.
References color_linear_to_srgb_v3(), color_srgb_to_linear_v3(), hsl_to_rgb(), hsv_to_rgb(), rgb_to_hsl(), rgb_to_hsv(), DeviceStrings::u_hsl, DeviceStrings::u_hsv, DeviceStrings::u_srgb, DeviceStrings::u_xyy, DeviceStrings::u_xyz, xyY_to_xyz(), xyz_to_rgb(), z(), and zero_float3().
| ccl_device_extern void osl_transformn_dvmdv | ( | ccl_private float3 * | res, |
| ccl_private const float * | m, | ||
| ccl_private const float3 * | v ) |
Definition at line 589 of file services_gpu.h.
References convert_transform(), transform_direction(), and v.
Referenced by osl_transform_triple().
| ccl_device_extern void osl_transformn_vmv | ( | ccl_private float3 * | res, |
| ccl_private const float * | m, | ||
| ccl_private const float3 * | v ) |
Definition at line 581 of file services_gpu.h.
References convert_transform(), transform_direction(), and v.
Referenced by osl_transform_triple().
| ccl_device_extern void osl_transformv_dvmdv | ( | ccl_private float3 * | res, |
| ccl_private const float * | m, | ||
| ccl_private const float3 * | v ) |
Definition at line 571 of file services_gpu.h.
References convert_transform(), transform_direction(), and v.
Referenced by osl_transform_triple().
| ccl_device_extern void osl_transformv_vmv | ( | ccl_private float3 * | res, |
| ccl_private const float * | m, | ||
| ccl_private const float3 * | v ) |
Definition at line 563 of file services_gpu.h.
References convert_transform(), transform_direction(), and v.
Referenced by osl_transform_triple().
| ccl_device_extern void osl_transpose_mm | ( | ccl_private float * | res, |
| ccl_private const float * | m ) |
Definition at line 796 of file services_gpu.h.
References ccl_private, and copy_matrix().
| ccl_device_extern void osl_warning | ( | ccl_private ShaderGlobals * | sg, |
| const char * | format, | ||
| void * | args ) |
Definition at line 264 of file services_gpu.h.
| ccl_device_extern void osl_wavelength_color_vf | ( | ccl_private ShaderGlobals * | sg, |
| ccl_private float3 * | result, | ||
| float | lambda_nm ) |
Definition at line 322 of file services_gpu.h.
References make_float3(), max, svm_math_wavelength_color_xyz(), and xyz_to_rgb().
| ccl_device_forceinline int safe_divide | ( | int | a, |
| int | b ) |
Definition at line 2104 of file services_gpu.h.
References b.
| ccl_device_forceinline int safe_modulo | ( | int | a, |
| int | b ) |
Definition at line 2108 of file services_gpu.h.
Referenced by svm_math(), and svm_vector_math().
| ccl_device_inline bool set_attribute_float | ( | ccl_private float | fval[3], |
| TypeDesc | type, | ||
| bool | derivatives, | ||
| ccl_private void * | val ) |
Definition at line 813 of file services_gpu.h.
References ccl_private.
Referenced by get_background_attribute(), get_object_attribute(), get_object_standard_attribute(), and set_attribute_float().
| ccl_device_inline bool set_attribute_float | ( | float | f, |
| TypeDesc | type, | ||
| bool | derivatives, | ||
| ccl_private void * | val ) |
Definition at line 860 of file services_gpu.h.
References set_attribute_float().
| ccl_device_inline bool set_attribute_float2 | ( | ccl_private float2 | fval[3], |
| TypeDesc | type, | ||
| bool | derivatives, | ||
| ccl_private void * | val ) |
Definition at line 873 of file services_gpu.h.
References ccl_private.
Referenced by get_object_attribute().
| ccl_device_inline bool set_attribute_float3 | ( | ccl_private float3 | fval[3], |
| TypeDesc | type, | ||
| bool | derivatives, | ||
| ccl_private void * | val ) |
Definition at line 920 of file services_gpu.h.
References average(), ccl_private, and z().
Referenced by get_object_attribute(), get_object_standard_attribute(), and set_attribute_float3().
| ccl_device_inline bool set_attribute_float3 | ( | float3 | f, |
| TypeDesc | type, | ||
| bool | derivatives, | ||
| ccl_private void * | val ) |
Definition at line 959 of file services_gpu.h.
References make_float3(), and set_attribute_float3().
| ccl_device_inline bool set_attribute_float4 | ( | ccl_private float4 | fval[3], |
| TypeDesc | type, | ||
| bool | derivatives, | ||
| ccl_private void * | val ) |
Definition at line 972 of file services_gpu.h.
References average(), ccl_private, float4_to_float3(), w(), and z().
Referenced by get_object_attribute(), and get_object_standard_attribute().
| ccl_device_inline bool set_attribute_matrix | ( | ccl_private const Transform & | tfm, |
| TypeDesc | type, | ||
| ccl_private void * | val ) |
Definition at line 1011 of file services_gpu.h.
References ccl_private, and copy_matrix().
Referenced by get_object_attribute().
| ccl_device_forceinline float step_impl | ( | float | edge, |
| float | x ) |
Definition at line 2215 of file services_gpu.h.