8 #ifndef META_OCEAN_TRACKING_MAPTEXTURING_TEXTURED_TRIANGLES_RENDERER_BACKUP_H
9 #define META_OCEAN_TRACKING_MAPTEXTURING_TEXTURED_TRIANGLES_RENDERER_BACKUP_H
33 namespace MapTexturing
This class implements the abstract base class for all AnyCamera objects.
Definition: AnyCamera.h:130
This class implements Ocean's image class.
Definition: Frame.h:1792
This class is the base class for all rendering engines like.
Definition: Engine.h:46
This class implements a 3D triangle which is hash-able.
Definition: HashableTriangle.h:41
This class implements a texture atlas for triangles with regular shape.
Definition: TextureAtlas.h:31
This class implements a renderer rendering textured triangles into a texture atlas using a backup app...
Definition: TexturedTrianglesRendererBackup.h:41
~TexturedTrianglesRendererBackup()
Destructs this renderer and releases all resources.
bool isValid() const
Returns whether this renderer has been initialized successfully.
bool renderMesh(const Rendering::Engine &engine, const Index32 meshId, const Vectors3 &vertices, const Vectors2 &textureCoordinates, const Rendering::TextureRef &texture, const TextureAtlas &textureAtlas)
Renders textured triangles into a texture atlas.
Rendering::ShaderProgramRef shaderProgram_
The shader program rendering individual triangles with individual color ids.
Definition: TexturedTrianglesRendererBackup.h:154
const TextureFramebufferMap & textureFramebufferMap() const
Returns the map mapping mesh ids to texture framebuffers.
Definition: TexturedTrianglesRendererBackup.h:187
std::unordered_map< Index32, Rendering::TextureFramebufferRef > TextureFramebufferMap
Definition of an unordered map mapping mesh ids to texture framebuffers.
Definition: TexturedTrianglesRendererBackup.h:47
Rendering::FrameTexture2DRef texture_
The frame texture holding the texture information for the triangles.
Definition: TexturedTrianglesRendererBackup.h:160
Vectors3 reusableVertices_
Reusable vertices.
Definition: TexturedTrianglesRendererBackup.h:172
static const char * programVertexShader_
The vertex shader part.
Definition: TexturedTrianglesRendererBackup.h:181
static const char * programFragmentShader_
The fragment shader part.
Definition: TexturedTrianglesRendererBackup.h:184
void release()
Explicitly releases this renderer and releases all resources.
bool render(const Rendering::Engine &engine, const HashableTriangle *triangles, const unsigned int numberTriangles, const AnyCamera &anyCamera, const SquareMatrix4 &projectionMatrix, const HomogenousMatrix4 &world_T_camera, const Rendering::TextureFramebufferRef &visibleTrianglesFramebuffer, const TextureAtlas &textureAtlas)
Renders textured triangles into a texture atlas.
Rendering::TrianglesRef triangles_
The renderer's own triangles.
Definition: TexturedTrianglesRendererBackup.h:166
Indices32 meshIds() const
Returns the ids of all textured meshes.
bool update(const Rendering::Engine &engine, Frame &&rgbFrame)
Updates this renderer with a new live frame which will be used as source texture.
bool renderMesh(const Rendering::Engine &engine, const Index32 meshId, const Vectors3 &vertices, const Vectors2 &textureCoordinates, const Rendering::TextureFramebufferRef &textureFramebuffer, const Rendering::TextureRef &texture, const TextureAtlas &textureAtlas)
Renders textured triangles into a texture atlas.
bool latestTexture(const Index32 meshId, Frame &textureFrame) const
Returns the latest texture atlas image for a specified mesh.
Frame stateFrame_
The internal state frame.
Definition: TexturedTrianglesRendererBackup.h:169
TextureFramebufferMap textureFramebufferMap_
The map of texture framebuffers, one for each mesh id.
Definition: TexturedTrianglesRendererBackup.h:157
static const char * partPlatform_
The platform-specific shader part.
Definition: TexturedTrianglesRendererBackup.h:178
bool render(const Rendering::Engine &engine, const HashableTriangle *triangles, const unsigned int numberMeshes, const Indices32 &triangleIds, const AnyCamera &anyCamera, const HomogenousMatrix4 &world_T_camera, const TextureFramebufferMap &textureFramebufferMap, const Rendering::TextureFramebufferRef &renderedMeshFramebuffer, const TextureAtlas &textureAtlas)
Renders textured triangles into a texture atlas.
Rendering::VertexSetRef vertexSet_
The renderer's own vertex set.
Definition: TexturedTrianglesRendererBackup.h:163
Vectors2 reusableTextureCoordinates_
Reusable texture coordinates.
Definition: TexturedTrianglesRendererBackup.h:175
std::vector< Index32 > Indices32
Definition of a vector holding 32 bit index values.
Definition: Base.h:96
uint32_t Index32
Definition of a 32 bit index value.
Definition: Base.h:84
std::vector< Vector2 > Vectors2
Definition of a vector holding Vector2 objects.
Definition: Vector2.h:64
std::vector< Vector3 > Vectors3
Definition of a vector holding Vector3 objects.
Definition: Vector3.h:65
The namespace covering the entire Ocean framework.
Definition: Accessor.h:15