Covellite++
Version: 2.3.2 Revision: 2584 Platform: x64 Build: 19:03 05.09.2026
Кроссплатформенный фреймворк для разработки приложений на С++
Toggle main menu visibility
Загрузка...
Поиск...
Не найдено
OpenGLCommon.hpp
1
2
#pragma once
3
#include <glm/glm.force.hpp>
4
#include "GraphicApi.hpp"
5
6
namespace
covellite
7
{
8
9
namespace
api
10
{
11
12
namespace
renderer
13
{
14
36
class
OpenGLCommon :
37
public
GraphicApi
38
{
39
public
:
40
class
Texture;
41
using
MatrixBuilder_t = ::std::function<void(::glm::mat4 &)>;
42
43
public
:
44
// Интерфейс IGraphicApi:
45
String_t GetUsingApi(
void
)
const override
;
46
void
ResizeWindow(
const
Rect &)
noexcept
final
;
47
48
protected
:
49
// Интефейс GraphicApi
50
Render_t CreateState(
const
ComponentPtr_t &)
override
;
51
52
protected
:
53
Render_t GetDepthRender(
const
bool
,
const
bool
,
const
bool
);
54
MatrixBuilder_t GetPreRenderGeometry(
const
ComponentPtr_t &);
55
MatrixBuilder_t GetPreRenderBillboardGeometry(
const
ComponentPtr_t &);
56
57
protected
:
58
class
TexParameters final
59
{
60
public
:
61
GLint MinFilter = 0;
62
GLint MagFilter = 0;
63
GLint WrapS = 0;
64
GLint WrapT = 0;
65
};
66
67
TexParameters m_TexParameters;
68
69
protected
:
70
int
m_Top;
71
int
m_Width = 0;
72
int
m_Height = 0;
73
const
uint8_t Align[4] = { 0 };
74
const
String_t m_PreVersion;
75
76
protected
:
77
OpenGLCommon(
const
Data_t &,
const
String_t &);
78
OpenGLCommon(
const
OpenGLCommon &) =
delete
;
79
OpenGLCommon(OpenGLCommon &&) =
delete
;
80
OpenGLCommon & operator= (
const
OpenGLCommon &) =
delete
;
81
OpenGLCommon & operator= (OpenGLCommon &&) =
delete
;
82
~OpenGLCommon(
void
) =
default
;
83
};
84
85
}
// namespace renderer
86
87
}
// namespace api
88
89
}
// namespace covellite
Solution
Solution
Covellite.Api
Covellite.Api
Renderer
OpenGLCommon.hpp
Документация по Covellite++. Последние изменения:
. Создано системой
1.18.0