The Vish Visualization Shell 0.3
Vish
Classes | Public Types | List of all members
Wizt::RenderNamespace Struct Reference

Enums used for rendering. More...

#include <ocean/Anemonia/RenderNamespace.hpp>

Inheritance diagram for Wizt::RenderNamespace:
Wizt::RenderAble Wizt::RenderBasin Wizt::GLRenderAble Wizt::VEnvironmentRenderObject Wizt::VRenderContextBasin GeoCameraLens Wizt::CrossSectionCam Wizt::VCameraBase Wizt::VLensBase Wizt::VLightSource Wizt::VRenderObject Wizt::VStereoLens Wizt::VRenderContext

Classes

struct  BlendFactor
 
struct  GLSLSection
 Helper class to automatically insert BEGIN and END comments when procedurally creating GLSL code. More...
 
struct  Lighting
 A set of light sources. More...
 
struct  LightSource
 Base class for light sources in shaders: A light source provides a light function, defined in glsl, and a set of parameters that are used by this light function. More...
 
struct  ProgramVariables
 A collection of variables that are parameters to shaders, also known as uniforms in GLSL. More...
 

Public Types

using AnyUniform = std::variant< int, float, double, unsigned, Eagle::FixedArray< int, 2 >, Eagle::FixedArray< float, 2 >, Eagle::FixedArray< double, 2 >, Eagle::FixedArray< int, 3 >, crd3f, Eagle::FixedArray< float, 3 >, crd3d, Eagle::FixedArray< double, 3 >, Eagle::FixedArray< int, 4 >, Eagle::FixedArray< float, 4 >, Eagle::FixedArray< double, 4 >, Eagle::Quadratic< 2, float >, Eagle::Quadratic< 3, float >, Eagle::Quadratic< 4, float >, vec3f_vector, crd3f_vector >
 A variant that may carry all currently supported data types that can be used as a uniform variable in a GLSL shader.
 
enum  GeometryInputType
 Input type for geometry shaders.
 
enum  GeometryOutputType
 Output type for geometry shader.
 
using glsl = std::string
 An alias name for strings such that the return value of functions providing GLSL code can be spotted easier.
 
enum  Primitive {
  POINTS , LINE_STRIP , LINE_LOOP , LINES ,
  TRIANGLE_STRIP , TRIANGLE_FAN , TRIANGLES , QUAD_STRIP ,
  QUADS , POLYGON , LINES_ADJACENCY , TRIANGLES_ADJACENCY ,
  LINE_STRIP_ADJACENCY , TRIANGLE_STRIP_ADJACENCY
}
 Enumeration type for primitives, similar to OpenGL (but numerically not identical). More...
 
enum  TextureFormat
 Enum for the type of texture to be used, implying the number of color channels and their meaning.
 
enum  VertexAttributeTypes {
  COORDINATES , NORMALS , COLORS , SECONDARY_COLORS ,
  TEXTURE0 , TEXTURE1 , USER_DEFINED
}
 Categories of vertex attributes for OpenGL default shader attributes, to be used in conjunction with RenderBasin::AttributeNames() and RenderBasin::createVertexAttribute(). More...
 

Detailed Description

Enums used for rendering.

Derive render classes from this one.

Member Enumeration Documentation

◆ Primitive

Enumeration type for primitives, similar to OpenGL (but numerically not identical).

See also
http://www.opengl.org/sdk/docs/man/xhtml/glDrawArrays.xml
Enumerator
POINTS 

draw as points

LINE_STRIP 

draw as one connected line

LINE_LOOP 

draw as one closed line

LINES 

draw as a set of line elements, bundling each two vertices independently

TRIANGLE_STRIP 

draw a strip of connected triangles

TRIANGLE_FAN 

draw a set of triangles that are all attached to the first vertex

TRIANGLES 

draw a set of independent triangles, three vertices given for each

QUAD_STRIP 

draw a strip of quads

QUADS 

draw a set of quads, four vertices from one

POLYGON 

draw a single polygon

◆ VertexAttributeTypes

Categories of vertex attributes for OpenGL default shader attributes, to be used in conjunction with RenderBasin::AttributeNames() and RenderBasin::createVertexAttribute().

Enumerator
COORDINATES 

coordinate information for vertices

NORMALS 

Normal vectors.

COLORS 

Colors.

SECONDARY_COLORS 

Secondary colors.

TEXTURE0 

Texture coordinates for texture unit 0.

TEXTURE1 

Texture coordinates for texture unit 1.

USER_DEFINED 

User-defined attribute name.