Tachyon (current)
Current Main Branch
|
Tachyon ray tracing engine core routines compiled to PTX for runtime JIT to build complete ray tracing pipelines. More...
Go to the source code of this file.
Data Structures | |
struct | PerRayData_radiance |
Macros | |
#define | TACHYON_INTERNAL 1 |
#define | TACHYON_USE_RAY_STEP 1 |
#define | TACHYON_TRANS_USE_INCIDENT 1 |
#define | TACHYON_RAY_STEP N*rtLaunch.scene.epsilon*4.0f |
#define | TACHYON_RAY_STEP2 ray_direction*rtLaunch.scene.epsilon*4.0f |
#define | REVERSE_RAY_STEP (scene_epsilon*10.0f) |
#define | REVERSE_RAY_LENGTH 3.0f |
#define | TACHYON_USE_SPHERES_HEARNBAKER 1 |
Functions | |
static __device__ __inline__ int | tachyon1DLaunchIndex (void) |
Helper function to return 1-D framebuffer offset computed from the current thread's launch_index. More... | |
static __device__ __inline__ int | tachyon1DLaunchIndex (uint3 dim, uint3 index) |
Helper function to return 1-D framebuffer offset computed from the current thread's launch_index. More... | |
static __forceinline__ __device__ void * | unpackPointer (uint32_t i0, uint32_t i1) |
static __forceinline__ __device__ void | packPointer (void *ptr, uint32_t &i0, uint32_t &i1) |
template<typename T > | |
static __forceinline__ __device__ T * | getPRD () |
static __forceinline__ __device__ uint32_t | getPayloadAAsample () |
radiance PRD aasample count is stored in ray payload register 2 More... | |
static __forceinline__ __device__ float | getPayloadShadowAttenuation () |
any-hit programs read-modify-update shadow attenuation value carried in ray payload register 0 More... | |
static __forceinline__ __device__ void | setPayloadShadowAttenuation (const float attenuation) |
any-hit programs read-modify-update shadow attenuation value carried in ray payload register 0 More... | |
static int __forceinline__ __device__ | subframe_count () |
__device__ void | sphere_fade_and_clip (const float3 &hit_point, const float3 &cam_pos, float fade_start, float fade_end, float &alpha) |
__device__ void | ray_sphere_clip_interval (float3 ray_origin, float3 ray_direction, float3 center, float rad, float2 &tinterval) |
__device__ void | clip_ray_by_plane (float3 ray_origin, float3 ray_direction, float &tmin, float &tmax, const float4 plane) |
__global__ void | __exception__all () |
__global__ void | __closesthit__shadow_nop () |
__global__ void | __miss__shadow_nop () |
__global__ void | __anyhit__shadow_opaque () |
__global__ void | __anyhit__shadow_transmission () |
__global__ void | any_hit_shadow_clip_sphere () |
__global__ void | __anyhit__radiance_nop () |
__global__ void | __miss__radiance_solid_bg () |
__global__ void | __miss__radiance_gradient_bg_sky_sphere () |
__global__ void | __miss__radiance_gradient_bg_sky_plane () |
static void __inline__ __device__ | accumulate_color (int idx, float4 colrgba4f) |
static __device__ __inline__ void | dof_ray (const float cam_dof_focal_dist, const float cam_dof_aperture_rad, const float3 &ray_origin_orig, float3 &ray_origin, const float3 &ray_direction_orig, float3 &ray_direction, unsigned int &randseed, const float3 &up, const float3 &right) |
template<int STEREO_ON, int DOF_ON> | |
static __device__ __inline__ void | tachyon_camera_perspective_general () |
__global__ void | __raygen__camera_perspective () |
__global__ void | __raygen__camera_perspective_dof () |
__global__ void | __raygen__camera_perspective_stereo () |
__global__ void | __raygen__camera_perspective_stereo_dof () |
template<int STEREO_ON, int DOF_ON> | |
static __device__ __inline__ void | tachyon_camera_orthographic_general () |
__global__ void | __raygen__camera_orthographic () |
__global__ void | __raygen__camera_orthographic_dof () |
__global__ void | __raygen__camera_orthographic_stereo () |
__global__ void | __raygen__camera_orthographic_stereo_dof () |
template<int STEREO_ON, int DOF_ON> | |
static __device__ __inline__ void | tachyon_camera_cubemap_general () |
__global__ void | __raygen__camera_cubemap () |
__global__ void | __raygen__camera_cubemap_dof () |
__global__ void | __raygen__camera_cubemap_stereo () |
__global__ void | __raygen__camera_cubemap_stereo_dof () |
template<int STEREO_ON, int DOF_ON> | |
static __device__ __inline__ void | tachyon_camera_dome_general () |
__global__ void | __raygen__camera_dome_master () |
__global__ void | __raygen__camera_dome_master_dof () |
__global__ void | __raygen__camera_dome_master_stereo () |
__global__ void | __raygen__camera_dome_master_stereo_dof () |
template<int STEREO_ON, int DOF_ON> | |
static __device__ __inline__ void | tachyon_camera_equirectangular_general () |
__global__ void | __raygen__camera_equirectangular () |
__global__ void | __raygen__camera_equirectangular_dof () |
__global__ void | __raygen__camera_equirectangular_stereo () |
__global__ void | __raygen__camera_equirectangular_stereo_dof () |
template<int STEREO_ON, int DOF_ON> | |
static __device__ __inline__ void | tachyon_camera_octahedral_general () |
__global__ void | __raygen__camera_octahedral () |
__global__ void | __raygen__camera_octahedral_dof () |
__global__ void | __raygen__camera_octahedral_stereo () |
__global__ void | __raygen__camera_octahedral_stereo_dof () |
template<int STEREO_ON, int DOF_ON> | |
static __device__ __inline__ void | tachyon_camera_oculus_rift_general () |
__global__ void | __raygen__camera_oculus_rift () |
__global__ void | __raygen__camera_oculus_rift_dof () |
__global__ void | __raygen__camera_oculus_rift_stereo () |
__global__ void | __raygen__camera_oculus_rift_stereo_dof () |
__global__ void | __raygen__UNKNOWN () |
static __inline__ __device__ float3 | calc_ffworld_normal (const float3 &Nshading, const float3 &Ngeometric) |
__global__ void | __intersection__cone_array_color () |
static __host__ __device__ __inline__ void | get_shadevars_cone_array (const GeomSBTHG &sbtHG, float3 &shading_normal) |
__global__ void | __intersection__cylinder_array_color () |
static __host__ __device__ __inline__ void | get_shadevars_cylinder_array (const GeomSBTHG &sbtHG, float3 &shading_normal) |
__global__ void | __intersection__quadmesh () |
static __host__ __device__ __inline__ void | quad_calc_barycentrics_v11 (const GeomSBTHG &sbtHG, float &alpha11, float &beta11) |
static __host__ __device__ __inline__ void | quad_calc_bilinear_coords (const GeomSBTHG &sbtHG, const float alpha, const float beta, const float &alpha11, const float &beta11, float &u, float &v) |
static __host__ __device__ __inline__ void | get_shadevars_quadmesh (const GeomSBTHG &sbtHG, float3 &hit_color, float3 &shading_normal) |
__global__ void | __intersection__ring_array () |
static __host__ __device__ __inline__ void | get_shadevars_ring_array (const GeomSBTHG &sbtHG, float3 &shading_normal) |
static __host__ __device__ __inline__ void | sphere_intersect_hearn_baker (float3 center, float rad) |
__global__ void | __intersection__sphere_array () |
static __host__ __device__ __inline__ void | get_shadevars_sphere_array (const GeomSBTHG &sbtHG, float3 &shading_normal) |
static __host__ __device__ __inline__ void | get_shadevars_trimesh (const GeomSBTHG &sbtHG, float3 &hit_color, float &hit_alpha, float3 &shading_normal) |
static __device__ __forceinline__ float | fog_coord (float3 hit_point) |
static __device__ __forceinline__ float3 | fog_color (float fogmod, float3 hit_col) |
static __device__ float | shade_ambient_occlusion (float3 hit, float3 N, float aoimportance) |
template<int SHADOWS_ON> | |
static __device__ __inline__ void | shade_light (float3 &result, float3 &hit_point, float3 &N, float3 &L, float p_Kd, float p_Ks, float p_phong_exp, float3 &col, float3 &phongcol, float shadow_tmax) |
scene-wide shading property More... | |
template<int CLIP_VIEW_ON, int HEADLIGHT_ON, int FOG_ON, int SHADOWS_ON, int AO_ON, int OUTLINE_ON, int REFLECTION_ON, int TRANSMISSION_ON> | |
static __device__ void | shader_template (float3 prim_color, float3 N, float p_Ka, float p_Kd, float p_Ks, float p_phong_exp, float p_reflectivity, float p_opacity, float p_outline, float p_outlinewidth, int p_transmode) |
material-specific shading property More... | |
__global__ void | __closesthit__radiance_general () |
Variables | |
__constant__ tachyonLaunchParams | rtLaunch |
launch parameters in constant memory, filled by optixLaunch) More... | |
Tachyon ray tracing engine core routines compiled to PTX for runtime JIT to build complete ray tracing pipelines.
Written for NVIDIA OptiX 7 and later.
Definition in file TachyonOptiXShaders.cu.
#define REVERSE_RAY_LENGTH 3.0f |
Definition at line 105 of file TachyonOptiXShaders.cu.
Referenced by shade_ambient_occlusion(), and shade_light().
#define REVERSE_RAY_STEP (scene_epsilon*10.0f) |
Definition at line 104 of file TachyonOptiXShaders.cu.
Referenced by shade_ambient_occlusion(), and shade_light().
#define TACHYON_INTERNAL 1 |
Definition at line 89 of file TachyonOptiXShaders.cu.
#define TACHYON_RAY_STEP N*rtLaunch.scene.epsilon*4.0f |
Definition at line 100 of file TachyonOptiXShaders.cu.
Referenced by shade_ambient_occlusion(), shade_light(), and shader_template().
#define TACHYON_RAY_STEP2 ray_direction*rtLaunch.scene.epsilon*4.0f |
Definition at line 101 of file TachyonOptiXShaders.cu.
Referenced by shader_template().
#define TACHYON_TRANS_USE_INCIDENT 1 |
Definition at line 99 of file TachyonOptiXShaders.cu.
#define TACHYON_USE_RAY_STEP 1 |
Definition at line 98 of file TachyonOptiXShaders.cu.
#define TACHYON_USE_SPHERES_HEARNBAKER 1 |
Definition at line 109 of file TachyonOptiXShaders.cu.
__global__ void __anyhit__radiance_nop | ( | ) |
Definition at line 542 of file TachyonOptiXShaders.cu.
__global__ void __anyhit__shadow_opaque | ( | ) |
Definition at line 376 of file TachyonOptiXShaders.cu.
References setPayloadShadowAttenuation().
__global__ void __anyhit__shadow_transmission | ( | ) |
Definition at line 400 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::frame, GeomSBTHG::geomflags, getPayloadShadowAttenuation(), GeomSBTHG::materialindex, tachyonLaunchParams::materials, rt_material::opacity, RT_MAT_ALPHA, RT_MAT_TEXALPHA, rtLaunch, setPayloadShadowAttenuation(), tachyon1DLaunchIndex(), and GeomSBTHG::trimesh.
__global__ void __closesthit__radiance_general | ( | ) |
Definition at line 3395 of file TachyonOptiXShaders.cu.
References get_shadevars_cone_array(), get_shadevars_cylinder_array(), get_shadevars_quadmesh(), get_shadevars_ring_array(), get_shadevars_sphere_array(), get_shadevars_trimesh(), GeomSBTHG::materialindex, tachyonLaunchParams::materials, GeomSBTHG::prim_color, RT_HIT_CONE, RT_HIT_CYLINDER, RT_HIT_QUAD, RT_HIT_RING, RT_HIT_SPHERE, RT_PRM_CONE, RT_PRM_CYLINDER, RT_PRM_QUAD, RT_PRM_RING, RT_PRM_SPHERE, RT_PRM_TRIANGLE, rtLaunch, and GeomSBTHG::uniform_color.
__global__ void __closesthit__shadow_nop | ( | ) |
Definition at line 353 of file TachyonOptiXShaders.cu.
__global__ void __exception__all | ( | ) |
Definition at line 279 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::frame, tachyonLaunchParams::framebuffer, make_float3(), rtLaunch, and tachyonLaunchParams::size.
__global__ void __intersection__cone_array_color | ( | ) |
Definition at line 1878 of file TachyonOptiXShaders.cu.
References ConeArraySBT::apex, ConeArraySBT::apexrad, ConeArraySBT::base, ConeArraySBT::baserad, GeomSBTHG::cone, dot(), and RT_HIT_CONE.
__global__ void __intersection__cylinder_array_color | ( | ) |
Definition at line 1971 of file TachyonOptiXShaders.cu.
References cross(), GeomSBTHG::cyl, dot(), CylinderArraySBT::end, fabsf(), length(), normalize(), CylinderArraySBT::radius, RT_HIT_CYLINDER, and CylinderArraySBT::start.
__global__ void __intersection__quadmesh | ( | ) |
Definition at line 2082 of file TachyonOptiXShaders.cu.
References cross(), dot(), tachyonLaunchParams::epsilon, fabsf(), GeomSBTHG::quadmesh, RT_HIT_QUAD, rtLaunch, and tachyonLaunchParams::scene.
__global__ void __intersection__ring_array | ( | ) |
Definition at line 2343 of file TachyonOptiXShaders.cu.
References RingArraySBT::center, dot(), RingArraySBT::inrad, length(), RingArraySBT::norm, RingArraySBT::outrad, GeomSBTHG::ring, and RT_HIT_RING.
__global__ void __intersection__sphere_array | ( | ) |
Definition at line 2486 of file TachyonOptiXShaders.cu.
References make_float3(), SphereArraySBT::PosRadius, GeomSBTHG::sphere, and sphere_intersect_hearn_baker().
__global__ void __miss__radiance_gradient_bg_sky_plane | ( | ) |
Definition at line 607 of file TachyonOptiXShaders.cu.
References PerRayData_radiance::alpha, tachyonLaunchParams::bg_color_grad_bot, tachyonLaunchParams::bg_color_grad_top, tachyonLaunchParams::bg_grad_botval, tachyonLaunchParams::bg_grad_invrange, tachyonLaunchParams::bg_grad_noisemag, tachyonLaunchParams::bg_grad_updir, dot(), tachyonLaunchParams::frame, PerRayData_radiance::result, rtLaunch, tachyonLaunchParams::scene, SQUARES_RNG_KEY1, tachyon1DLaunchIndex(), and UINT32_RAND_MAX_INV.
__global__ void __miss__radiance_gradient_bg_sky_sphere | ( | ) |
Definition at line 570 of file TachyonOptiXShaders.cu.
References PerRayData_radiance::alpha, tachyonLaunchParams::bg_color_grad_bot, tachyonLaunchParams::bg_color_grad_top, tachyonLaunchParams::bg_grad_botval, tachyonLaunchParams::bg_grad_invrange, tachyonLaunchParams::bg_grad_noisemag, tachyonLaunchParams::bg_grad_updir, dot(), tachyonLaunchParams::frame, PerRayData_radiance::result, rtLaunch, tachyonLaunchParams::scene, SQUARES_RNG_KEY1, tachyon1DLaunchIndex(), and UINT32_RAND_MAX_INV.
__global__ void __miss__radiance_solid_bg | ( | ) |
Definition at line 553 of file TachyonOptiXShaders.cu.
References PerRayData_radiance::alpha, tachyonLaunchParams::bg_color, tachyonLaunchParams::frame, PerRayData_radiance::result, rtLaunch, tachyonLaunchParams::scene, and tachyon1DLaunchIndex().
__global__ void __miss__shadow_nop | ( | ) |
Definition at line 363 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_cubemap | ( | ) |
Definition at line 1204 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_cubemap_dof | ( | ) |
Definition at line 1208 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_cubemap_stereo | ( | ) |
Definition at line 1212 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_cubemap_stereo_dof | ( | ) |
Definition at line 1216 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_dome_master | ( | ) |
Definition at line 1374 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_dome_master_dof | ( | ) |
Definition at line 1378 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_dome_master_stereo | ( | ) |
Definition at line 1382 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_dome_master_stereo_dof | ( | ) |
Definition at line 1386 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_equirectangular | ( | ) |
Definition at line 1524 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_equirectangular_dof | ( | ) |
Definition at line 1528 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_equirectangular_stereo | ( | ) |
Definition at line 1532 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_equirectangular_stereo_dof | ( | ) |
Definition at line 1536 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_octahedral | ( | ) |
Definition at line 1663 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_octahedral_dof | ( | ) |
Definition at line 1667 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_octahedral_stereo | ( | ) |
Definition at line 1671 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_octahedral_stereo_dof | ( | ) |
Definition at line 1675 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_oculus_rift | ( | ) |
Definition at line 1821 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_oculus_rift_dof | ( | ) |
Definition at line 1825 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_oculus_rift_stereo | ( | ) |
Definition at line 1829 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_oculus_rift_stereo_dof | ( | ) |
Definition at line 1833 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_orthographic | ( | ) |
Definition at line 1004 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_orthographic_dof | ( | ) |
Definition at line 1008 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_orthographic_stereo | ( | ) |
Definition at line 1012 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_orthographic_stereo_dof | ( | ) |
Definition at line 1016 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_perspective | ( | ) |
Definition at line 875 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_perspective_dof | ( | ) |
Definition at line 879 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_perspective_stereo | ( | ) |
Definition at line 883 of file TachyonOptiXShaders.cu.
__global__ void __raygen__camera_perspective_stereo_dof | ( | ) |
Definition at line 887 of file TachyonOptiXShaders.cu.
__global__ void __raygen__UNKNOWN | ( | ) |
Definition at line 1847 of file TachyonOptiXShaders.cu.
|
static |
Definition at line 645 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::accum_buffer, tachyonLaunchParams::accum_normalize, tachyonLaunchParams::colorspace, tachyonLaunchParams::fb_clearall, tachyonLaunchParams::frame, tachyonLaunchParams::framebuffer, linear_to_sRGB(), linear_to_sRGB_approx_20(), RT_COLORSPACE_sRGB, rtLaunch, tachyonLaunchParams::tonemap_exposure, tachyonLaunchParams::tonemap_mode, and tachyonLaunchParams::update_colorbuffer.
Referenced by tachyon_camera_cubemap_general(), tachyon_camera_dome_general(), tachyon_camera_equirectangular_general(), tachyon_camera_octahedral_general(), tachyon_camera_oculus_rift_general(), tachyon_camera_orthographic_general(), and tachyon_camera_perspective_general().
__global__ void any_hit_shadow_clip_sphere | ( | ) |
Definition at line 502 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::cam, tachyonLaunchParams::clipview_end, tachyonLaunchParams::clipview_mode, tachyonLaunchParams::clipview_start, tachyonLaunchParams::frame, getPayloadShadowAttenuation(), GeomSBTHG::materialindex, tachyonLaunchParams::materials, rt_material::opacity, tachyonLaunchParams::pos, rtLaunch, setPayloadShadowAttenuation(), sphere_fade_and_clip(), and tachyon1DLaunchIndex().
|
static |
Definition at line 1861 of file TachyonOptiXShaders.cu.
References faceforward(), and normalize().
Referenced by get_shadevars_cone_array(), get_shadevars_cylinder_array(), get_shadevars_quadmesh(), get_shadevars_ring_array(), get_shadevars_sphere_array(), and get_shadevars_trimesh().
__device__ void clip_ray_by_plane | ( | float3 | ray_origin, |
float3 | ray_direction, | ||
float & | tmin, | ||
float & | tmax, | ||
const float4 | plane | ||
) |
Definition at line 247 of file TachyonOptiXShaders.cu.
References dot(), make_float3(), make_float4(), and RT_DEFAULT_MAX.
|
static |
Definition at line 737 of file TachyonOptiXShaders.cu.
References jitter_disc2f(), and normalize().
Referenced by tachyon_camera_cubemap_general(), tachyon_camera_dome_general(), tachyon_camera_equirectangular_general(), tachyon_camera_octahedral_general(), tachyon_camera_oculus_rift_general(), tachyon_camera_orthographic_general(), and tachyon_camera_perspective_general().
|
static |
Definition at line 2876 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::bg_color, rtLaunch, and tachyonLaunchParams::scene.
Referenced by shader_template().
|
static |
Definition at line 2836 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::cam, dot(), rtLaunch, tachyonLaunchParams::scene, and tachyonLaunchParams::W.
Referenced by shader_template().
|
static |
Definition at line 1920 of file TachyonOptiXShaders.cu.
References ConeArraySBT::apex, ConeArraySBT::apexrad, ConeArraySBT::base, ConeArraySBT::baserad, calc_ffworld_normal(), GeomSBTHG::cone, dot(), and normalize().
Referenced by __closesthit__radiance_general().
|
static |
Definition at line 2027 of file TachyonOptiXShaders.cu.
References calc_ffworld_normal(), GeomSBTHG::cyl, dot(), CylinderArraySBT::end, normalize(), and CylinderArraySBT::start.
Referenced by __closesthit__radiance_general().
|
static |
< XXX fix for quads
< XXX fix for quads
Definition at line 2247 of file TachyonOptiXShaders.cu.
References calc_ffworld_normal(), cross(), normalize(), GeomSBTHG::prim_color, quad_calc_barycentrics_v11(), quad_calc_bilinear_coords(), GeomSBTHG::quadmesh, and GeomSBTHG::uniform_color.
Referenced by __closesthit__radiance_general().
|
static |
Definition at line 2371 of file TachyonOptiXShaders.cu.
References calc_ffworld_normal(), RingArraySBT::norm, and GeomSBTHG::ring.
Referenced by __closesthit__radiance_general().
|
static |
Definition at line 2502 of file TachyonOptiXShaders.cu.
References calc_ffworld_normal(), make_float3(), SphereArraySBT::PosRadius, and GeomSBTHG::sphere.
Referenced by __closesthit__radiance_general().
|
static |
Definition at line 2585 of file TachyonOptiXShaders.cu.
References calc_ffworld_normal(), cross(), make_float3(), GeomSBTHG::materialindex, tachyonLaunchParams::materials, normalize(), GeomSBTHG::prim_color, rtLaunch, GeomSBTHG::trimesh, GeomSBTHG::uniform_color, and unpackNormal().
Referenced by __closesthit__radiance_general().
|
static |
radiance PRD aasample count is stored in ray payload register 2
Definition at line 173 of file TachyonOptiXShaders.cu.
Referenced by shade_ambient_occlusion(), and shader_template().
|
static |
any-hit programs read-modify-update shadow attenuation value carried in ray payload register 0
Definition at line 190 of file TachyonOptiXShaders.cu.
Referenced by __anyhit__shadow_transmission(), and any_hit_shadow_clip_sphere().
|
static |
Definition at line 151 of file TachyonOptiXShaders.cu.
References unpackPointer().
|
static |
Definition at line 144 of file TachyonOptiXShaders.cu.
Referenced by shader_template(), tachyon_camera_cubemap_general(), tachyon_camera_dome_general(), tachyon_camera_equirectangular_general(), tachyon_camera_octahedral_general(), tachyon_camera_oculus_rift_general(), tachyon_camera_orthographic_general(), and tachyon_camera_perspective_general().
|
static |
Definition at line 2173 of file TachyonOptiXShaders.cu.
References cross(), fabsf(), QuadMeshSBT::indices, make_float3(), and GeomSBTHG::quadmesh.
Referenced by get_shadevars_quadmesh().
|
static |
Definition at line 2212 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::epsilon, fabsf(), rtLaunch, and tachyonLaunchParams::scene.
Referenced by get_shadevars_quadmesh().
__device__ void ray_sphere_clip_interval | ( | float3 | ray_origin, |
float3 | ray_direction, | ||
float3 | center, | ||
float | rad, | ||
float2 & | tinterval | ||
) |
Definition at line 228 of file TachyonOptiXShaders.cu.
References dot(), and RT_DEFAULT_MAX.
|
static |
any-hit programs read-modify-update shadow attenuation value carried in ray payload register 0
Definition at line 196 of file TachyonOptiXShaders.cu.
Referenced by __anyhit__shadow_opaque(), __anyhit__shadow_transmission(), and any_hit_shadow_clip_sphere().
|
static |
Definition at line 2886 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::ao_lightscale, tachyonLaunchParams::ao_maxdist, tachyonLaunchParams::ao_samples, dot(), getPayloadAAsample(), jitter_sphere3f(), tachyonLaunchParams::lights, REVERSE_RAY_LENGTH, REVERSE_RAY_STEP, RT_RAY_TYPE_COUNT, RT_RAY_TYPE_SHADOW, RT_SHADOWS_ON_REVERSE, rtLaunch, subframe_count(), TACHYON_RAY_STEP, and tachyonLaunchParams::traversable.
Referenced by shader_template().
|
static |
scene-wide shading property
Definition at line 2970 of file TachyonOptiXShaders.cu.
References dot(), tachyonLaunchParams::frame, tachyonLaunchParams::lights, make_float3(), normalize(), REVERSE_RAY_LENGTH, REVERSE_RAY_STEP, RT_RAY_TYPE_COUNT, RT_RAY_TYPE_SHADOW, RT_SHADOWS_ON_REVERSE, rtLaunch, tachyonLaunchParams::shadows_enabled, tachyon1DLaunchIndex(), TACHYON_RAY_STEP, and tachyonLaunchParams::traversable.
|
static |
material-specific shading property
Definition at line 3089 of file TachyonOptiXShaders.cu.
References PerRayData_radiance::alpha, tachyonLaunchParams::ao_ambient, tachyonLaunchParams::ao_direct, tachyonLaunchParams::ao_samples, tachyonLaunchParams::bg_color, tachyonLaunchParams::cam, tachyonLaunchParams::clipview_end, tachyonLaunchParams::clipview_mode, tachyonLaunchParams::clipview_start, PerRayData_radiance::depth, tachyonLaunchParams::dir_lights, dot(), fog_color(), fog_coord(), tachyonLaunchParams::fog_mode, tachyonLaunchParams::frame, getPayloadAAsample(), tachyonLaunchParams::headlight_mode, PerRayData_radiance::importance, length(), tachyonLaunchParams::lights, make_float3(), tachyonLaunchParams::max_depth, normalize_len(), tachyonLaunchParams::num_dir_lights, tachyonLaunchParams::num_pos_lights, packPointer(), tachyonLaunchParams::pos, tachyonLaunchParams::pos_lights, reflect(), PerRayData_radiance::result, RT_DEFAULT_MAX, RT_RAY_TYPE_COUNT, RT_RAY_TYPE_RADIANCE, rtLaunch, tachyonLaunchParams::scene, shade_ambient_occlusion(), sphere_fade_and_clip(), tachyon1DLaunchIndex(), TACHYON_RAY_STEP, TACHYON_RAY_STEP2, PerRayData_radiance::transcnt, and tachyonLaunchParams::traversable.
__device__ void sphere_fade_and_clip | ( | const float3 & | hit_point, |
const float3 & | cam_pos, | ||
float | fade_start, | ||
float | fade_end, | ||
float & | alpha | ||
) |
Definition at line 214 of file TachyonOptiXShaders.cu.
References length().
Referenced by any_hit_shadow_clip_sphere(), and shader_template().
|
static |
Definition at line 2410 of file TachyonOptiXShaders.cu.
References dot(), normalize_len(), and RT_HIT_SPHERE.
Referenced by __intersection__sphere_array().
|
static |
Definition at line 201 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::frame, rtLaunch, and tachyonLaunchParams::subframe_index.
Referenced by shade_ambient_occlusion(), tachyon_camera_cubemap_general(), tachyon_camera_dome_general(), tachyon_camera_equirectangular_general(), tachyon_camera_octahedral_general(), tachyon_camera_oculus_rift_general(), tachyon_camera_orthographic_general(), and tachyon_camera_perspective_general().
|
static |
Helper function to return 1-D framebuffer offset computed from the current thread's launch_index.
Definition at line 114 of file TachyonOptiXShaders.cu.
Referenced by __anyhit__shadow_transmission(), __miss__radiance_gradient_bg_sky_plane(), __miss__radiance_gradient_bg_sky_sphere(), __miss__radiance_solid_bg(), any_hit_shadow_clip_sphere(), shade_light(), shader_template(), tachyon_camera_cubemap_general(), tachyon_camera_dome_general(), tachyon_camera_equirectangular_general(), tachyon_camera_octahedral_general(), tachyon_camera_oculus_rift_general(), tachyon_camera_orthographic_general(), and tachyon_camera_perspective_general().
|
static |
Helper function to return 1-D framebuffer offset computed from the current thread's launch_index.
Definition at line 123 of file TachyonOptiXShaders.cu.
|
static |
Definition at line 1046 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::aa_samples, accumulate_color(), PerRayData_radiance::alpha, tachyonLaunchParams::cam, cross(), PerRayData_radiance::depth, dof_ray(), PerRayData_radiance::importance, jitter_offset2f(), make_float3(), make_float4(), tachyonLaunchParams::max_trans, normalize(), packPointer(), PerRayData_radiance::result, RT_DEFAULT_MAX, RT_RAY_TYPE_COUNT, RT_RAY_TYPE_RADIANCE, rtLaunch, subframe_count(), tachyon1DLaunchIndex(), PerRayData_radiance::transcnt, and tachyonLaunchParams::traversable.
|
static |
Definition at line 1235 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::aa_samples, accumulate_color(), PerRayData_radiance::alpha, tachyonLaunchParams::cam, cross(), PerRayData_radiance::depth, dof_ray(), PerRayData_radiance::importance, jitter_offset2f(), M_PIf, make_float3(), make_float4(), tachyonLaunchParams::max_trans, packPointer(), PerRayData_radiance::result, RT_DEFAULT_MAX, RT_RAY_TYPE_COUNT, RT_RAY_TYPE_RADIANCE, rtLaunch, tachyonLaunchParams::stereo_eyesep, subframe_count(), tachyon1DLaunchIndex(), PerRayData_radiance::transcnt, and tachyonLaunchParams::traversable.
|
static |
Definition at line 1411 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::aa_samples, accumulate_color(), PerRayData_radiance::alpha, tachyonLaunchParams::cam, cross(), PerRayData_radiance::depth, dof_ray(), PerRayData_radiance::importance, jitter_offset2f(), M_PIf, make_float3(), make_float4(), tachyonLaunchParams::max_trans, normalize(), packPointer(), PerRayData_radiance::result, RT_DEFAULT_MAX, RT_RAY_TYPE_COUNT, RT_RAY_TYPE_RADIANCE, rtLaunch, tachyonLaunchParams::stereo_eyesep, subframe_count(), tachyon1DLaunchIndex(), PerRayData_radiance::transcnt, and tachyonLaunchParams::traversable.
|
static |
Definition at line 1551 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::aa_samples, accumulate_color(), PerRayData_radiance::alpha, tachyonLaunchParams::cam, cross(), PerRayData_radiance::depth, dof_ray(), PerRayData_radiance::importance, jitter_offset2f(), make_float3(), make_float4(), tachyonLaunchParams::max_trans, normalize(), packPointer(), PerRayData_radiance::result, RT_DEFAULT_MAX, RT_RAY_TYPE_COUNT, RT_RAY_TYPE_RADIANCE, rtLaunch, tachyonLaunchParams::stereo_eyesep, subframe_count(), tachyon1DLaunchIndex(), PerRayData_radiance::transcnt, and tachyonLaunchParams::traversable.
|
static |
Definition at line 1686 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::aa_samples, accumulate_color(), PerRayData_radiance::alpha, tachyonLaunchParams::cam, PerRayData_radiance::depth, dof_ray(), PerRayData_radiance::importance, jitter_offset2f(), make_float3(), make_float4(), tachyonLaunchParams::max_trans, normalize(), packPointer(), PerRayData_radiance::result, RT_DEFAULT_MAX, RT_RAY_TYPE_COUNT, RT_RAY_TYPE_RADIANCE, rtLaunch, tachyonLaunchParams::stereo_eyesep, subframe_count(), tachyon1DLaunchIndex(), PerRayData_radiance::transcnt, and tachyonLaunchParams::traversable.
|
static |
Definition at line 899 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::aa_samples, accumulate_color(), PerRayData_radiance::alpha, tachyonLaunchParams::cam, PerRayData_radiance::depth, dof_ray(), PerRayData_radiance::importance, jitter_offset2f(), make_float3(), make_float4(), tachyonLaunchParams::max_trans, normalize(), packPointer(), tachyonLaunchParams::pos, PerRayData_radiance::result, RT_DEFAULT_MAX, RT_RAY_TYPE_COUNT, RT_RAY_TYPE_RADIANCE, rtLaunch, subframe_count(), tachyon1DLaunchIndex(), PerRayData_radiance::transcnt, and tachyonLaunchParams::traversable.
|
static |
Definition at line 771 of file TachyonOptiXShaders.cu.
References tachyonLaunchParams::aa_samples, accumulate_color(), PerRayData_radiance::alpha, tachyonLaunchParams::cam, PerRayData_radiance::depth, dof_ray(), PerRayData_radiance::importance, jitter_offset2f(), make_float3(), make_float4(), tachyonLaunchParams::max_trans, normalize(), packPointer(), tachyonLaunchParams::pos, PerRayData_radiance::result, RT_DEFAULT_MAX, RT_RAY_TYPE_COUNT, RT_RAY_TYPE_RADIANCE, rtLaunch, subframe_count(), tachyon1DLaunchIndex(), PerRayData_radiance::transcnt, and tachyonLaunchParams::traversable.
|
static |
Definition at line 137 of file TachyonOptiXShaders.cu.
Referenced by getPRD().
__constant__ tachyonLaunchParams rtLaunch |
launch parameters in constant memory, filled by optixLaunch)
Definition at line 134 of file TachyonOptiXShaders.cu.
Referenced by __anyhit__shadow_transmission(), __closesthit__radiance_general(), __exception__all(), __intersection__quadmesh(), __miss__radiance_gradient_bg_sky_plane(), __miss__radiance_gradient_bg_sky_sphere(), __miss__radiance_solid_bg(), accumulate_color(), any_hit_shadow_clip_sphere(), fog_color(), fog_coord(), TachyonOptiX::framebuffer_clear(), get_shadevars_trimesh(), TachyonOptiX::print_raystats_info(), quad_calc_bilinear_coords(), TachyonOptiX::render(), TachyonOptiX::set_camera_lookat(), shade_ambient_occlusion(), shade_light(), shader_template(), subframe_count(), tachyon_camera_cubemap_general(), tachyon_camera_dome_general(), tachyon_camera_equirectangular_general(), tachyon_camera_octahedral_general(), tachyon_camera_oculus_rift_general(), tachyon_camera_orthographic_general(), tachyon_camera_perspective_general(), and TachyonOptiX::TachyonOptiX().