MeshLib
 
Loading...
Searching...
No Matches
MRAlphaSortGL.h
Go to the documentation of this file.
1#pragma once
2
3namespace MR
4{
5
7{
8public:
9 typedef unsigned int GLuint;
10
12
13 // Initialize all GL buffers and arrays
14 void init();
15 // Free all GL data
16 void free();
17
18 // Set all textures used for alpha sorting to zero (heads texture, atomics texture)
20 // Draws alpha sorting overlay quad texture to screen
22 // Updates size of textures used in alpha sorting (according to viewport size)
24
25private:
26 bool inited_ = false;
27 int width_{ 0 };
28 int height_{ 0 };
29
30 GLuint transparency_quad_vbo = 0;
31 GLuint transparency_quad_vao = 0;
32 GLuint transparency_heads_texture_vbo = 0;
33 GLuint transparency_shared_shader_data_vbo = 0;
34 GLuint transparency_atomic_counter_vbo = 0;
35 GLuint transparency_static_clean_vbo = 0;
36};
37
38}
Definition MRAlphaSortGL.h:7
unsigned int GLuint
Definition MRAlphaSortGL.h:9
void drawTransparencyTextureToScreen() const
void clearTransparencyTextures() const
void updateTransparencyTexturesSize(int width, int height)
auto width(const Box< V > &box)
returns size along x axis
Definition MRMesh/MRBox.h:230
auto height(const Box< V > &box)
returns size along y axis
Definition MRMesh/MRBox.h:237
Definition MRCameraOrientationPlugin.h:7