summaryrefslogtreecommitdiffstats
path: root/game/client/voxel_atlas.hh
diff options
context:
space:
mode:
authoruntodesu <kirill@untode.su>2025-03-15 16:22:09 +0500
committeruntodesu <kirill@untode.su>2025-03-15 16:22:09 +0500
commit3bf42c6ff3805a0d42bbc661794a95ff31bedc26 (patch)
tree05049955847504808d6bed2bb7b155f8b03807bb /game/client/voxel_atlas.hh
parent02294547dcde0d4ad76e229106702261e9f10a51 (diff)
downloadvoxelius-3bf42c6ff3805a0d42bbc661794a95ff31bedc26.tar.bz2
voxelius-3bf42c6ff3805a0d42bbc661794a95ff31bedc26.zip
Add whatever I was working on for the last month
Diffstat (limited to 'game/client/voxel_atlas.hh')
-rw-r--r--game/client/voxel_atlas.hh29
1 files changed, 29 insertions, 0 deletions
diff --git a/game/client/voxel_atlas.hh b/game/client/voxel_atlas.hh
new file mode 100644
index 0000000..9435173
--- /dev/null
+++ b/game/client/voxel_atlas.hh
@@ -0,0 +1,29 @@
+#ifndef CLIENT_VOXEL_ATLAS_HH
+#define CLIENT_VOXEL_ATLAS_HH 1
+#pragma once
+
+struct AtlasStrip final {
+ std::size_t offset;
+ std::size_t plane;
+};
+
+namespace voxel_atlas
+{
+void create(int width, int height, std::size_t count);
+void destroy(void);
+} // namespace voxel_atlas
+
+namespace voxel_atlas
+{
+std::size_t plane_count(void);
+GLuint plane_texture(std::size_t plane_id);
+void generate_mipmaps(void);
+} // namespace voxel_atlas
+
+namespace voxel_atlas
+{
+AtlasStrip *find_or_load(const std::vector<std::string> &paths);
+AtlasStrip *find(const std::vector<std::string> &paths);
+} // namespace voxel_atlas
+
+#endif /* CLIENT_VOXEL_ATLAS_HH */