Archived
1
Fork 0
This repository has been archived on 2025-04-12. You can view files and clone it, but cannot push or open issues or pull requests.
prism/engine/renderer/include/imguipass.hpp

35 lines
751 B
C++
Raw Normal View History

2020-08-11 12:07:21 -04:00
#pragma once
#include <string_view>
#include "pass.hpp"
class GFXBuffer;
class GFXCommandBuffer;
class GFXPipeline;
class GFXTexture;
struct ImDrawData;
class ImGuiPass : public Pass {
public:
void initialize() override;
2020-08-13 07:48:50 -04:00
void resize(const prism::Extent extent) override;
2020-08-11 12:07:21 -04:00
void render_post(GFXCommandBuffer* command_buffer, const int index) override;
private:
void load_font(const std::string_view filename);
void create_font_texture();
void update_buffers(const ImDrawData& draw_data);
GFXPipeline* pipeline = nullptr;
GFXTexture* font_texture = nullptr;
GFXBuffer* vertex_buffer = nullptr;
int current_vertex_size = 0;
GFXBuffer* index_buffer = nullptr;
int current_index_size = 0;
};