#pragma once
#include "zstd/parray.h"
#include "asset_render.h"
#include "../wrapper/vertex.h"
namespace engineapi {
	using zstd::parray;
	class Texture;
	class Material;
	class Mesh : public Asset {
	protected:
		uint32_t VAO = 0;
		parray<Vertex> mVertices;
		vector<uint32_t> mIndices;
	public:
		Mesh(string name, uint32_t flags, parray<Vertex>& vertices, vector<uint32_t>& indices);
		void BeginLoad()override;

	public:
		uint32_t& GetVAO() {
			return VAO;
		}
		parray<Vertex>& GetVertices() {
			return mVertices;
		}
		vector<uint32_t>& GetIndices() {
			return mIndices;
		}
	};
};