Provides a data store for raw data to later be used as vertices or uniforms. 更多...
| 头: | #include <Qt3DRender/QBuffer> |
| qmake: | QT += 3drender |
| 实例化: | Buffer |
| 继承: | Qt3DCore::QNode |
| enum | AccessType { Write, Read, ReadWrite } |
| enum | BufferType { VertexBuffer, IndexBuffer, PixelPackBuffer, PixelUnpackBuffer, ..., DrawIndirectBuffer } |
| enum | UsageType { StreamDraw, StreamRead, StreamCopy, StaticDraw, ..., DynamicCopy } |
| QBuffer (BufferType ty = QBuffer::VertexBuffer, Qt3DCore::QNode * parent = nullptr) | |
| AccessType | accessType () const |
| QByteArray | data () const |
| QBufferDataGeneratorPtr | dataGenerator () const |
| bool | isSyncData () const |
| void | setData (const QByteArray & bytes ) |
| void | setDataGenerator (const QBufferDataGeneratorPtr & functor ) |
| BufferType | type () const |
| void | updateData (int offset , const QByteArray & bytes ) |
| UsageType | usage () const |
| void | setAccessType (AccessType access ) |
| void | setSyncData (bool syncData ) |
| void | setType (BufferType type ) |
| void | setUsage (UsageType usage ) |
| void | accessTypeChanged (AccessType access ) |
| void | dataAvailable () |
| void | dataChanged (const QByteArray & bytes ) |
| void | syncDataChanged (bool syncData ) |
| void | typeChanged (BufferType type ) |
| void | usageChanged (UsageType usage ) |
| typedef | QBufferDataGeneratorPtr |
Provides a data store for raw data to later be used as vertices or uniforms.
Data can either be provided directly using QBuffer::setData () or by specifying a generator with QBuffer::setDataGenerator () and providing a Qt3DRender::QBufferDataGeneratorPtr .
When using a generator the data will be loaded asynchronously in a job. The loaded data can be read back if the QBuffer::syncData flag is set to true.
The type of the buffer.
| 常量 | 值 | 描述 |
|---|---|---|
Qt3DRender::QBuffer::VertexBuffer
|
0x8892
|
GL_ARRAY_BUFFER |
Qt3DRender::QBuffer::IndexBuffer
|
0x8893
|
GL_ELEMENT_ARRAY_BUFFER |
Qt3DRender::QBuffer::PixelPackBuffer
|
0x88EB
|
GL_PIXEL_PACK_BUFFER |
Qt3DRender::QBuffer::PixelUnpackBuffer
|
0x88EC
|
GL_PIXEL_UNPACK_BUFFER |
Qt3DRender::QBuffer::UniformBuffer
|
0x8A11
|
GL_UNIFORM_BUFFER |
Qt3DRender::QBuffer::ShaderStorageBuffer
|
0x90D2
|
GL_SHADER_STORAGE_BUFFER |
Qt3DRender::QBuffer::DrawIndirectBuffer
|
0x8F3F
|
GL_DRAW_INDIRECT_BUFFER |
The type of the usage.
| 常量 | 值 | 描述 |
|---|---|---|
Qt3DRender::QBuffer::StreamDraw
|
0x88E0
|
GL_STREAM_DRAW |
Qt3DRender::QBuffer::StreamRead
|
0x88E1
|
GL_STREAM_READ |
Qt3DRender::QBuffer::StreamCopy
|
0x88E2
|
GL_STREAM_COPY |
Qt3DRender::QBuffer::StaticDraw
|
0x88E4
|
GL_STATIC_DRAW |
Qt3DRender::QBuffer::StaticRead
|
0x88E5
|
GL_STATIC_READ |
Qt3DRender::QBuffer::StaticCopy
|
0x88E6
|
GL_STATIC_COPY |
Qt3DRender::QBuffer::DynamicDraw
|
0x88E8
|
GL_DYNAMIC_DRAW |
Qt3DRender::QBuffer::DynamicRead
|
0x88E9
|
GL_DYNAMIC_READ |
Qt3DRender::QBuffer::DynamicCopy
|
0x88EA
|
GL_DYNAMIC_COPY |
访问函数:
| AccessType | accessType () const |
| void | setAccessType (AccessType access ) |
通知程序信号:
| void | accessTypeChanged (AccessType access ) |
Holds the syncData flag. When syncData is true, this will force data created by a Qt3DRender::QBufferDataGenerator to also be updated on the frontend Qt3DRender::QBuffer node. By default syncData is false.
注意: : This has no effect if the buffer's data was set directly using the data property.
访问函数:
| bool | isSyncData () const |
| void | setSyncData (bool syncData ) |
通知程序信号:
| void | syncDataChanged (bool syncData ) |
Holds the buffer type.
访问函数:
| BufferType | type () const |
| void | setType (BufferType type ) |
通知程序信号:
| void | typeChanged (BufferType type ) |
Holds the buffer usage.
访问函数:
| UsageType | usage () const |
| void | setUsage (UsageType usage ) |
通知程序信号:
| void | usageChanged (UsageType usage ) |
Default constructs an instance of QBuffer.
Returns the data.
另请参阅 setData ().
[signal]
void
QBuffer::
dataAvailable
()
[signal]
void
QBuffer::
dataChanged
(const
QByteArray
&
bytes
)
This signal is emitted with bytes when data changes.
Returns the buffer functor.
另请参阅 setDataGenerator ().
集 bytes as data.
另请参阅 data ().
Sets the buffer functor .
另请参阅 dataGenerator ().
Updates the data by replacing it with bytes at offset .