nngn
Loading...
Searching...
No Matches
anonymous_namespace{opengl.cpp}::OpenGLBackend Class Referencefinal
Inheritance diagram for anonymous_namespace{opengl.cpp}::OpenGLBackend:
Collaboration diagram for anonymous_namespace{opengl.cpp}::OpenGLBackend:

Public Member Functions

 OpenGLBackend (const OpenGLParameters &params, bool es)
 
Version version () const final
 
bool init_backend () final
 
bool init_instance () final
 
bool init_device () final
 
bool init_device (std::size_t) final
 
std::size_t n_extensions () const final
 
std::size_t n_layers () const final
 
std::size_t n_devices () const final
 
std::size_t n_device_extensions (std::size_t) const final
 
std::size_t n_queue_families (std::size_t) const final
 
std::size_t n_present_modes () const final
 
std::size_t n_heaps (std::size_t) const final
 
std::size_t n_memory_types (std::size_t, std::size_t) const final
 
std::size_t selected_device () const final
 
void extensions (Extension *) const final
 
void layers (Layer *) const final
 
void device_infos (DeviceInfo *) const final
 
void device_extensions (std::size_t, Extension *) const final
 
void queue_families (std::size_t, QueueFamily *) const final
 
SurfaceInfo surface_info () const final
 
void present_modes (PresentMode *) const final
 
void heaps (std::size_t, MemoryHeap *) const final
 
void memory_types (std::size_t, std::size_t, MemoryType *) const final
 
bool error () final
 
bool set_n_frames (std::size_t) final
 
bool set_n_swap_chain_images (std::size_t) final
 
nngn::GraphicsStats stats () final
 
void set_camera_updated () final
 
void set_lighting_updated () final
 
bool set_shadow_map_size (u32 s) final
 
bool set_shadow_cube_size (u32 s) final
 
void set_automatic_exposure (bool b) final
 
void set_exposure (float e) final
 
void set_bloom_downscale (std::size_t d) final
 
void set_bloom_threshold (float t) final
 
void set_bloom_blur_size (float n) final
 
void set_bloom_blur_passes (std::size_t n) final
 
void set_bloom_amount (float a) final
 
void set_blur_downscale (std::size_t d) final
 
void set_blur_size (float n) final
 
void set_blur_passes (std::size_t n) final
 
void set_HDR_mix (float m) final
 
u32 create_pipeline (const PipelineConfiguration &conf) final
 
u32 create_buffer (const BufferConfiguration &conf) final
 
bool set_buffer_capacity (u32 b, u64 size) final
 
bool set_buffer_size (u32 b, u64 size) final
 
bool write_to_buffer (u32 b, u64 offset, u64 n, u64 size, void *data, void f(void *, void *, u64, u64)) final
 
bool resize_textures (u32 s) final
 
bool load_textures (u32 i, u32 n, const std::byte *v) final
 
bool resize_font (u32 s) final
 
bool load_font (unsigned char c, u32 n, const nngn::uvec2 *size, const std::byte *v) final
 
bool set_render_list (const RenderList &) final
 
bool render () final
 
bool vsync () final
 
- Public Member Functions inherited from nngn::GLFWBackend
 GLFWBackend (void)=default
 
 GLFWBackend (const Parameters &p)
 
 ~GLFWBackend (void) override
 
bool init_glfw (void) const
 
bool window_closed (void) const final
 
int swap_interval (void) const final
 
nngn::uvec2 window_size (void) const override
 
void get_keys (size_t n, int32_t *keys) const override
 
ivec2 mouse_pos (void) const override
 
void set_swap_interval (int i) override
 
void set_window_title (const char *t) final
 
void set_cursor_mode (CursorMode m) final
 
void set_size_callback (void *data, size_callback_f f) override
 
void set_key_callback (void *data, key_callback_f f) override
 
void set_mouse_button_callback (void *data, mouse_button_callback_f f) override
 
void set_mouse_move_callback (void *data, mouse_move_callback_f f) override
 
void set_camera (const Camera &c) override
 
void set_lighting (const Lighting &l) override
 
void poll_events (void) const final
 
- Public Member Functions inherited from nngn::Graphics
virtual bool init ()
 Fully initialize the back end.
 
