[Scummvm-devel] Avoiding loading of all plugins during startup

Matthew Hoops clone2727 at gmail.com
Wed Jun 23 15:14:16 CEST 2010


On Wed, Jun 23, 2010 at 5:54 AM, Max Horn <max at quendi.de> wrote:
> 3) Alternate approach
> ---------------------
> Another approach has been suggested in the past: Split the plugins into a pure detector part, and a part which runs the games. THe idea is that the detector plugins would be relatively small and could just all be loaded, while the full plugin would be loaded only when a game is actually started.
> This has its merits, but I am a bit reluctant to pursue this venue, as I feel it might complicate engine plugin code considerably. E.g. in the SCI engine, the detection code heavily release on the ResourceManaager class, which makes up a sizeable chunk of the actual engine. It seems difficult (and artificial) to separate those.
I was thinking along the lines of this myself. However, instead of one
plugin for each engine, we could just have one plugin with the
detection for all the games (sort of like your a choice, but with only
one plugin).

For SCI, only the fallback detection code uses the SCI
ResourceManager. I've always been iffy with this in the first place:
We have a chance of erroring out on detection. I don't think we really
need all of this fallback code. The filename fallback (as done with
several other engines) should be good enough for most cases. The only
time it would fail would be for other Sierra games with similar file
names.

-Matt




More information about the Scummvm-devel mailing list