143 virtual void const*
data()
const = 0;
146 template <
typename T>
149 return static_cast<T const*
>(
data());
151 template <
typename T>
154 return static_cast<T*
>(
data());
205 virtual std::size_t
count()
const = 0;
207 virtual void const*
max()
const = 0;
208 virtual void const*
min()
const = 0;
virtual neolib::i_optional< neolib::i_string > const & name() const =0
virtual std::size_t byte_offset() const =0
virtual void const * max() const =0
virtual i_buffer_view const & buffer_view() const =0
virtual ~i_accessor()=default
virtual accessor_type type() const =0
virtual i_buffer_view & buffer_view()=0
virtual bool has_sparse() const =0
virtual bool normalized() const =0
virtual i_sparse_array & sparse()=0
virtual void const * min() const =0
virtual i_sparse_array const & sparse() const =0
virtual accessor_component_type component_type() const =0
virtual std::size_t count() const =0
virtual i_accessor & attribute(vertex_attribute aAttribute)=0
i_attributes abstract_type
virtual ~i_attributes()=default
virtual i_accessor const & attribute(vertex_attribute aAttribute) const =0
virtual bool has_attribute(vertex_attribute aAttribute) const =0
virtual std::size_t byte_stride() const =0
virtual i_buffer const & buffer() const =0
virtual ~i_buffer_view()=default
virtual std::size_t byte_length() const =0
virtual i_buffer & buffer()=0
i_buffer_view abstract_type
virtual std::size_t byte_offset() const =0
virtual buffer_view_target target() const =0
virtual neolib::i_optional< neolib::i_string > const & name() const =0
virtual ~i_buffer()=default
virtual std::size_t byte_length() const =0
virtual void const * data() const =0
virtual neolib::i_optional< neolib::i_string > const & name() const =0
virtual camera_type type()=0
virtual neolib::i_optional< neolib::i_string > const & name() const =0
virtual ~i_camera()=default
i_occlusion_texture abstract_type
virtual neolib::i_optional< i_buffer_view > const & buffer_view() const =0
virtual ~i_image()=default
virtual neolib::i_optional< neolib::i_string > const & uri() const =0
virtual neolib::i_optional< neolib::i_string > const & mime_type() const =0
virtual neolib::i_optional< neolib::i_string > const & name() const =0
virtual i_emissive_texture & emissive_texture()=0
virtual i_occlusion_texture & occlusion_texture()=0
virtual i_normal_texture const & normal_texture() const =0
virtual ~i_material()=default
virtual neolib::i_optional< neolib::i_string > const & name() const =0
virtual i_emissive_texture const & emissive_texture() const =0
virtual vec3 const & emissive_factor() const =0
virtual bool double_sided() const =0
virtual i_pbr_metallic_roughness & pbr_metallic_roughness()=0
virtual i_normal_texture & normal_texture()=0
virtual i_occlusion_texture const & occlusion_texture() const =0
virtual i_pbr_metallic_roughness const & pbr_metallic_roughness() const =0
virtual scalar alpha_cutoff() const =0
virtual neolib::i_optional< neolib::i_string > const & name() const =0
virtual i_material & material()=0
virtual rendering_mode mode() const =0
virtual i_attributes & attributes()=0
virtual i_accessor & indices()=0
virtual i_accessor const & indices() const =0
virtual ~i_mesh_primitive()=default
virtual i_material const & material() const =0
virtual i_morph_target const & morph_targets() const =0
i_mesh_primitive abstract_type
virtual i_morph_target & morph_targets()=0
virtual i_attributes const & attributes() const =0
virtual ~i_mesh()=default
virtual neolib::i_vector< scalar > const & weights() const =0
virtual neolib::i_optional< neolib::i_string > const & name() const =0
virtual neolib::i_vector< scalar > & weights()=0
i_morph_target abstract_type
virtual neolib::i_vector< scalar > const & weights() const =0
virtual i_camera & camera()=0
virtual neolib::i_vector< scalar > & weights()=0
virtual bool has_camera() const =0
virtual i_skin & skin()=0
virtual i_skin const & skin() const =0
virtual i_camera const & camera() const =0
virtual bool has_skin() const =0
virtual neolib::i_vector< i_node * > & children()=0
neolib::i_plugin_variant< local_transform_flavour, matrix_transform, trs_transform > local_transform_type
virtual local_transform_type & local_transform()=0
virtual neolib::i_optional< neolib::i_string > const & name() const =0
virtual neolib::i_vector< i_node * > const & children() const =0
virtual bool has_mesh() const =0
virtual local_transform_type const & local_transform() const =0
virtual i_mesh const & mesh() const =0
virtual i_mesh & mesh()=0
virtual ~i_node()=default
i_normal_texture abstract_type
virtual scalar scale() const =0
i_occlusion_texture abstract_type
virtual scalar strength_cutoff() const =0
virtual scalar znear() const =0
virtual scalar zfar() const =0
i_orthographic_camera abstract_type
virtual scalar xmag() const =0
virtual scalar yfov() const =0
virtual neolib::i_optional< scalar > const & aspectRatio() const =0
virtual neolib::i_optional< scalar > const & zfar() const =0
virtual scalar znear() const =0
i_perspective_camera abstract_type
virtual scene_graph::min_filter min_filter() const =0
virtual scene_graph::mag_filter mag_filter() const =0
virtual wrapping_mode wrap_S() const =0
virtual neolib::i_optional< neolib::i_string > const & name() const =0
virtual wrapping_mode wrap_T() const =0
virtual ~i_sampler()=default
virtual i_node & root()=0
virtual i_node const & root() const =0
virtual ~i_scene()=default
virtual ~i_skin()=default
virtual neolib::i_optional< neolib::i_string > const & name() const =0
virtual std::size_t indices_byte_offset() const =0
virtual i_buffer_view const & indices_buffer_view() const =0
virtual i_buffer_view & indices_buffer_view()=0
virtual i_buffer_view const & values_buffer_view() const =0
virtual std::size_t values_byte_offset() const =0
virtual accessor_component_type indices_component_type() const =0
i_sparse_array abstract_type
virtual i_buffer_view & values_buffer_view()=0
virtual ~i_sparse_array()=default
virtual i_texture & texture()=0
i_texture_reference abstract_type
virtual ~i_texture_reference()=default
virtual i_texture const & texture() const =0
virtual scene_graph::tex_coord tex_coord() const =0
virtual i_image const & source() const =0
virtual i_image & source()=0
virtual ~i_texture()=default
virtual i_sampler const & sampler() const =0
virtual i_sampler & sampler()=0
virtual neolib::i_optional< neolib::i_string > const & name() const =0