namespace mrpt::opengl

Overview

Backward-compat alias: mrpt::opengl::graph_tools == mrpt::viz::graph_tools.

namespace opengl {

// namespaces

namespace mrpt::opengl::internal;

// typedefs

typedef std::map<shader_id_t, std::multimap<float, RenderQueueElement>> RenderQueue;
typedef uint8_t shader_id_t;
typedef std::vector<shader_id_t> shader_list_t;
typedef unsigned int texture_name_t;
typedef int texture_unit_t;

// structs

struct CompilationStats;
struct DefaultShaderID;
struct FrameBufferBinding;
struct RenderContext;
struct RenderQueueElement;
struct RenderQueueStats;
struct TRenderMatrices;
struct ViewportRenderStats;
struct texture_name_unit_t;

// classes

class Buffer;
class CFBORender;
class CompiledScene;
class CompiledViewport;
class FrameBuffer;
class LinesProxy;
class LinesProxyBase;

template <int DEPTH_LUT_NUM_BITS = 18>
class OpenGLDepth2LinearLUTs;

template <class POINTCLOUD>
class PointCloudAdapter;

class PointsProxy;
class PointsProxyBase;
class Program;
class RenderableProxy;
class Shader;
class ShaderProgramManager;
class SkyBoxProxy;
class Texture;
class TexturedTrianglesProxy;
class TexturedTrianglesProxyBase;
class TrianglesProxy;
class TrianglesProxyBase;
class VertexArrayObject;

// global variables

static constexpr int MATERIAL_DIFFUSE_TEXTURE_UNIT = 0;
static constexpr int SHADOW_MAP_TEXTURE_UNIT = 1;
static constexpr int NORMAL_MAP_TEXTURE_UNIT = 2;
static constexpr int SSAO_NOISE_TEXTURE_UNIT = 3;
static constexpr int SSAO_TEXTURE_UNIT = 4;

// global functions

Program::Ptr LoadDefaultShader(shader_id_t id);
void registerAllClasses_mrpt_opengl();

std::tuple<double, bool, bool> depthAndVisibleInView(
    const RenderableProxy* proxy,
    const TRenderMatrices& objState,
    const mrpt::poses::CPose3D& objPose,
    bool skipCullChecks
    );

std::unique_ptr<ShaderProgramManager> createAndPreloadShaders();
texture_name_t getNewTextureNumber(const uint8_t* optionalRgbDataForAssociation);
void releaseTextureName(const texture_name_t& t);

} // namespace opengl

Typedefs

typedef std::vector<shader_id_t> shader_list_t

A list of shader IDs.

typedef int texture_unit_t

the “i” in GL_TEXTUREi

Global Functions

texture_name_t getNewTextureNumber(const uint8_t* optionalRgbDataForAssociation)

Returns: [texture name, texture unit].