FCT
载入中...
搜索中...
未找到
VK_IndexBuffer.h
浏览该文件的文档.
1//
2// Created by Administrator on 2025/4/10.
3//
4#ifndef VK_INDEXBUFFER_H
5#define VK_INDEXBUFFER_H
6
7#include "./IndexBuffer.h"
8
9namespace FCT
10{
11 namespace RHI
12 {
14 {
15 public:
18
19 void create() override;
20 void mapBuffer(void* data, uint32_t size, uint32_t frameIndex);
21 void mapBuffer(void* data, uint32_t size) override;
22
23 void destroy();
24 void bind(CommandBuffer* cmdBuffer);
25 void checkAndResizeIfNeeded(uint32_t frameIndex);
26 vk::IndexType getIndexType() const;
27 void resizeBuffer(size_t size, uint32_t frameIndex);
28 void resize(size_t size) override;
29 private:
31 std::vector<vk::Buffer> m_buffers;
32 std::vector<vk::DeviceMemory> m_memories;
33 std::vector<uint8_t> m_dirtyFlags;
34 bool m_isCreated = false;
35 };
36 }
37}
38#endif //VK_INDEXBUFFER_H
void checkAndResizeIfNeeded(uint32_t frameIndex)
void resizeBuffer(size_t size, uint32_t frameIndex)
void mapBuffer(void *data, uint32_t size, uint32_t frameIndex)
void bind(CommandBuffer *cmdBuffer)
std::vector< vk::DeviceMemory > m_memories
vk::IndexType getIndexType() const
std::vector< vk::Buffer > m_buffers
void resize(size_t size) override
std::vector< uint8_t > m_dirtyFlags