19 MRVIEWER_API
virtual size_t heapBytes()
const override;
20 MRVIEWER_API
virtual size_t glBytes()
const override;
25 int vertPosSize_{ 0 };
26 int vertNormalsSize_{ 0 };
27 int vertColorsSize_{ 0 };
29 int faceIndicesSize_{ 0 };
31 int selEdgeSize_{ 0 };
32 int bordersSize_{ 0 };
34 int pointValidSize_{ 0 };
55 GLuint selectedEdgesArrayObjId_{ 0 };
85 bool dirtyPointPos_ =
false;
92 MRVIEWER_API
virtual void bindMesh_(
bool alphaSort );
113 uint32_t dirty_{ 0 };
115 bool dirtyEdges_{
false };
118 bool cornerMode =
true;
120 bool cornerMode =
false;
Definition MRRenderGLHelpers.h:16
Definition MRRenderGLHelpers.h:88
Definition MRRenderGLHelpers.h:65
Definition MRIRenderObject.h:134
Definition MRObjectMeshHolder.h:30
Definition MRRenderHelpers.h:16
Definition MRRenderMeshObject.h:12
virtual MRVIEWER_API void forceBindAll() override
binds all data for this render object, not to bind ever again (until object becomes dirty)
virtual MRVIEWER_API void bindPoints_(bool alphaSort)
GlBuffer facesIndicesBuffer_
Definition MRRenderMeshObject.h:66
GlBuffer vertUVBuffer_
Definition MRRenderMeshObject.h:62
MRVIEWER_API RenderBufferRef< Vector3f > loadVertPosBuffer_()
MRVIEWER_API RenderBufferRef< UVCoord > loadVertUVBuffer_()
MRVIEWER_API RenderBufferRef< Vector4f > loadFaceNormalsTextureBuffer_()
GlTexture2 selEdgesTexture_
Definition MRRenderMeshObject.h:76
MRVIEWER_API RenderBufferRef< uint8_t > loadTexturePerFaceTextureBuffer_()
GlTexture2 emptyVertsColorTexture_
Definition MRRenderMeshObject.h:78
virtual MRVIEWER_API void bindSelectedEdges_()
MRVIEWER_API RenderBufferRef< Vector3i > loadFaceIndicesBuffer_()
virtual MRVIEWER_API void initBuffers_()
MRVIEWER_API RenderBufferRef< Vector3f > loadVertNormalsBuffer_()
unsigned int GLuint
Definition MRRenderMeshObject.h:49
MRVIEWER_API RenderMeshObject(const VisualObject &visObj)
GlTexture2 emptyLinesColorTexture_
Definition MRRenderMeshObject.h:79
MRVIEWER_API RenderBufferRef< VertId > loadPointValidIndicesBuffer_()
virtual MRVIEWER_API void bindMeshPicker_()
virtual MRVIEWER_API void renderPicker(const ModelBaseRenderParams ¶ms, unsigned geomId) override
const ObjectMeshHolder * objMesh_
Definition MRRenderMeshObject.h:23
virtual MRVIEWER_API ~RenderMeshObject()
virtual MRVIEWER_API void bindEmptyTextures_(GLuint shaderId)
GlBuffer borderBuffer_
Definition MRRenderMeshObject.h:53
virtual MRVIEWER_API void freeBuffers_()
virtual MRVIEWER_API void bindMesh_(bool alphaSort)
virtual MRVIEWER_API size_t glBytes() const override
returns the amount of memory this object allocated in OpenGL
GlTexture2 facesNormalsTex_
Definition MRRenderMeshObject.h:70
GlTexture2 faceSelectionTex_
Definition MRRenderMeshObject.h:68
Vector2i texturePerFaceSize_
Definition MRRenderMeshObject.h:37
GlBuffer vertNormalsBuffer_
Definition MRRenderMeshObject.h:63
virtual MRVIEWER_API void drawMesh_(bool solid, ViewportId viewportId, bool picker=false) const
GlBuffer selectedEdgesBuffer_
Definition MRRenderMeshObject.h:56
MRVIEWER_API RenderBufferRef< Color > loadVertColorsBuffer_()
GlBuffer vertColorsBuffer_
Definition MRRenderMeshObject.h:64
GlTexture2 texturePerFace_
Definition MRRenderMeshObject.h:71
GlTexture2DArray textureArray_
Definition MRRenderMeshObject.h:73
virtual MRVIEWER_API size_t heapBytes() const override
returns the amount of memory this object occupies on heap
MRVIEWER_API RenderBufferRef< unsigned > loadFaceSelectionTextureBuffer_()
GlBuffer vertPosBuffer_
Definition MRRenderMeshObject.h:61
virtual MRVIEWER_API void renderMeshEdges_(const ModelRenderParams ¶meters, bool alphaSort)
GlBuffer pointValidBuffer_
Definition MRRenderMeshObject.h:84
virtual MRVIEWER_API void update_(ViewportMask mask)
virtual MRVIEWER_API void bindBorders_()
GlTexture2 borderTexture_
Definition MRRenderMeshObject.h:77
virtual MRVIEWER_API void bindEdges_()
virtual MRVIEWER_API void renderEdges_(const ModelRenderParams ¶meters, bool alphaSort, GLuint vao, const Color &color, uint32_t dirtyFlag)
GlTexture2 edgesTexture_
Definition MRRenderMeshObject.h:75
virtual MRVIEWER_API void renderMeshVerts_(const ModelRenderParams ¶meters, bool alphaSort)
Vector2i faceSelectionTextureSize_
Definition MRRenderMeshObject.h:35
Vector2i faceNormalsTextureSize_
Definition MRRenderMeshObject.h:36
virtual MRVIEWER_API bool render(const ModelRenderParams ¶ms) override
GlTexture2 faceColorsTex_
Definition MRRenderMeshObject.h:69
Definition MRViewportId.h:16
stores mask of viewport unique identifiers
Definition MRViewportId.h:38
Visual Object.
Definition MRVisualObject.h:131
Definition MRCameraOrientationPlugin.h:8
Definition MRIRenderObject.h:43
Mesh rendering parameters for primary rendering (as opposed to the picker).
Definition MRIRenderObject.h:51