virtual bool set_shadow_map_size (uint32_t s)=0
 
virtual bool set_shadow_cube_size (uint32_t s)=0
 
virtual bool set_buffer_capacity (u32 b, u64 size)=0
 
virtual bool set_buffer_size (u32 b, std::uint64_t size)=0
 
virtual bool write_to_buffer (u32 b, u64 offset, u64 n, u64 size, void *data, void f(void *, void *, u64, u64))=0
 
template<typename F >
bool write_to_buffer (u32 b, u64 offset, u64 n, u64 size, F &&f)
 
bool update_buffers (u32 vbo, u32 ebo, u64 voff, u64 eoff, u64 vn, u64 vsize, u64 en, u64 esize, void *data, auto &&vgen, auto &&egen)
 
virtual bool resize_textures (std::uint32_t s)=0
 
virtual bool load_textures (std::uint32_t i, std::uint32_t n, const std::byte *v)=0
 
virtual bool resize_font (std::uint32_t s)=0
 
virtual bool load_font (unsigned char c, std::uint32_t n, const nngn::uvec2 *size, const std::byte *v)=0
 

Private Types

enum  Flag : u8 {
  ES = 1u << 0 , CALLBACK_ERROR = 1u << 1 , RESIZED = 1u << 2 , CAMERA_UPDATED = 1u << 3 ,
  LIGHTING_UPDATED = 1u << 4
}
 

Private Member Functions

void resize (int, int) final
 
bool create_vao (u32 vbo, u32 ebo, PipelineConfiguration::Type type, nngn::VAO *vao)
 

Static Private Member Functions

static bool create_uniform_buffer (std::string_view name, u64 size, nngn::GLBuffer *b)
 

Private Attributes

nngn::Flags< Flagflags = {}
 
int maj = 0
 
int min = 0
 
GLsizei shadow_map_size = SHADOW_MAP_INITIAL_SIZE
 
GLsizei shadow_cube_size = SHADOW_CUBE_INITIAL_SIZE
 
nngn::GLPost post = {}
 
nngn::GLBuffer camera_ubo = {}
 
nngn::GLBuffer camera_screen_ubo = {}
 
std::array< nngn::GLBuffer, 7_z *NNGN_MAX_LIGHTSshadow_camera_ubos = {}
 
nngn::GLBuffer lights_ubo = {}
 
nngn::GLBuffer no_lights_ubo = {}
 
std::list< nngn::GLBufferstg_buffers = {}
 
std::vector< nngn::GLBufferbuffers = std::vector<nngn::GLBuffer>(1)
 
std::vector< Pipelinepipelines = {{}}
 
std::array< nngn::GLProgram, N_PROGRAMSprograms = {}
 
GLint triangle_prog_alpha_loc = -1
 
::RenderList render_list = {}
 
nngn::GLTexArray tex = {}
 
nngn::GLTexArray font_tex = {}
 
GLFramebuffer lights_fb = {}
 
GLShadowMap shadow_map = {}
 
std::array< GLShadowCube, NNGN_MAX_LIGHTSshadow_cubes = {}
 

Additional Inherited Members

- Public Types inherited from nngn::Graphics
enum class  Backend : u8 {
  PSEUDOGRAPH , TERMINAL_BACKEND , OPENGL_BACKEND , OPENGL_ES_BACKEND ,
  VULKAN_BACKEND
}
 
enum class  LogLevel { DEBUG , WARNING , ERROR }
 
enum class  PresentMode { IMMEDIATE , MAILBOX , FIFO , FIFO_RELAXED }
 
enum class  TerminalFlag : u8 {
  CLEAR = 1u << 0 , REPOSITION = 1u << 1 , DEDUPLICATE = 1u << 2 , HIDE_CURSOR = 1u << 3 ,
  RESET_COLOR = 1u << 4
}
 
enum class  TerminalMode { ASCII , COLORED }
 
enum class  CursorMode { NORMAL , HIDDEN , DISABLED }
 
using size_callback_f = void (*)(void*, uvec2)
 
using key_callback_f = void (*)(void*, int, int, int, int)
 
using mouse_button_callback_f = void (*)(void*, int, int, int)
 
using mouse_move_callback_f = void (*)(void*, dvec2)
 
