|
Blender V4.5
|
#include "kernel/globals.h"#include "kernel/geom/curve_intersect.h"#include "kernel/geom/motion_triangle_shader.h"#include "kernel/geom/object.h"#include "kernel/geom/point_intersect.h"#include "kernel/geom/triangle_intersect.h"#include "kernel/util/differential.h"Go to the source code of this file.
Functions | |
| CCL_NAMESPACE_BEGIN ccl_device void | shader_setup_object_transforms (KernelGlobals kg, ccl_private ShaderData *ccl_restrict sd, const float time) |
| ccl_device_inline void | shader_setup_from_ray (KernelGlobals kg, ccl_private ShaderData *ccl_restrict sd, const ccl_private Ray *ccl_restrict ray, const ccl_private Intersection *ccl_restrict isect) |
| ccl_device_inline void | shader_setup_from_sample (KernelGlobals kg, ccl_private ShaderData *ccl_restrict sd, const float3 P, const float3 Ng, const float3 I, const int shader, const int object, const int prim, const float u, const float v, const float t, const float time, const bool object_space, const bool is_lamp) |
| ccl_device void | shader_setup_from_displace (KernelGlobals kg, ccl_private ShaderData *ccl_restrict sd, const int object, const int prim, const float u, const float v) |
| ccl_device_inline void | shader_setup_from_background (KernelGlobals kg, ccl_private ShaderData *ccl_restrict sd, const float3 ray_P, const float3 ray_D, const float ray_time) |
| ccl_device_inline void shader_setup_from_background | ( | KernelGlobals | kg, |
| ccl_private ShaderData *ccl_restrict | sd, | ||
| const float3 | ray_P, | ||
| const float3 | ray_D, | ||
| const float | ray_time ) |
Definition at line 360 of file shader_data.h.
References ccl_device_inline, ccl_private, ccl_restrict, differential_zero(), differential_zero_compact(), FLT_MAX, kernel_data, kernel_data_fetch, OBJECT_NONE, PRIM_NONE, PRIMITIVE_NONE, SHADER_MASK, and zero_float3().
Referenced by integrator_eval_background_shader(), kernel_background_evaluate(), and light_sample_shader_eval().
| ccl_device void shader_setup_from_displace | ( | KernelGlobals | kg, |
| ccl_private ShaderData *ccl_restrict | sd, | ||
| const int | object, | ||
| const int | prim, | ||
| const float | u, | ||
| const float | v ) |
Definition at line 246 of file shader_data.h.
References ccl_device, ccl_private, ccl_restrict, I, kernel_data_fetch, P, SD_OBJECT_TRANSFORM_APPLIED, shader_setup_from_sample(), SHADER_SMOOTH_NORMAL, triangle_point_normal(), v, and zero_float3().
Referenced by kernel_displace_evaluate().
| ccl_device_inline void shader_setup_from_ray | ( | KernelGlobals | kg, |
| ccl_private ShaderData *ccl_restrict | sd, | ||
| const ccl_private Ray *ccl_restrict | ray, | ||
| const ccl_private Intersection *ccl_restrict | isect ) |
Definition at line 39 of file shader_data.h.
References ccl_device_inline, ccl_private, ccl_restrict, differential_dudv_compact(), differential_incoming_compact(), differential_transfer_compact(), dot(), kernel_data_fetch, motion_triangle_shader_setup(), object_dir_transform_auto, object_normal_transform_auto, PRIMITIVE_CURVE, PRIMITIVE_POINT, PRIMITIVE_TRIANGLE, SD_BACKFACING, SD_OBJECT_TRANSFORM_APPLIED, SHADER_MASK, shader_setup_object_transforms(), and triangle_shader_setup().
Referenced by OSLRenderServices::getmessage(), integrate_surface_shader_setup(), integrator_volume_stack_update_for_subsurface(), and kernel_path_mnee_sample().
| ccl_device_inline void shader_setup_from_sample | ( | KernelGlobals | kg, |
| ccl_private ShaderData *ccl_restrict | sd, | ||
| const float3 | P, | ||
| const float3 | Ng, | ||
| const float3 | I, | ||
| const int | shader, | ||
| const int | object, | ||
| const int | prim, | ||
| const float | u, | ||
| const float | v, | ||
| const float | t, | ||
| const float | time, | ||
| const bool | object_space, | ||
| const bool | is_lamp ) |
Definition at line 129 of file shader_data.h.
References ccl_device_inline, ccl_private, ccl_restrict, differential_zero(), differential_zero_compact(), dot(), I, kernel_data_fetch, object_dir_transform_auto, OBJECT_NONE, object_normal_transform_auto, object_position_transform_auto, P, PRIM_NONE, PRIMITIVE_LAMP, PRIMITIVE_NONE, PRIMITIVE_TRIANGLE, SD_BACKFACING, SD_OBJECT_TRANSFORM_APPLIED, SHADER_MASK, shader_setup_object_transforms(), SHADER_SMOOTH_NORMAL, triangle_dPdudv(), triangle_smooth_normal(), v, and zero_float3().
Referenced by light_sample_shader_eval(), mnee_path_contribution(), and shader_setup_from_displace().
| CCL_NAMESPACE_BEGIN ccl_device void shader_setup_object_transforms | ( | KernelGlobals | kg, |
| ccl_private ShaderData *ccl_restrict | sd, | ||
| const float | time ) |
Definition at line 25 of file shader_data.h.
References ccl_device, ccl_private, ccl_restrict, SD_OBJECT_MOTION, and transform_inverse().
Referenced by mnee_setup_manifold_vertex(), shader_setup_from_ray(), and shader_setup_from_sample().