Qt changed a lot from the time I started using QML.
At first it used opengl, later opengl with something to translate to directx and you had to manually choose one, now it seems it's automatic and I think their commercial (or gpl) version has a raster version as well but it is appropriate for embedded linux on machines without opengl.
From what I know it seems that everything in the default QML version is using opengl and also it requires 2.0 or better. This leaves a few old computers even if they have 2.0 compatible graphic cards because usually the driver of old windows versions does not offer it.
I think there is also a 3D module that is gpl which offers you everything you need to code directly into opengl. https://doc.qt.io/qt-5.10/qt3d-index.html
I don't have a lot experience with android/ios but if you Qt I think you will have a bit more work to publish it than if you used other frameworks.
At first it used opengl, later opengl with something to translate to directx and you had to manually choose one, now it seems it's automatic and I think their commercial (or gpl) version has a raster version as well but it is appropriate for embedded linux on machines without opengl.
From what I know it seems that everything in the default QML version is using opengl and also it requires 2.0 or better. This leaves a few old computers even if they have 2.0 compatible graphic cards because usually the driver of old windows versions does not offer it.
I think there is also a 3D module that is gpl which offers you everything you need to code directly into opengl. https://doc.qt.io/qt-5.10/qt3d-index.html
I don't have a lot experience with android/ios but if you Qt I think you will have a bit more work to publish it than if you used other frameworks.