| 676 | } |
| 677 | |
| 678 | Task* MeshBase::DownloadDataGPUAsync(MeshBufferType type, BytesContainer& result, GPUVertexLayout** layout) const |
| 679 | { |
| 680 | GPUBuffer* buffer = nullptr; |
| 681 | switch (type) |
| 682 | { |
| 683 | case MeshBufferType::Index: |
| 684 | buffer = _indexBuffer; |
| 685 | break; |
| 686 | case MeshBufferType::Vertex0: |
| 687 | buffer = _vertexBuffers[0]; |
| 688 | if (layout && buffer) |
| 689 | *layout = buffer->GetVertexLayout(); |
| 690 | break; |
| 691 | case MeshBufferType::Vertex1: |
| 692 | buffer = _vertexBuffers[1]; |
| 693 | if (layout && buffer) |
| 694 | *layout = buffer->GetVertexLayout(); |
| 695 | break; |
| 696 | case MeshBufferType::Vertex2: |
| 697 | buffer = _vertexBuffers[2]; |
| 698 | if (layout && buffer) |
| 699 | *layout = buffer->GetVertexLayout(); |
| 700 | break; |
| 701 | } |
| 702 | return buffer ? buffer->DownloadDataAsync(result) : nullptr; |
| 703 | } |
| 704 | |
| 705 | bool MeshBase::DownloadDataCPU(MeshBufferType type, BytesContainer& result, int32& count, GPUVertexLayout** layout) const |
| 706 | { |
no test coverage detected