#pragma once #include #include #include "hsh/hsh.h" namespace urde { class CTexture; class CRadarPaintShader { public: struct Instance { std::array pos; std::array uv; hsh::float4 color; }; struct Uniform { hsh::float4x4 xf; }; private: hsh::dynamic_owner> m_vbo; hsh::dynamic_owner> m_uniBuf; hsh::binding m_dataBind; const CTexture* m_tex = nullptr; size_t m_maxInsts = 0; public: void draw(const std::vector& instances, const CTexture* tex); }; } // namespace urde