#ifndef HYDRACREATEVERTEXBUFFERTASK #define HYDRACREATEVERTEXBUFFERTASK #include "../HydraTask.h" #include "../../engine/HydraEngine.h" #include "../../buffer/HydraVertexBufferManager.h" class HydraCreateVertexBufferTask : public HydraTask { private: uint32_t m_vertex_buffer_size_bytes = 0; uint32_t m_index_buffer_size_bytes = 0; HydraID* m_buffer_id; uint32_t m_triangle_count = 0; protected: public: virtual void Process() override { *m_buffer_id = GetEngine()->VertexBufferManager()->CreateVertexBuffer(m_vertex_buffer_size_bytes, m_index_buffer_size_bytes, m_triangle_count); } void Intialise(uint32_t vertex_buffer_size_bytes, uint32_t index_buffer_size_bytes, uint32_t triangle_count, uint32_t* buffer_id) { m_vertex_buffer_size_bytes = vertex_buffer_size_bytes; m_index_buffer_size_bytes = index_buffer_size_bytes; m_buffer_id = buffer_id; m_triangle_count = triangle_count; } }; #endif /* HYDRACREATEVERTEXBUFFERTASK */