NVIDIA IndeX API nvidia_logo_transpbg.gif Up
xac_interface_scene_elements_vdb_volume_doc.h
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright 2023 NVIDIA Corporation. All rights reserved.
3 *****************************************************************************/
6
7namespace nv {
8namespace index {
9namespace xac {
10
14{
17};
18
22enum class VDB_grid_type : uint32_t
23{
24 Unknown = 0,
25 Float = 1, // single precision floating point value
26 Fp4 = 13,// 4bit quantization of float point value
27 Fp8 = 14,// 8bit quantization of float point value
28 Fp16 = 15,// 16bit quantization of float point value
29 FpN = 16// variable bit quantization of floating point value
30};
31
34template<typename VDB_attrib_type,
36 typename VDB_grid_type,
37 bool VDB_sampler_use_cache>
39{
40
41public:
42
50 VDB_attrib_type fetch_sample(const float3& sample_position) const;
51
61 float4 fetch_sample_classify( const float3& sample_position,
62 const xac::Colormap& color_map) const;
63
64};
65
69{
70public:
73
80 template<typename VDB_attrib_type,
81 Volume_filter_mode VDB_filter_mode = default_filter_mode,
82 typename VDB_grid_type = default_grid_type,
83 bool VDB_sampler_use_cache = yes>
84 VDB_sampler<VDB_attrib_type,
87 VDB_sampler_use_cache> generate_sampler(
88 const unsigned attrib_idx = 0u) const;
89
95
97 float get_sample_distance() const
98
100 const float3& get_volume_bbox_min() const;
101
103 const float3& get_volume_bbox_max() const;
104
106 const Mat4x4f& get_scene_to_object_transform() const;
107
110
111};
112
113} // namespace xac
114} // namespace index
115} // namespace nv
Colormap.
Definition: xac_interface_scene_elements_doc.h:139
VDB volume sampler for retrieving filtered and optionally classified volume samples.
Definition: xac_interface_scene_elements_vdb_volume_doc.h:39
float4 fetch_sample_classify(const float3 &sample_position, const xac::Colormap &color_map) const
Sample a VDB volume attribute at the provided sample location.
VDB_attrib_type fetch_sample(const float3 &sample_position) const
Sample a VDB volume attribute at the provided sample location.
VDB volume reference class used to represent volumes loaded in the NanoVDB volume format.
Definition: xac_interface_scene_elements_vdb_volume_doc.h:69
xac::Colormap get_colormap() const
Get the colormap currently associated with the volume through the scene setup.
VDB_sampler<VDB_attrib_type, VDB_filter_mode, VDB_grid_type, VDB_sampler_use_cache> generate_sampler(const unsigned attrib_idx=0u) const
Generates a VDB volume sampler object for a given attribute index.
const Mat4x4f & get_scene_to_object_transform() const
Get the transformation matrix to transform from scene space to object space coordinates.
const float3 & get_volume_bbox_max() const
Get the VDB volume bounding box maximum coordinate.
Sample_info_vdb Base_info_type
Declaring the VDB volume sample info.
Definition: xac_interface_scene_elements_vdb_volume_doc.h:72
const Mat4x4f & get_scene_to_object_transform_inverse() const
Get the transformation matrix to transform from object space to scene space coordinates.
float get_sample_distance() const const float3 &get_volume_bbox_min() const
Get the distance of the current sample with respec to the camera.
VDB_filter_mode
Filtering modes (interpolation) for VDB volume access.
Definition: ivdb_rendering_properties.h:21
Volume_filter_mode
Sparse volume filter modes.
Definition: xac_interface_scene_elements_sparse_volume_doc.h:79
VDB_grid_type
List of grid types that are currently supported by VDB_Volume class (note: represents a subset of ful...
Definition: xac_interface_scene_elements_vdb_volume_doc.h:23
VDB_volume_filter_mode
Available volume filters for VDB (NanoVDB) volumes.
Definition: xac_interface_scene_vdb_volume_filters_doc.h:14
Common namespace for all NVIDIA APIs.
Definition: iindex.h:349
Sample information for VDB volumes.
Definition: xac_interface_scene_elements_vdb_volume_doc.h:14
float3 sample_position_object_space
Sample position in object space.
Definition: xac_interface_scene_elements_vdb_volume_doc.h:16
Generic ray sampling information.
Definition: xac_interface_sample_info_doc.h:16