legatt 1d65039e2f Swapchain presentation and GLFW
- Render objects list
- SDL2 replaced with GLFW
- Swapchain synchronization, presentation and recreation on resize
2025-09-27 12:30:00 +03:00

32 lines
648 B
C++

#pragma once
#include <concepts>
#include <cstdint>
struct AssetData {};
template<typename T> concept Asset = std::derived_from<T, AssetData>;
struct AssetBinary : AssetData
{
uint8_t* content = nullptr;
size_t size = 0;
AssetBinary(uint8_t* &source, const size_t &sourceSize);
~AssetBinary();
};
struct AssetShader : AssetData
{
uint32_t* content = nullptr;
size_t size = 0;
AssetShader(uint8_t* &source, const size_t &sourceSize);
~AssetShader();
};
struct AssetMaterial : AssetData
{
uint32_t vertexShaderAssetID;
uint32_t fragmentShaderAssetID;
uint32_t renderType;
uint32_t renderStage;
};