- Static Public Member Functions inherited from nngn::Graphics
static std::unique_ptr< Graphicscreate (Backend b, const void *params)
 
static const char * enum_str (DeviceInfo::Type t)
 
static const char * enum_str (QueueFamily::Flag f)
 
static const char * enum_str (PresentMode m)
 
static const char * enum_str (MemoryHeap::Flag m)
 
static const char * enum_str (MemoryType::Flag m)
 
static std::string flags_str (QueueFamily::Flag f)
 
static std::string flags_str (MemoryHeap::Flag f)
 
static std::string flags_str (MemoryType::Flag f)
 
- Static Public Attributes inherited from nngn::Graphics
static constexpr u32 TEXTURE_EXTENT = NNGN_TEXTURE_EXTENT
 
static constexpr u32 TEXTURE_EXTENT_LOG2 = std::countr_zero(TEXTURE_EXTENT)
 
static constexpr u32 TEXTURE_SIZE = NNGN_TEXTURE_SIZE
 
static constexpr u32 TEXTURE_MIP_LEVELS = Math::mip_levels(TEXTURE_EXTENT)
 
static constexpr u32 SHADOW_MAP_INITIAL_SIZE = 1024
 
static constexpr u32 SHADOW_CUBE_INITIAL_SIZE = 512
 
static constexpr float DEFAULT_EXPOSURE = 1.0f
 
static constexpr float DEFAULT_BLOOM_THRESHOLD = 0.75f
 
static constexpr float DEFAULT_BLOOM_BLUR_SIZE = 1.0f
 
static constexpr std::size_t DEFAULT_BLOOM_DOWNSCALE = 8
 
static constexpr std::size_t DEFAULT_BLUR_DOWNSCALE = 2
 
static constexpr std::size_t DEFAULT_BLOOM_BLUR_PASSES = 10
 
- Protected Member Functions inherited from nngn::GLFWBackend
bool create_window (void)
 
- Protected Attributes inherited from nngn::GLFWBackend
int m_swap_interval = 1
 
GLFWwindow * w = nullptr
 
Parameters params = {}
 
Camera camera = {}
 
Lighting lighting = {}
 

Member Enumeration Documentation

◆ Flag

enum anonymous_namespace{opengl.cpp}::OpenGLBackend::Flag : u8
private
Enumerator
ES 
CALLBACK_ERROR 
RESIZED 
CAMERA_UPDATED 
LIGHTING_UPDATED 

Constructor & Destructor Documentation

◆ OpenGLBackend()

anonymous_namespace{opengl.cpp}::OpenGLBackend::OpenGLBackend ( const OpenGLParameters & params,
bool es )
Here is the call graph for this function:

Member Function Documentation

◆ create_buffer()

u32 anonymous_namespace{opengl.cpp}::OpenGLBackend::create_buffer ( const BufferConfiguration & conf)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ create_pipeline()

u32 anonymous_namespace{opengl.cpp}::OpenGLBackend::create_pipeline ( const PipelineConfiguration & conf)
finalvirtual

Implements nngn::Graphics.

◆ create_uniform_buffer()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::create_uniform_buffer ( std::string_view name,
u64 size,
nngn::GLBuffer * b )
staticprivate
Here is the call graph for this function:
Here is the caller graph for this function:

◆ create_vao()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::create_vao ( u32 vbo,
u32 ebo,
PipelineConfiguration::Type type,
nngn::VAO * vao )
private
Here is the call graph for this function:
Here is the caller graph for this function:

