23 image->
width(data.width);
24 image->
height(data.height);
30 switch (data.channels) {
44 ferr <<
"Unsupported number of channels: " << data.channels << std::endl;
51 image->
initData(data.data.data(), data.data.size());
73 bool isInited =
false;
90 std::this_thread::yield();
100 m_submitTickers.update();
107 window->swapchain()->sync();
123 m_syncTickers.update();
153 for (uint32_t i = 0; i < modelMesh->
vertices.size(); ++i) {
154 const auto& modelVertex = modelMesh->
vertices[i];
155 Vertex vertex = (*vertexBuffer)[i];
163 std::vector<uint32_t> indices = modelMesh->
indices;
175 auto mMesh = md->findMesh(meshName);
uint32_t m_maxFrameInFlight
RenderGraph * m_renderGraph
RHI::DescriptorPool * m_descriptorPool
ShaderCompiler * m_compiler
ModelLoader * m_modelLoader
Image * loadTexture(const std::string &filename)
std::thread m_submitThread
ImageLoader * m_imageLoader
StaticMesh< uint32_t > * createMesh(const ModelMesh *modelMesh, const VertexLayout &layout)
uint32_t maxFrameInFlight() const
CommandBufferGraph * m_cmdGraph
ResourceManager * m_resourceManager
virtual void createPlatform()=0
Device * m_resourceDevice
FlowControl * m_flowControl
std::vector< Window * > m_bindWindows
ShaderGenerator * m_generator
void create(ContextCreateFlags flag=ContextCreateFlag::defaultConfig)
Context(Runtime *runtime)
void advanceSubmitFrame()
StaticMesh< uint32_t > * loadMesh(const std::string &filename, const std::string &meshName, const VertexLayout &layout)
std::thread::id m_submitThreadId
ModelLoader * createModelLoader()
ImageLoader * createImageLoader()
void initData(void *data, int size)
void as(ImageUsages usage) override
void setIndices(const std::vector< IndexType > &indices)
VertexBuffer * getVertexBuffer() const
void resize(size_t vertexCount)
constexpr size_t getElementCount() const noexcept
constexpr const VertexElement & getElement(size_t index) const noexcept
constexpr const char * CheckRecreateSwapchainSync
constexpr const char * AdvanceFrameIndex
@ withModuleResourceManage
constexpr const char * SwapBufferSubmitTicker
void setVertexAttributeFromModel(Vertex &vertex, size_t elementIndex, const VertexElement &element, const ModelVertex &modelVertex)
std::vector< uint32_t > indices
std::vector< ModelVertex > vertices