1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-09-30 19:22:14 +00:00
This commit is contained in:
Zughy 2025-09-30 20:04:59 +03:00 committed by GitHub
commit 49c51c461a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -16,35 +16,35 @@ These are the current medium-term goals for Luanti development, in no
particular order.
These goals were created from the top points in a
[roadmap brainstorm](https://github.com/luanti-org/luanti/issues/10461).
This should be reviewed approximately yearly, or when goals are achieved.
[roadmap brainstorm](https://github.com/luanti-org/luanti/issues/16162).
This is reviewed approximately every two years.
Pull requests that address one of these goals will be labeled as "Roadmap".
PRs that are not on the roadmap will be closed unless they receive a concept
approval within a month, issues can be used for preapproval.
Bug fixes are exempt for this, and are always accepted and prioritized.
approval within a month. Issues can be used for preapproval.
Bug fixes are exempt from this, and are always accepted and prioritized.
See [CONTRIBUTING.md](../.github/CONTRIBUTING.md) for more info.
### 2.1 Rendering/Graphics improvements
### 2.1 SSCSM
The priority is fixing the issues, performance, and general correctness.
Once that is done, fancier features can be worked on, such as water shaders,
shadows, and improved lighting.
Server-Sent Client-side Modding has been a long requested feature, as it
allows game developers to highly expand the tools for their creations.
Implementing SSCSM also means to feature more dehardcoding, furthermore
allowing us to improve the overall performances of the engine.
Examples include
[transparency sorting](https://github.com/luanti-org/luanti/issues/95),
[particle performance](https://github.com/luanti-org/luanti/issues/1414),
[general view distance](https://github.com/luanti-org/luanti/issues/7222).
Instead of focusing on short-term solutions that will inevitably lead to more
technical debt to deal with, SSCSM paves the way for a cleaner architecture
designed to stay.
This includes work on maintaining
[our Irrlicht fork](https://github.com/luanti-org/luanti/tree/master/irr), and switching to
alternative libraries to replace Irrlicht functionality as needed
### 2.2 Input Handling
### 2.2 Internal code refactoring
Luanti keys are currently limited to a small subset, not allowing game developers
to map the majority of the keys a device usually offers. This limits the possibilities
of game creators, forcing them to either implement a workaround or, worse, forget
about it.
To ensure sustainable development, Luanti's code needs to be
[refactored and improved](https://github.com/luanti-org/luanti/pulls?q=is%3Aopen+sort%3Aupdated-desc+label%3A%22Code+quality%22).
This will remove code rot and allow for more efficient development.
Using a gamepad also represents a known issue in Luanti, as some devices might not
work at all or result in an uncomfortable user experience.
### 2.3 UI Improvements
@ -55,15 +55,6 @@ be a replacement for HUDs, allowing for a unified API.
A [new mainmenu](https://github.com/luanti-org/luanti/issues/6733) is needed to
improve user experience. First impressions matter, and the current main menu
doesn't do a very good job at selling Luanti or explaining what it is.
A new main menu should promote games to users, allowing Minetest Game to no
longer be bundled by default.
The UI code is undergoing rapid changes, so it is especially important to make
an issue for any large changes before spending lots of time.
### 2.4 Object and entity improvements
There are still a significant number of issues with objects.
Collisions,
[performance](https://github.com/luanti-org/luanti/issues/6453),
API convenience, and discrepancies between players and entities.