Copyright Matus Chochlik. Distributed under the Boost Software License, Version 1.0. See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
#ifndef OGLPLUS_EXAMPLE_RESOURCES_HPP // NOLINT(llvm-header-guard)
#define OGLPLUS_EXAMPLE_RESOURCES_HPP
#include <array>
class cubes_program {
public:
void init(execution_context&, video_context&);
void clean_up(video_context&);
void set_projection(video_context&, orbiting_camera& camera);
void update(execution_context&, video_context&);
void drawing_surface(video_context&);
void drawing_edges(video_context&);
private:
};
class cubes_geometry {
public:
void init(execution_context&, video_context&);
void clean_up(video_context&);
void draw_surface(video_context&);
void draw_edges(video_context&);
static auto position_loc() noexcept {
}
static auto pivot_loc() noexcept {
}
static auto coord_loc() noexcept {
}
private:
oglp::owned_buffer_name positions;
oglp::owned_buffer_name pivots;
oglp::owned_buffer_name coords;
oglp::owned_buffer_name indices;
std::vector<oglp::shape_draw_operation> ops{};
std::array<oglp::shape_draw_subset, 2> subs{};
};
}
#endif