Blender V5.0
differential.h File Reference
#include "kernel/types.h"

Go to the source code of this file.

Functions

CCL_NAMESPACE_BEGIN ccl_device void differential_transfer (ccl_private differential3 *surface_dP, const differential3 ray_dP, const float3 ray_D, const differential3 ray_dD, const float3 surface_Ng, const float ray_t)
ccl_device void differential_incoming (ccl_private differential3 *dI, const differential3 dD)
ccl_device void differential_dudv (ccl_private differential *du, ccl_private differential *dv, float3 dPdu, float3 dPdv, differential3 dP, const float3 Ng)
ccl_device differential differential_zero ()
ccl_device differential3 differential3_zero ()
ccl_device_forceinline float differential_zero_compact ()
ccl_device_forceinline float differential_make_compact (const float dD)
ccl_device_forceinline float differential_make_compact (const differential3 dD)
ccl_device_forceinline float differential_make_compact (const dual3 D)
ccl_device_forceinline float differential_incoming_compact (const float dD)
ccl_device_forceinline float differential_transfer_compact (const float ray_dP, const float3, const float ray_dD, const float ray_t)
ccl_device_forceinline differential3 differential_from_compact (const float3 D, const float dD)
ccl_device void differential_dudv_compact (ccl_private differential *du, ccl_private differential *dv, const float3 dPdu, const float3 dPdv, const float dP, const float3 Ng)

Function Documentation

◆ differential3_zero()

ccl_device differential3 differential3_zero ( )

Definition at line 99 of file differential.h.

References ccl_device, differential3::dx, differential3::dy, and zero_float3().

◆ differential_dudv()

ccl_device void differential_dudv ( ccl_private differential * du,
ccl_private differential * dv,
float3 dPdu,
float3 dPdv,
differential3 dP,
const float3 Ng )

◆ differential_dudv_compact()

ccl_device void differential_dudv_compact ( ccl_private differential * du,
ccl_private differential * dv,
const float3 dPdu,
const float3 dPdv,
const float dP,
const float3 Ng )

◆ differential_from_compact()

◆ differential_incoming()

ccl_device void differential_incoming ( ccl_private differential3 * dI,
const differential3 dD )

Definition at line 31 of file differential.h.

References ccl_device, ccl_private, differential3::dx, and differential3::dy.

◆ differential_incoming_compact()

ccl_device_forceinline float differential_incoming_compact ( const float dD)

Definition at line 133 of file differential.h.

References ccl_device_forceinline.

Referenced by shader_setup_from_ray().

◆ differential_make_compact() [1/3]

ccl_device_forceinline float differential_make_compact ( const differential3 dD)

Definition at line 123 of file differential.h.

References ccl_device_forceinline, differential3::dx, differential3::dy, and len.

◆ differential_make_compact() [2/3]

ccl_device_forceinline float differential_make_compact ( const dual3 D)

Definition at line 128 of file differential.h.

References ccl_device_forceinline, D, and len.

◆ differential_make_compact() [3/3]

◆ differential_transfer()

CCL_NAMESPACE_BEGIN ccl_device void differential_transfer ( ccl_private differential3 * surface_dP,
const differential3 ray_dP,
const float3 ray_D,
const differential3 ray_dD,
const float3 surface_Ng,
const float ray_t )

Definition at line 13 of file differential.h.

References ccl_device, ccl_private, dot(), differential3::dx, and differential3::dy.

◆ differential_transfer_compact()

ccl_device_forceinline float differential_transfer_compact ( const float ray_dP,
const float3 ,
const float ray_dD,
const float ray_t )

Definition at line 138 of file differential.h.

References ccl_device_forceinline.

Referenced by shader_setup_from_ray(), and Camera::world_to_raster_size().

◆ differential_zero()

ccl_device differential differential_zero ( )

◆ differential_zero_compact()