8 #ifndef META_OCEAN_RENDERING_GLES_ATTRIBUTE_H
9 #define META_OCEAN_RENDERING_GLES_ATTRIBUTE_H
22 namespace GLESceneGraph
26 class GLESFramebuffer;
27 class GLESShaderProgram;
47 PT_STATIC_COLOR = (1u << 0u),
49 PT_POINTS = (1u << 1u),
51 PI_DEBUG_GRAY = (1u << 2u),
53 PT_MATERIAL = (1u << 3u),
55 PT_LIGHT = (1u << 4u),
57 PT_TEXTURE_LOWER_LEFT = (1u << 5u),
59 PT_TEXTURE_UPPER_LEFT = (1u << 6u),
61 PT_TEXTURE_Y = (1u << 7u),
63 PT_TEXTURE_RGBA = (1u << 8u),
65 PT_TEXTURE_BGRA = (1u << 9u),
67 PT_TEXTURE_YUV24 = (1u << 10u),
69 PT_TEXTURE_YVU24 = (1u << 11u),
71 PT_TEXTURE_Y_UV12 = (1u << 12u),
73 PT_TEXTURE_Y_VU12 = (1u << 13u),
75 PT_TEXTURE_Y_U_V12 = (1u << 14u),
77 PT_TEXTURES = (1u << 15u),
79 PT_PHANTOM_VIDEO_FAST = (1u << 16u),
81 PT_PHANTOM_VIDEO_TEXTURE_COORDINATES_FAST = (1u << 17u),
83 PT_TEXT_TRANSPARENT_Y = (1u << 18u),
85 PT_TEXT_OPAQUE_Y = (1u << 19u),
87 PT_COLOR_ID = (1u << 20u),
89 PT_PENDING = (1u << 21u),
91 PT_CUSTOM = (1u << 22u)
This class is the base class for all rendering attribute objects.
Definition: Attribute.h:39
This class wraps a GLESceneGraph attribute object.
Definition: GLESAttribute.h:36
static std::string translateProgramType(const GLESAttribute::ProgramType type)
Translates the program value type into a string containing the individual sub program type.
virtual ProgramType necessaryShader() const
Returns the shader type necessary to render an object with this attribute.
~GLESAttribute() override
Destructs a GLESceneGraph attribute object.
ProgramType
Definition of different shader functionalities.
Definition: GLESAttribute.h:43
virtual void bindAttribute(const GLESFramebuffer &framebuffer, GLESShaderProgram &shaderProgram)=0
Binds this attribute.
GLESAttribute()
Creates a new GLESceneGraph attribute object.
virtual void unbindAttribute()
Unbinds this attribute.
This class implements a base for all GLESceneGraph framebuffers.
Definition: rendering/glescenegraph/GLESFramebuffer.h:34
This class is the base class for all GLESceneGraph objects.
Definition: GLESObject.h:57
This class implements a container for an OpenGL ES shader program.
Definition: GLESShaderProgram.h:53
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15