29 lines
588 B
C++
29 lines
588 B
C++
#pragma once
|
|
|
|
#include <span>
|
|
#include <tuple>
|
|
|
|
#include "assets/components/point_cloud_vertex_components.hpp"
|
|
|
|
namespace assets
|
|
{
|
|
|
|
namespace detail
|
|
{
|
|
template<typename... Ts>
|
|
struct generic_point_cloud_view
|
|
{
|
|
point_cloud_vertex_components::flags vertex_component_flags;
|
|
std::tuple<std::span<Ts>...> vertex_component_arrays;
|
|
std::size_t point_count;
|
|
};
|
|
}
|
|
|
|
using point_cloud_view = detail::generic_point_cloud_view<
|
|
point_cloud_vertex_components::position,
|
|
point_cloud_vertex_components::normal,
|
|
point_cloud_vertex_components::color,
|
|
point_cloud_vertex_components::reflectance
|
|
>;
|
|
|
|
} |