OK, but if I do not use QtCreator, is there no way to make it work? What does adding a qrc file to RESOURCES actually do (besides triggering resource compiler)? I'm looking for an understanding here.
2016-06-17 19:23 GMT+03:00 Jason H <jh...@gmx.com>: > > What Dimitry said plus: > > Add: > CONFIG += resources_big > > > to your .pro file, which should get around some long linking times. > > > -------------------------------------- > Sent: Friday, June 17, 2016 at 5:45 AM > From: "Dmitry Volosnykh" <dmitry.volosn...@gmail.com> > To: "Max Savenkov" <max.saven...@gmail.com>, "<interest@qt-project.org>" < > interest@qt-project.org> > Subject: Re: [Interest] Routing all QML file requests through a custom > resource provider > > Hi, Max! > > To be honest, I did not understand in all the details what you are trying > to achieve. Anyway that looks way complex indeed. > > Since you are inclined to pack all you resources into auxiliary file like > zip package, you are surely okay with static content. Having this said, you > should be fine using conventional .qrc files (this is what you named Qt > resource system). These files are easily accessed (i.e. viewed, edited, > etc.) from Qt Creator. Qt Designer tools understand them perfectly fine, as > well. Also, there should be no issues when importing QML components from > your .qml files once you feed QML engine with root .qml file stored inside > .qrc file. > > Regards, > Dmitry. > > On Fri, Jun 17, 2016 at 12:09 PM Max Savenkov <max.saven...@gmail.com> > wrote:Hello, > > Once again, I'm trying to use Qt (in this case, QtQuick/QML) for game > development. The game is going to store all its resources in a package > (it might be zip, or a custom format) when deployed, but during > development, resources are available in the usual filesystem. This > difference is hidden by game's resource provider, which maps resource > name to a file or an entry in package. > > This works for the game itself, but how can I make QML load images, > imports and other resources from game's resource provider? (also, I'd > like to view my QML files in Designer, which means I can't use custom > image providers in QML code itself) > > I see two possibilities, but I'm not sure of either one. > > 1) Use dynamic resources produced by rcc. When loading a QML file from > C++, also load relevant rcc data (from game's resources) and register it > with Qt resource system to make it accessible. This sounds workable, but > I'm not sure how exactly to make it happen. Suppose I got a binary > buffer from game's resources. How do I register it in Qt? > > 2) Use a system of crutches. > * Register Url Interceptor with my QMLEngine, such that: > - any URL that contains an image is changed into > "image:/my_resource_provider/imagename.png" > - any URL that contains qml or qmldir is change into... What? There > is no way to register a special loader for QML imports. But I guess I > can change it into a network request, by substituting shcema to, for > example, "my_provider" > * Register image provider with name "my_resource_provider" that loads > images from my resource system. > * Register a custom network access manager factory/manager/network reply > that load QML files from my system instead of network. This doesn't > quite work, however, because QML at some point for whatever reason > checks that URL used to load qml file is local... > > So, I'm stumped. This should be WAY easier... And it was, before > AbstractFileEngine was made private. But I really don't want to use > private APIs if I can avoid it. > An argument against AbstractFileEngine was made, that virtual FS should > be implemented "at OS level" - but I simply cannot see how a game can > implement it at OS level, because it's a game 0_o. > _______________________________________________ > Interest mailing list > Interest@qt-project.org[Interest@qt-project.org] > > http://lists.qt-project.org/mailman/listinfo/interest_______________________________________________ > Interest mailing list Interest@qt-project.org > http://lists.qt-project.org/mailman/listinfo/interest[http://lists.qt-project.org/mailman/listinfo/interest] >
_______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest