Types required for execution of generated native and CUDA code. More...
Go to the source code of this file.
Classes | |
struct | mi::neuraylib::tct_deriv<T> |
A template struct with derivatives. More... | |
struct | mi::neuraylib::Shading_state_environment |
The MDL environment state structure inside the MDL SDK is a representation of the renderer state in the context of an environment lookup as defined in section 19 "Renderer state" in the MDL specification. More... | |
struct | mi::neuraylib::Shading_state_material_impl<with_derivatives> |
The MDL material state structure inside the MDL SDK is a representation of the renderer state as defined in section 19 "Renderer state" in the MDL specification. More... | |
struct | mi::neuraylib::Texture_handler_vtable_impl<with_derivatives> |
The runtime for bitmap texture access for the generated target code can optionally be implemented in form of a vtable as specified by this structure. More... | |
struct | mi::neuraylib::Texture_handler_base |
The texture handler structure that is passed to the texturing functions. More... | |
struct | mi::neuraylib::Texture_handler_deriv_base |
The texture handler structure that is passed to the texturing functions with derivative support. More... | |
struct | mi::neuraylib::Resource_data |
The data structure providing access to resources for generated code. More... | |
struct | mi::neuraylib::Bsdf_sample_data |
Input and output structure for BSDF sampling data. More... | |
struct | mi::neuraylib::Bsdf_evaluate_data_base |
Input and output structure for BSDF evaluation data. More... | |
struct | mi::neuraylib::Bsdf_pdf_data |
Input and output structure for BSDF PDF calculation data. More... | |
struct | mi::neuraylib::Bsdf_auxiliary_data_base |
Input and output structure for BSDF auxiliary calculation data. More... | |
struct | mi::neuraylib::Edf_sample_data |
Input and output structure for EDF sampling data. More... | |
struct | mi::neuraylib::Edf_evaluate_data_base |
Input and output structure for EDF evaluation data. More... | |
struct | mi::neuraylib::Edf_pdf_data |
Input and output structure for EDF PDF calculation data. More... | |
struct | mi::neuraylib::Edf_auxiliary_data_base |
Input and output structure for EDF auxiliary calculation data. More... | |
Namespaces | |
namespace | mi |
Common namespace for APIs of NVIDIA Advanced Rendering Center GmbH. | |
namespace | mi::neuraylib |
Namespace for the MDL SDK API. | |
Macros | |
#define | MI_NEURAYLIB_BSDF_USE_MATERIAL_IOR (-1.0f) |
The calling code can mark the x component of an IOR field in *_data with MI_NEURAYLIB_BSDF_USE_MATERIAL_IOR , to make the BSDF functions use the MDL material's IOR for this IOR field. More... | |
Typedefs | |
typedef float | mi::neuraylib::tct_float |
A float. More... | |
typedef mi::Float32_2_struct | mi::neuraylib::tct_float2 |
A float2. More... | |
typedef mi::Float32_3_struct | mi::neuraylib::tct_float3 |
A float3. More... | |
typedef mi::Float32_4_struct | mi::neuraylib::tct_float4 |
A float4. More... | |
typedef mi::Sint32 | mi::neuraylib::tct_int |
An int. More... | |
typedef mi::Uint32 | mi::neuraylib::tct_uint |
An unsigned int. More... | |
typedef bool | mi::neuraylib::tct_bool |
A bool. More... | |
typedef tct_traits<true>::tct_derivable_float | mi::neuraylib::tct_deriv_float |
A float with derivatives. More... | |
typedef tct_traits<true>::tct_derivable_float2 | mi::neuraylib::tct_deriv_float2 |
A float2 with derivatives. More... | |
typedef tct_traits<true>::tct_derivable_float3 | mi::neuraylib::tct_deriv_float3 |
A float3 with derivatives. More... | |
typedef tct_traits<true>::tct_derivable_float4 | mi::neuraylib::tct_deriv_float4 |
A float4 with derivatives. More... | |
typedef tct_deriv< float[2]> | mi::neuraylib::tct_deriv_arr_float_2 |
A float[2] with derivatives (needed to avoid problems with wrong alignment). More... | |
typedef tct_deriv< float[3]> | mi::neuraylib::tct_deriv_arr_float_3 |
A float[3] with derivatives (needed to avoid problems with wrong alignment). More... | |
typedef tct_deriv< float[4]> | mi::neuraylib::tct_deriv_arr_float_4 |
A float[4] with derivatives (needed to avoid problems with wrong alignment). More... | |
typedef struct Shading_state_material_impl<false> | mi::neuraylib::Shading_state_material |
The MDL material state structure. More... | |
typedef struct Shading_state_material_impl<true> | mi::neuraylib::Shading_state_material_with_derivs |
The MDL material state structure with derivatives for the texture coordinates. More... | |
typedef Texture_handler_vtable_impl<false> | mi::neuraylib::Texture_handler_vtable |
The texture handler vtable struct. More... | |
typedef Texture_handler_vtable_impl<true> | mi::neuraylib::Texture_handler_deriv_vtable |
The texture handler vtable struct with derivatives for the texture coordinates. More... | |
typedef void() | mi::neuraylib::Environment_function(void *result, Shading_state_environment const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of environment functions created via mi::neuraylib::IMdl_backend::translate_environment() and mi::neuraylib::ILink_unit::add_function(). More... | |
typedef void() | mi::neuraylib::Material_expr_function(void *result, Shading_state_material const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of material expression functions created via mi::neuraylib::IMdl_backend::translate_material_expression() and mi::neuraylib::ILink_unit::add_material_expression(). More... | |
typedef void() | mi::neuraylib::Material_expr_function_with_derivs(void *result, Shading_state_material_with_derivs const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of material expression functions created via mi::neuraylib::IMdl_backend::translate_material_expression() and mi::neuraylib::ILink_unit::add_material_expression(). More... | |
typedef void() | mi::neuraylib::Bsdf_init_function(Shading_state_material *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the initialization function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Bsdf_init_function_with_derivs(Shading_state_material_with_derivs *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the initialization function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Bsdf_sample_function(Bsdf_sample_data *data, Shading_state_material const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the importance sampling function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Bsdf_sample_function_with_derivs(Bsdf_sample_data *data, Shading_state_material_with_derivs const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the importance sampling function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Bsdf_evaluate_function(Bsdf_evaluate_data_base *data, Shading_state_material const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the evaluation function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Bsdf_evaluate_function_with_derivs(Bsdf_evaluate_data_base *data, Shading_state_material_with_derivs const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the evaluation function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Bsdf_pdf_function(Bsdf_pdf_data *data, Shading_state_material const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the probability density function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Bsdf_pdf_function_with_derivs(Bsdf_pdf_data *data, Shading_state_material_with_derivs const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the probability density function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Bsdf_auxiliary_function(Bsdf_auxiliary_data_base *data, Shading_state_material const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the auxiliary function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Bsdf_auxiliary_function_with_derivs(Bsdf_auxiliary_data_base *data, Shading_state_material_with_derivs const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the auxiliary function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Edf_init_function(Shading_state_material *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the initialization function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Edf_init_function_with_derivs(Shading_state_material_with_derivs *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the initialization function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Edf_sample_function(Edf_sample_data *data, Shading_state_material const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the importance sampling function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Edf_sample_function_with_derivs(Edf_sample_data *data, Shading_state_material_with_derivs const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the importance sampling function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Edf_evaluate_function(Edf_evaluate_data_base *data, Shading_state_material const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the evaluation function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Edf_evaluate_function_with_derivs(Edf_evaluate_data_base *data, Shading_state_material_with_derivs const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the evaluation function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Edf_pdf_function(Edf_pdf_data *data, Shading_state_material const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the probability density function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Edf_pdf_function_with_derivs(Edf_pdf_data *data, Shading_state_material_with_derivs const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the probability density function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Edf_auxiliary_function(Edf_auxiliary_data_base *data, Shading_state_material const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the auxiliary function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
typedef void() | mi::neuraylib::Edf_auxiliary_function_with_derivs(Edf_auxiliary_data_base *data, Shading_state_material_with_derivs const *state, Resource_data const *res_data, char const *arg_block_data) |
Signature of the auxiliary function for material distribution functions created via mi::neuraylib::IMdl_backend::translate_material_df() and mi::neuraylib::ILink_unit::add_material_df(). More... | |
Enumerations | |
enum | mi::neuraylib::Tex_wrap_mode { mi::neuraylib::TEX_WRAP_CLAMP = 0 , mi::neuraylib::TEX_WRAP_REPEAT = 1 , mi::neuraylib::TEX_WRAP_MIRRORED_REPEAT = 2 , mi::neuraylib::TEX_WRAP_CLIP = 3 } |
The texture wrap modes as defined by tex::wrap_mode in the MDL specification. More... | |
enum | mi::neuraylib::Mbsdf_part { mi::neuraylib::MBSDF_DATA_REFLECTION = 0 , mi::neuraylib::MBSDF_DATA_TRANSMISSION = 1 } |
MBSDFs can consist of two parts, which can be selected using this enumeration. More... | |
enum | mi::neuraylib::Bsdf_event_type |
The type of events created by BSDF importance sampling. More... | |
enum | mi::neuraylib::Df_flags { mi::neuraylib::DF_FLAGS_NONE = 0 , DF_FLAGS_ALLOW_REFLECT = 1 , DF_FLAGS_ALLOW_TRANSMIT = 2 , DF_FLAGS_ALLOW_REFLECT_AND_TRANSMIT = DF_FLAGS_ALLOW_REFLECT | DF_FLAGS_ALLOW_TRANSMIT , DF_FLAGS_ALLOWED_SCATTER_MODE_MASK = DF_FLAGS_ALLOW_REFLECT_AND_TRANSMIT , DF_FLAGS_FORCE_32_BIT = 0xffffffffU } |
Flags controlling the calculation of DF results. More... | |
enum | mi::neuraylib::Df_handle_slot_mode { mi::neuraylib::DF_HSM_POINTER = -2 , mi::neuraylib::DF_HSM_NONE = -1 , mi::neuraylib::DF_HSM_FIXED_1 = 1 , mi::neuraylib::DF_HSM_FIXED_2 = 2 , mi::neuraylib::DF_HSM_FIXED_4 = 4 , mi::neuraylib::DF_HSM_FIXED_8 = 8 } |
Type of Bsdf_evaluate_data variants, depending on the backend and its configuration. More... | |
enum | mi::neuraylib::Edf_event_type |
The type of events created by EDF importance sampling. More... | |
Types required for execution of generated native and CUDA code.