Dandelion 2.0.0
A light-weight 3D builder for educational usage
载入中...
搜索中...
未找到
GL::DrawableMesh结构体 参考

保存 GPU 所需几何数据的渲染 Mesh更多...

#include <gl.hpp>

Public 成员函数

 DrawableMesh ()
 DrawableMesh (const DrawableMesh &other)=delete
DrawableMeshoperator= (const DrawableMesh &other)=delete
void clear () noexcept
void to_gpu () const noexcept

Public 属性

VertexArrayObject VAO
ArrayBuffer< float, 3 > positions
ArrayBuffer< float, 3 > normals
ElementArrayBuffer< 2 > edges
ElementArrayBuffer< 3 > triangles

详细描述

保存 GPU 所需几何数据的渲染 Mesh

DrawableMesh 只保存渲染所需的几何数据、提供向显存复制数据的方法, 不包含设置 uniform 、发起 draw call 等渲染操作。

构造及析构函数说明

◆ DrawableMesh() [1/2]

DrawableMesh::DrawableMesh ( )

默认构造一个空的 DrawableMesh ,只在 VAO 中记录 VBO 的绑定。

◆ DrawableMesh() [2/2]

GL::DrawableMesh::DrawableMesh ( const DrawableMesh & other)
delete

禁止拷贝构造。

成员函数说明

◆ clear()

void DrawableMesh::clear ( )
noexcept

清空内存数据副本。

◆ operator=()

DrawableMesh & GL::DrawableMesh::operator= ( const DrawableMesh & other)
delete

禁止拷贝赋值。

◆ to_gpu()

void DrawableMesh::to_gpu ( ) const
noexcept

将顶点和索引数据复制到显存。

类成员变量说明

◆ edges

ElementArrayBuffer<2> GL::DrawableMesh::edges

表示边的顶点索引。

◆ normals

ArrayBuffer<float, 3> GL::DrawableMesh::normals

顶点法线。

◆ positions

ArrayBuffer<float, 3> GL::DrawableMesh::positions

顶点坐标。

◆ triangles

ElementArrayBuffer<3> GL::DrawableMesh::triangles

三角形顶点索引。

◆ VAO

VertexArrayObject GL::DrawableMesh::VAO

OpenGL VAO 对象。


该结构体的文档由以下文件生成: