ClassiCube icon indicating copy to clipboard operation
ClassiCube copied to clipboard

Feature Request: Adjustable Render Resolution

Open moscow24tv opened this issue 2 months ago • 1 comments

Hello again! 👋

I have a suggestion that could help improve performance on low-end hardware across all supported platforms, including PC, Android, and others.

The idea is to add an adjustable render resolution, independent of the window or UI resolution. Players could set a custom render resolution using a simple input or slider. The game window size would remain unchanged, regardless of the render resolution. The UI and interface elements would remain at full resolution, unaffected by the render scaling. For very old or extremely weak devices, the render resolution could be lowered to a minimum of 16×16, which would be the lowest possible render resolution. If the render resolution aspect ratio differs from the window, the render would stretch to fill the entire game window, keeping the window fully visible.

On my very old laptop (Fujitsu Lifebook S6120, Intel Pentium M 1399 MHz, 256 MB RAM, 2003), using a small game window allows me to reach 2000+ FPS, because in a small window the render resolution is automatically reduced. Playing in a small window is inconvenient, but with this feature, users could enjoy full-window gameplay while still benefiting from reduced rendering load.

This is just a proposal — I understand if it’s not part of current development plans, but I thought it might be useful for the community or considered for future enhancements.

Thank you for considering this idea!

— Your devoted fan

moscow24tv avatar Oct 16 '25 04:10 moscow24tv

With how ClassiCube works, everything 3D (e.g. the world) and 2D (e.g. the interface) are all drawn to the same temporary display buffer.

Some 3D graphics APIs do support having the temporary display buffer being a different size than the window displayed on screen. Thus rendering everything at a lower resolution and then upscaling the result displayed on screen is possible in some cases.

Differing resolutions for 3D and 2D parts is significantly more complicated though, as it would require code changes (and 3D graphics API support, which may be limited on older GPUs) to support rendering to two different sized temporary areas and then combining the results.

It's also possible to use /client render fast in-game, which may help with performance.

On Thu., 16 Oct. 2025, 3:45 pm Москва Доверия, @.***> wrote:

moscow24tv created an issue (ClassiCube/ClassiCube#1453) https://github.com/ClassiCube/ClassiCube/issues/1453

Hello again! 👋

I have a suggestion that could help improve performance on low-end hardware across all supported platforms, including PC, Android, and others.

The idea is to add an adjustable render resolution, independent of the window or UI resolution. Players could set a custom render resolution using a simple input or slider. The game window size would remain unchanged, regardless of the render resolution. The UI and interface elements would remain at full resolution, unaffected by the render scaling. For very old or extremely weak devices, the render resolution could be lowered to a minimum of 16×16, which would be the lowest possible render resolution. If the render resolution aspect ratio differs from the window, the render would stretch to fill the entire game window, keeping the window fully visible.

On my very old laptop (Fujitsu Lifebook S6120, Intel Pentium M 1599 MHz, 256 MB RAM, 2003), using a small game window allows me to reach 2000+ FPS, because in a small window the render resolution is automatically reduced. Playing in a small window is inconvenient, but with this feature, users could enjoy full-window gameplay while still benefiting from reduced rendering load.

This is just a proposal — I understand if it’s not part of current development plans, but I thought it might be useful for the community or considered for future enhancements.

Thank you for considering this idea!

— Your devoted fan

— Reply to this email directly, view it on GitHub https://github.com/ClassiCube/ClassiCube/issues/1453, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABRVGJD2JUF4W4VHHJHNG233X4PHBAVCNFSM6AAAAACJKONZ6CVHI2DSMVQWIX3LMV43ASLTON2WKOZTGUZDAMZQGE4TEMQ . You are receiving this because you are subscribed to this thread.Message ID: @.***>

UnknownShadow200 avatar Oct 17 '25 04:10 UnknownShadow200