diff options
| author | Stanislaw Halik <sthalik@misaki.pl> | 2022-02-23 13:25:39 +0100 |
|---|---|---|
| committer | Stanislaw Halik <sthalik@misaki.pl> | 2022-02-23 13:25:39 +0100 |
| commit | eeedd2061bee36f49ea20e898e8edf3676bd15b5 (patch) | |
| tree | 4e22a3d50d6f97992aa3b46d00b276ddac928e6a /atlas.cpp | |
| parent | 920aa82a3a05402cc0489a8d9e0b9b2f4a4e3117 (diff) | |
flush
Diffstat (limited to 'atlas.cpp')
| -rw-r--r-- | atlas.cpp | 23 |
1 files changed, 17 insertions, 6 deletions
@@ -17,8 +17,8 @@ atlas_texture::atlas_texture(const Trade::ImageData2D& image, Vector2i dims) : tex_.setWrapping(GL::SamplerWrapping::ClampToEdge) .setMagnificationFilter(GL::SamplerFilter::Linear) .setMinificationFilter(GL::SamplerFilter::Linear) - .setMaxAnisotropy(8) - .setStorage(6, GL::textureFormat(image.format()), image.size()) + .setMaxAnisotropy(0) + .setStorage(1, GL::textureFormat(image.format()), image.size()) .setSubImage(0, {}, image); } @@ -41,10 +41,21 @@ std::array<Vector3, 4> atlas_texture::floor_quad(Vector3 center, Vector2 size) { float x = size[0]*.5f, y = size[1]*.5f; return {{ - { x + center[0], -y + center[1], 0}, - { x + center[0], y + center[1], 0}, - {-x + center[0], -y + center[1], 0}, - {-x + center[0], y + center[1], 0}, + { x + center[0], -y + center[1], center[2]}, + { x + center[0], y + center[1], center[2]}, + {-x + center[0], -y + center[1], center[2]}, + {-x + center[0], y + center[1], center[2]}, + }}; +} + +std::array<Vector3, 4> atlas_texture::wall_quad(Vector3 center, Vector3 size) +{ + float x = size[0]*.5f, y = size[1]*.5f, z = size[2]; + return {{ + { x + center[0], -y + center[1], + center[2] }, + { x + center[0], -y + center[1], z+ center[2] }, + {-x + center[0], y + center[1], + center[2] }, + {-x + center[0], y + center[1], z+ center[2] }, }}; } |
