OpenCPN Partial API docs
Loading...
Searching...
No Matches
pi_shaders.h File Reference

OpenGL Shader Program Management. More...

#include "wx/wxprec.h"
#include "wx/wx.h"
#include "pi_gl.h"

Go to the source code of this file.

Classes

class  PI_GLShaderProgram
 
class  PI_GLShaderProgram::Builder
 

Enumerations

enum  Consts { INFOLOG_LEN = 512 }
 

Functions

bool pi_loadShaders ()
 
void configureShaders (float width, float height)
 

Variables

GLint GRIBpi_color_tri_shader_program
 
GLint GRIBpi_colorv_tri_shader_program
 
GLint pi_texture_2D_shader_program
 
GLint pi_circle_filled_shader_program
 
const GLchar * PI_shader_preamble
 

Detailed Description

OpenGL Shader Program Management.

Provides an interface for managing OpenGL/GLES2 shader programs used in GRIB data visualization:

Shader Programs:

  • Colored triangle shaders for basic geometry
  • 2D texture shaders for overlays and maps
  • Circle shaders for particle effects
  • Vector field visualization shaders

Features:

  • Cross-platform shader support (OpenGL/GLES2)
  • Builder pattern for shader compilation
  • Viewport transformation
  • Error handling and validation
  • Program caching
  • Uniform parameter management

Definition in file pi_shaders.h.

Enumeration Type Documentation

◆ Consts

enum Consts

Definition at line 60 of file pi_shaders.h.

Function Documentation

◆ configureShaders()

void configureShaders ( float  width,
float  height 
)

Definition at line 548 of file pi_shaders.cpp.

◆ pi_loadShaders()

bool pi_loadShaders ( )

Definition at line 199 of file pi_shaders.cpp.

Variable Documentation

◆ GRIBpi_color_tri_shader_program

GLint GRIBpi_color_tri_shader_program
extern

Definition at line 176 of file pi_shaders.cpp.

◆ GRIBpi_colorv_tri_shader_program

GLint GRIBpi_colorv_tri_shader_program
extern

Definition at line 180 of file pi_shaders.cpp.

◆ pi_circle_filled_shader_program

GLint pi_circle_filled_shader_program
extern

Definition at line 191 of file pi_shaders.cpp.

◆ PI_shader_preamble

const GLchar* PI_shader_preamble
extern

Definition at line 35 of file pi_shaders.cpp.

◆ pi_texture_2D_shader_program

GLint pi_texture_2D_shader_program
extern

Definition at line 184 of file pi_shaders.cpp.