mirror of
https://gitlab.com/veloren/veloren.git
synced 2024-08-30 18:12:32 +00:00
fix scaling artifacts
Former-commit-id: 7b90e7d033438a0c83e254ea7bcc791ad83808b3
This commit is contained in:
parent
1143c58e37
commit
0daa8ef3f3
@ -81,7 +81,7 @@ impl<P: Pipeline> Texture<P> {
|
|||||||
tex,
|
tex,
|
||||||
srv,
|
srv,
|
||||||
sampler: factory.create_sampler(gfx::texture::SamplerInfo::new(
|
sampler: factory.create_sampler(gfx::texture::SamplerInfo::new(
|
||||||
gfx::texture::FilterMethod::Bilinear,
|
gfx::texture::FilterMethod::Scale,
|
||||||
gfx::texture::WrapMode::Clamp,
|
gfx::texture::WrapMode::Clamp,
|
||||||
)),
|
)),
|
||||||
_phantom: PhantomData,
|
_phantom: PhantomData,
|
||||||
|
@ -57,22 +57,21 @@ impl GraphicCache {
|
|||||||
{
|
{
|
||||||
match self
|
match self
|
||||||
.rect_map
|
.rect_map
|
||||||
.get(&(graphic_id, dims, source.map(|e| e.to_bits())))
|
.get(&(graphic_id, dims, source.map(|e| e.to_bits()))) //<-------- TODO: Replace this with rounded representation of source
|
||||||
{
|
{
|
||||||
//<-------- TODO: Replace this with rounded representation of source
|
|
||||||
Some(aabr) => Some(*aabr),
|
Some(aabr) => Some(*aabr),
|
||||||
None => match self.graphic_map.get(&graphic_id) {
|
None => match self.graphic_map.get(&graphic_id) {
|
||||||
Some(graphic) => {
|
Some(graphic) => {
|
||||||
// Allocate rectangle
|
// Allocate rectangle
|
||||||
let aabr = match self
|
let aabr = match self
|
||||||
.atlas
|
.atlas
|
||||||
.allocate(size2(i32::from(dims.x + 2), i32::from(dims.y + 2)))
|
.allocate(size2(i32::from(dims.x), i32::from(dims.y)))
|
||||||
{
|
{
|
||||||
Some(Allocation { id, rectangle }) => {
|
Some(Allocation { id, rectangle }) => {
|
||||||
let (min, max) = (rectangle.min, rectangle.max);
|
let (min, max) = (rectangle.min, rectangle.max);
|
||||||
Aabr {
|
Aabr {
|
||||||
min: Vec2::new(min.x as u16 + 1, min.y as u16 + 1),
|
min: Vec2::new(min.x as u16, min.y as u16),
|
||||||
max: Vec2::new(max.x as u16 - 1, max.y as u16 - 1),
|
max: Vec2::new(max.x as u16, max.y as u16),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Out of room
|
// Out of room
|
||||||
|
@ -584,7 +584,7 @@ impl Ui {
|
|||||||
self.scale.window_resized(new_dims, renderer);
|
self.scale.window_resized(new_dims, renderer);
|
||||||
let (w, h) = self.scale.scaled_window_size().into_tuple();
|
let (w, h) = self.scale.scaled_window_size().into_tuple();
|
||||||
self.ui.handle_event(Input::Resize(w, h));
|
self.ui.handle_event(Input::Resize(w, h));
|
||||||
self.cache.clear_graphic_cache(renderer, new_dims.map(|e| (e * 4.0) as u16));
|
self.cache.clear_graphic_cache(renderer, renderer.get_resolution().map(|e| e * 4));
|
||||||
// TODO: probably need to resize glyph cache, see conrod's gfx backend for reference
|
// TODO: probably need to resize glyph cache, see conrod's gfx backend for reference
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user