◆ device_extensions()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::device_extensions ( std::size_t ,
Extension *  ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ device_infos()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::device_infos ( DeviceInfo * p) const
finalvirtual

Implements nngn::Graphics.

◆ error()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::error ( )
inlinefinalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ extensions()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::extensions ( Extension * p) const
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ heaps()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::heaps ( std::size_t ,
MemoryHeap *  ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ init_backend()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::init_backend ( void )
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ init_device() [1/2]

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::init_device ( void )
inlinefinalvirtual

Implements nngn::Graphics.

◆ init_device() [2/2]

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::init_device ( std::size_t )
inlinefinalvirtual

Implements nngn::Graphics.

◆ init_instance()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::init_instance ( void )
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ layers()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::layers ( Layer * ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ load_font()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::load_font ( unsigned char c,
u32 n,
const nngn::uvec2 * size,
const std::byte * v )
final
Here is the call graph for this function:

◆ load_textures()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::load_textures ( u32 i,
u32 n,
const std::byte * v )
final
Here is the call graph for this function:

◆ memory_types()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::memory_types ( std::size_t ,
std::size_t ,
MemoryType *  ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ n_device_extensions()

std::size_t anonymous_namespace{opengl.cpp}::OpenGLBackend::n_device_extensions ( std::size_t ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ n_devices()

std::size_t anonymous_namespace{opengl.cpp}::OpenGLBackend::n_devices ( void ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ n_extensions()

std::size_t anonymous_namespace{opengl.cpp}::OpenGLBackend::n_extensions ( void ) const
finalvirtual

Implements nngn::Graphics.

Here is the caller graph for this function:

◆ n_heaps()

std::size_t anonymous_namespace{opengl.cpp}::OpenGLBackend::n_heaps ( std::size_t ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ n_layers()

std::size_t anonymous_namespace{opengl.cpp}::OpenGLBackend::n_layers ( void ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ n_memory_types()

std::size_t anonymous_namespace{opengl.cpp}::OpenGLBackend::n_memory_types ( std::size_t ,
std::size_t  ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ n_present_modes()

std::size_t anonymous_namespace{opengl.cpp}::OpenGLBackend::n_present_modes ( void ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ n_queue_families()

std::size_t anonymous_namespace{opengl.cpp}::OpenGLBackend::n_queue_families ( std::size_t ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ present_modes()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::present_modes ( PresentMode * ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ queue_families()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::queue_families ( std::size_t ,
QueueFamily *  ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ render()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::render ( void )
finalvirtual

Reimplemented from nngn::GLFWBackend.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ resize()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::resize ( int ,
int  )
inlinefinalprivatevirtual

Reimplemented from nngn::GLFWBackend.

◆ resize_font()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::resize_font ( u32 s)
final
Here is the call graph for this function:

◆ resize_textures()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::resize_textures ( u32 s)
final
Here is the call graph for this function:

◆ selected_device()

std::size_t anonymous_namespace{opengl.cpp}::OpenGLBackend::selected_device ( void ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ set_automatic_exposure()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_automatic_exposure ( bool b)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_bloom_amount()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_bloom_amount ( float a)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_bloom_blur_passes()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_bloom_blur_passes ( std::size_t n)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_bloom_blur_size()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_bloom_blur_size ( float n)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_bloom_downscale()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_bloom_downscale ( std::size_t d)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_bloom_threshold()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_bloom_threshold ( float t)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_blur_downscale()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_blur_downscale ( std::size_t d)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_blur_passes()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_blur_passes ( std::size_t n)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_blur_size()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_blur_size ( float n)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_buffer_capacity()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::set_buffer_capacity ( u32 b,
u64 size )
final

◆ set_buffer_size()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::set_buffer_size ( u32 b,
u64 size )
final

◆ set_camera_updated()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_camera_updated ( void )
inlinefinalvirtual

Implements nngn::Graphics.

◆ set_exposure()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_exposure ( float e)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_HDR_mix()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_HDR_mix ( float m)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_lighting_updated()

void anonymous_namespace{opengl.cpp}::OpenGLBackend::set_lighting_updated ( )
inlinefinalvirtual

Implements nngn::Graphics.

◆ set_n_frames()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::set_n_frames ( std::size_t )
inlinefinalvirtual

Implements nngn::Graphics.

◆ set_n_swap_chain_images()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::set_n_swap_chain_images ( std::size_t )
inlinefinalvirtual

Implements nngn::Graphics.

◆ set_render_list()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::set_render_list ( const RenderList & l)
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:

◆ set_shadow_cube_size()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::set_shadow_cube_size ( u32 s)
final
Here is the caller graph for this function:

◆ set_shadow_map_size()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::set_shadow_map_size ( u32 s)
final
Here is the call graph for this function:
Here is the caller graph for this function:

◆ stats()

nngn::GraphicsStats anonymous_namespace{opengl.cpp}::OpenGLBackend::stats ( )
inlinefinalvirtual

Implements nngn::Graphics.

◆ surface_info()

SurfaceInfo anonymous_namespace{opengl.cpp}::OpenGLBackend::surface_info ( ) const
inlinefinalvirtual

Implements nngn::Graphics.

◆ version()

auto anonymous_namespace{opengl.cpp}::OpenGLBackend::version ( void ) const
finalvirtual

Implements nngn::Graphics.

◆ vsync()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::vsync ( )
finalvirtual

Implements nngn::Graphics.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ write_to_buffer()

bool anonymous_namespace{opengl.cpp}::OpenGLBackend::write_to_buffer ( u32 b,
u64 offset,
u64 n,
u64 size,
void * data,
void fvoid *, void *, u64, u64 )
final
Here is the call graph for this function:

Member Data Documentation

◆ buffers

std::vector<nngn::GLBuffer> anonymous_namespace{opengl.cpp}::OpenGLBackend::buffers = std::vector<nngn::GLBuffer>(1)
private

◆ camera_screen_ubo

nngn::GLBuffer anonymous_namespace{opengl.cpp}::OpenGLBackend::camera_screen_ubo = {}
private

◆ camera_ubo

nngn::GLBuffer anonymous_namespace{opengl.cpp}::OpenGLBackend::camera_ubo = {}
private

◆ flags

nngn::Flags<Flag> anonymous_namespace{opengl.cpp}::OpenGLBackend::flags = {}
private

◆ font_tex

nngn::GLTexArray anonymous_namespace{opengl.cpp}::OpenGLBackend::font_tex = {}
private

◆ lights_fb

GLFramebuffer anonymous_namespace{opengl.cpp}::OpenGLBackend::lights_fb = {}
private

◆ lights_ubo

nngn::GLBuffer anonymous_namespace{opengl.cpp}::OpenGLBackend::lights_ubo = {}
private

◆ maj

int anonymous_namespace{opengl.cpp}::OpenGLBackend::maj = 0
private

◆ min

int anonymous_namespace{opengl.cpp}::OpenGLBackend::min = 0
private

◆ no_lights_ubo

nngn::GLBuffer anonymous_namespace{opengl.cpp}::OpenGLBackend::no_lights_ubo = {}
private

◆ pipelines

std::vector<Pipeline> anonymous_namespace{opengl.cpp}::OpenGLBackend::pipelines = {{}}
private

◆ post

nngn::GLPost anonymous_namespace{opengl.cpp}::OpenGLBackend::post = {}
private

◆ programs

std::array<nngn::GLProgram, N_PROGRAMS> anonymous_namespace{opengl.cpp}::OpenGLBackend::programs = {}
private

◆ render_list

::RenderList anonymous_namespace{opengl.cpp}::OpenGLBackend::render_list = {}
private

◆ shadow_camera_ubos

std::array<nngn::GLBuffer, 7_z * NNGN_MAX_LIGHTS> anonymous_namespace{opengl.cpp}::OpenGLBackend::shadow_camera_ubos = {}
private

◆ shadow_cube_size

GLsizei anonymous_namespace{opengl.cpp}::OpenGLBackend::shadow_cube_size = SHADOW_CUBE_INITIAL_SIZE
private

◆ shadow_cubes

std::array<GLShadowCube, NNGN_MAX_LIGHTS> anonymous_namespace{opengl.cpp}::OpenGLBackend::shadow_cubes = {}
private

◆ shadow_map

GLShadowMap anonymous_namespace{opengl.cpp}::OpenGLBackend::shadow_map = {}
private

◆ shadow_map_size

GLsizei anonymous_namespace{opengl.cpp}::OpenGLBackend::shadow_map_size = SHADOW_MAP_INITIAL_SIZE
private

◆ stg_buffers

std::list<nngn::GLBuffer> anonymous_namespace{opengl.cpp}::OpenGLBackend::stg_buffers = {}
private

◆ tex

nngn::GLTexArray anonymous_namespace{opengl.cpp}::OpenGLBackend::tex = {}
private

◆ triangle_prog_alpha_loc

GLint anonymous_namespace{opengl.cpp}::OpenGLBackend::triangle_prog_alpha_loc = -1
private

The documentation for this class was generated from the following file: