mirror of
https://github.com/MihailRis/voxelcore.git
synced 2026-10-10 21:41:50 +00:00
disable mip-mapping in fonts
This commit is contained in:
parent
db565d23a7
commit
0a8ea7e597
4 changed files with 22 additions and 2 deletions
|
|
@ -151,7 +151,9 @@ assetload::postfunc assetload::font(
|
||||||
if (page == nullptr) {
|
if (page == nullptr) {
|
||||||
textures.emplace_back(nullptr);
|
textures.emplace_back(nullptr);
|
||||||
} else {
|
} else {
|
||||||
textures.emplace_back(Texture::from(page.get()));
|
auto texture = Texture::from(page.get());
|
||||||
|
texture->setMipMapping(false);
|
||||||
|
textures.emplace_back(std::move(texture));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
assets->store(
|
assets->store(
|
||||||
|
|
|
||||||
|
|
@ -59,7 +59,9 @@ std::unique_ptr<ImageData> GLTexture::readData() {
|
||||||
glBindTexture(GL_TEXTURE_2D, id);
|
glBindTexture(GL_TEXTURE_2D, id);
|
||||||
glGetTexImage(GL_TEXTURE_2D, 0, GL_RGBA, GL_UNSIGNED_BYTE, data.get());
|
glGetTexImage(GL_TEXTURE_2D, 0, GL_RGBA, GL_UNSIGNED_BYTE, data.get());
|
||||||
glBindTexture(GL_TEXTURE_2D, 0);
|
glBindTexture(GL_TEXTURE_2D, 0);
|
||||||
return std::make_unique<ImageData>(ImageFormat::rgba8888, width, height, data.release());
|
return std::make_unique<ImageData>(
|
||||||
|
ImageFormat::rgba8888, width, height, data.release()
|
||||||
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
void GLTexture::setNearestFilter() {
|
void GLTexture::setNearestFilter() {
|
||||||
|
|
@ -69,6 +71,18 @@ void GLTexture::setNearestFilter() {
|
||||||
glBindTexture(GL_TEXTURE_2D, 0);
|
glBindTexture(GL_TEXTURE_2D, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void GLTexture::setMipMapping(bool flag) {
|
||||||
|
bind();
|
||||||
|
if (flag) {
|
||||||
|
glTexParameteri(
|
||||||
|
GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR_MIPMAP_NEAREST
|
||||||
|
);
|
||||||
|
} else {
|
||||||
|
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_NEAREST);
|
||||||
|
}
|
||||||
|
glBindTexture(GL_TEXTURE_2D, 0);
|
||||||
|
}
|
||||||
|
|
||||||
std::unique_ptr<GLTexture> GLTexture::from(const ImageData* image) {
|
std::unique_ptr<GLTexture> GLTexture::from(const ImageData* image) {
|
||||||
uint width = image->getWidth();
|
uint width = image->getWidth();
|
||||||
uint height = image->getHeight();
|
uint height = image->getHeight();
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,8 @@ public:
|
||||||
|
|
||||||
virtual void reload(const ImageData& image) override;
|
virtual void reload(const ImageData& image) override;
|
||||||
|
|
||||||
|
virtual void setMipMapping(bool flag) override;
|
||||||
|
|
||||||
virtual std::unique_ptr<ImageData> readData() override;
|
virtual std::unique_ptr<ImageData> readData() override;
|
||||||
virtual uint getId() const override;
|
virtual uint getId() const override;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -34,5 +34,7 @@ public:
|
||||||
|
|
||||||
virtual uint getId() const = 0;
|
virtual uint getId() const = 0;
|
||||||
|
|
||||||
|
virtual void setMipMapping(bool flag) = 0;
|
||||||
|
|
||||||
static std::unique_ptr<Texture> from(const ImageData* image);
|
static std::unique_ptr<Texture> from(const ImageData* image);
|
||||||
};
|
};
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue