Rework new contentpacksystem, rendering and signal prioritization
Danielxs01 opened this issue ยท 0 comments
Rework new contentpacksystem, rendering and signal prioritization
Rework new contentpacksystem
As pointed out by the community, the new contentpacksystem adds a lot of overhead that wasn't necessary before.
To improve this issue, we should add the option to make a simple signal (v1) or complex signal (v2).
The internal contentpack should stay the same.
*After thinking about it a bit, it makes more sense to split the signals into two groups (the simple and the complex ones) and build their own renderers. This will improve performance and lessens the complexity.
This will introduce more logic to the signalbox though and the old signals have to be build back to their v1 state.
Rendering
The rendering could be split into two to save performance for the simple signals. The right renderer could be selected by a given version. This would allow old signals to stay the same (the order for translation, rotation and scaling changed with v2).
This would also allow the activation of the signal manipulator tool (should still be reworked a bit to not crash the games in certain configurations).
Signal prioritization
The current attempt for signal prioritization was to use the order in which the signals where added in the contentpack.
This allows v2 packs to give a proper order, but old v1 packs couldn't rely on this feature. This was the reason for the legacymode.
By moving the signal priorization from the contentpack to each signal, we could avoid the legacymode all together and give the player more freedom with the signalstates. This will render existing signalsystems broken. But old signals will be useable as before.
The signal prioritization should be configurable on the signalbox and should be saved inside the signal.
Checklist
-
Improved contentpacksystem
-
Improved rendering
-
Improved signal prioritization
-
Tested with client
-
Tested with client and server