I will continue the post started here: Urho3D from the scratch
A while ago I decided to start this repo: https://github.com/ArnisLielturks/Urho3D-Empty-Project
The main idea is to create some sort of template for any project that I might start in the future using Urho3D engine.It should contain all the basic functionality that is needed for almost every project - configuration file reading/saving, level management (switching between scenes etc.), UI window management, control mapping to allow players to set up the controls themselves, modding - adding new scripts to the game that engine picks up automatically and many other things.
It’s been more than a week since my last update, so here are the things that I was able to do in this time:
Replaced Urho3D UI with Nuklear UI (https://github.com/rokups/Urho3D-nuklear-ui)
I have ported almost all of the existing views to Nuklear. Previously console could be opened by pressing F1, now it’s replaced with the NuklearUI console which can be opened by pressing F4. It still is missing some nice features but it’s usable.
Added spltiscreen sample which currently supports up to 4 players. To launch it just start the game. Additional players can be added either by adding new controllers before the game or while in it, it will adjust the viewport count automatically.
Settings window now contains joystick and mouse settings. Everything that you are able to change in the settings window will also be saved in the
All the settings (including mapped control keys) will be saved in the same file
Fixed a lot of different bugs related to new Subsystems like WindowManager, LevelManager. It should be a lot more stable now
I added CircleCI as a continuous integration tool to help testing out my changes on multiple platforms (currently Windows[MinGW] and Linux[GCC]). Config file for the build system can be found here: https://github.com/ArnisLielturks/Urho3D-Empty-Project/blob/master/.circleci/config.yml
Config file actually is pretty readable for someone who want to build the project themselves since it contains all of the bash commands to do that.
CircleCI uses docker container which was built with the following repo: https://github.com/ArnisLielturks/Urho3D-Docker-Container
@smellymumbler already gave some good ideas that I could add in the future and if you have any ideas how this can be improved even further, share them!