le2d v0.4.7
2D game engine framework
 
Loading...
Searching...
No Matches
geometry.hpp
Go to the documentation of this file.
1#pragma once
2#include "le2d/vertex.hpp"
3#include <klib/base_types.hpp>
4#include <vulkan/vulkan.hpp>
5#include <cstdint>
6
7namespace le {
9class IGeometry : public klib::Polymorphic {
10 public:
11 static constexpr auto default_length_v{200.0f};
12
13 [[nodiscard]] virtual auto get_vertices() const -> std::span<Vertex const> = 0;
14 [[nodiscard]] virtual auto get_indices() const -> std::span<std::uint32_t const> = 0;
15 [[nodiscard]] virtual auto get_topology() const -> vk::PrimitiveTopology = 0;
16};
17} // namespace le
Interface for drawable geometry.
Definition geometry.hpp:9
virtual auto get_vertices() const -> std::span< Vertex const >=0
static constexpr auto default_length_v
Definition geometry.hpp:11
virtual auto get_indices() const -> std::span< std::uint32_t const >=0
virtual auto get_topology() const -> vk::PrimitiveTopology=0
Definition animation.hpp:8
Drawable vertex.
Definition vertex.hpp:7