5 ms·
For folks who are new to Qt5 and are wondering how an app looks in production, we have a screenshot at https://www.sostronk.com/app https://www.sostronk.com/app
by shaan7 8y ago
For folks who are new to Qt5 and are wondering how an app looks in production, we have a screenshot at https://www.sostronk.com/app https://www.sostronk.com/app
We released SoStronk's desktop app using Qt5 in 2014 and its going great today as well. Having had ~5 years development experience with this, I'll be happy to answer any questions :)
- lnsru 8y agoNo screenshot on mobile. Where is it?
- shaan7 8y agoOops, I'll check whats up with that. Meanwhile https://www.sostronk.com/assets/tilt-ca31719ca134cbaf.png https://www.sostronk.com/assets/tilt-ca31719ca134cbaf.png
- omegote 8y agoThat looks amazing. Do you use Qml or standard QWidgets?
- shaan7 8y agoQML with QtQuick Controls 2
- shaan7 8y agoAnother good example is Blizzard's Battle.net app https://www.blizzard.com/en-us/apps/battle.net/desktop https://www.blizzard.com/en-us/apps/battle.net/desktop
- justinclift 8y agoThe Qt Showroom may be useful as well: https://showroom.qt.io https://showroom.qt.io Seems to be based on user submissions.
- wjoe 8y agoThat looks great, but very different to what I've seen from playing around a bit with Qt. Are you using some open source theme or components there, or is it very custom built? I felt that Qt Quick Controls 2 felt far too mobile focused when I tried it out, and looked/felt very out of place in a desktop application, but I guess if you're customizing it heavily then that's less of an issue. I notice you're only providing a Windows download despite Qt being cross platform. Are there any blockers or issues in building the same app for Mac/Linux, or is that just not something you've looked at. I guess the latter since it's for a game, but just interested since I've seen a lot of comments in the past about difficulties making Qt apps run consistently across different platforms. Are you using QML and JavaScript for all of the application code, or just using that for the UI and handling the main logic from C++ or other language bindings? Any thoughts on the Qt/QML approach compared to Electron?
- shaan7 8y agoThe controls themselves are standard Qt Quick Controls 2 items. We didn't need to invent anything new. However, we do have custom styling for each control (buttons, checkboxes etc). If you want a native desktop look'n'feel then you should use QtWidgets instead. In our case it was an explicit requirement to have a custom theme from our design team. We have internal builds on Mac/Linux for our own use but its not useful to release it to our users as our Anticheat software is Windows-only. In other words, we can release a package for Mac/Linux for the Qt app itself, but not the Anticheat (without which players cannot join the game servers). For the internal builds, we generate .dmg using macdeployqt and .deb for Ubuntu. QML and JS are used mostly for the UI interaction, all heavy lifting (populating models, user information, lobby statemachine etc) is done in C++. As for Electron, I haven't personally used it for development so I cannot compare the development differences. There are obviously more libraries available for the JS/HTML world* but on the flip side using Qt/C++ has made it very easy to keep the app lightweight with just a ~1.5man dev team. Players must keep the app open alongwith the game so we need to be very conservative about resource consumption. *But then, Qt adds support for some of them. The most recent example being QtLottie. Engineer hat off, I wish that more popular desktop apps were made using dedicated tooling (Qt, .NET etc) instead of cramming a UI inside a browser engine just because its "easier".