blob: 1e181036165a6067609fe92048a91367e110add4 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#pragma once
#include <ostream>
#include "../GFX/Image/RawImage.hpp"
#include "../GFX/Binder.hpp"
#include "../GFX/Texture.hpp"
#include "../GFX/Shading/Program.hpp"
namespace MC::Util {
class ImageViewer {
public:
explicit ImageViewer(const GFX::Image::RawImage& image, Real window_aspect);
void render() const;
private:
static GFX::Mesh create_mesh(Real window_aspect, U32 image_width, U32 image_height);
static constexpr Real view_size = 1000.0f;
static const Char* vertex;
static const Char* fragment;
GFX::BindableMesh m_mesh;
GFX::Shading::Program m_program;
GFX::Texture m_texture;
};
}
|