SerenityOS / serenity

The Serenity Operating System 🐞
https://serenityos.org
BSD 2-Clause "Simplified" License
30.57k stars 3.19k forks source link

Chess: pieces are overly big #4385

Closed tomuta closed 1 year ago

tomuta commented 3 years ago

This seems like it changed recently, but to me it doesn't look as nice anymore. It feels like the chess pieces are too big. It seems like they previously had some margin.

Screenshot from 2020-12-11 11-23-19

linusg commented 3 years ago

I believe it looked like that since the very beginning (https://github.com/SerenityOS/serenity/pull/3099). The pieces only have margin if it's included in the images itself - you might have seen the test piece set where that's the case to some extend.

tomuta commented 3 years ago

I guess you're right, I seem to have been accustomed to this set (went back some 1000 commits or so to 6331d45a6f0a111b483a5c4b84cc24926bc9205d): Screenshot from 2020-12-11 22-07-16

Which, to me, looks better because it has a margin around the pieces.

AnicJov commented 3 years ago

I agree that the pieces are too big. How about we just have a set with scaled down pieces, and have that as a default? Like so:

image

What do you think?

tomuta commented 3 years ago

I agree that the pieces are too big. How about we just have a set with scaled down pieces, and have that as a default? Like so:

image

What do you think?

So beautiful!!!

linusg commented 3 years ago

I also had a look at fixing this - I think we basically have these options:

  1. Keep the current tile size, keep the current piece images and just scale them down to add a margin
    • Pro: Minimal effort required
    • Con: Looks a bit disappointing due to how LibGfx scales images currently
  2. Keep the current tile size, scale down all piece images using software that will produce higher quality results.
    • Pro: Looks great (with the default size, resizing the window/widget already suffers from the scaling quality issue mentioned in 1)
    • Con: Higher effort required
  3. Increase the current tile size (e.g. by 10/10 for 5px margin), keep the current piece images, add margin and therefore increase the default board size.
    • Pro: Minimal effort required, looks great
    • Con: Board will be noticeably larger by default

Which one sounds best? I'd prefer to avoid having variations of the same piece set with and without margin.


Screenshot of options 1 and 3, with a 5px margin on all sides of each tile:

image

image

AnicJov commented 3 years ago

image I did this with method 2 that you described. I think it works best for the time being, at least until we get some better scaling options for images. If no one has any complaints about the change I'll replace the stelar7 set pieces with the ones with margins and I'll create a PR once I get to my pc. I'll keep the old images locally so we can use those once we have the better scaling. (And I might look into that once I get some down time)

tomuta commented 3 years ago

I know @awesomekling doesn't really like vector graphics (yet), but it would be really nice if we kept original images in some editable format other than pixel-based bitmaps. Just recently I had to mock with cursors and the lack of original editable artwork was not exactly ideal...

BenWiederhake commented 3 years ago

:+1: Option 3

LucasChollet commented 1 year ago

Looks resolved to me! Chess