Seite 1 von 1

Werden die Grafiken schnelller geladen?

Verfasst: 25.08.2010 20:36
von OR51
Hi :)
Ich bin neu hier und habe schon eine Frage.
Wenn Grafiken in eine Exe includet werden dann sind sie in der Exe.
Wenn die Exe gestartet wird dann wird die komplette Exe samt Grafiken in den Arbeitspeicher geladen.
Ist das laden der Grafiken schneller wenn sie in der Exe sind als wenn die Grafiken einzeln auf der Hdd sind die extra geladen werden müssen?
Ich weiss das das keinen Unterschied macht aber wenn 10'000 Grafiken in der Exe sind und die Exe gestartet wird, ist es dann schneller??
Danke im vorraus!! :)

Re: Werden die Grafiken schnelller geladen?

Verfasst: 25.08.2010 20:43
von ts-soft
Auch das laden der grösseren Exe kostet mehr Zeit, somit ist das mehr eine Verlagerung :wink:
Bei 10000 und mehr Bildern würde ich die nicht in die Exe packen, bzw. unter Windows als
Resource. Wenn Du eine mit IncludeBinary includierte Grafik mit CatchImage lädtst, haste Sie im
Endeffekt 2x im Speicher, was bei so vielen Bildern dann schon eine Rolle spielt. Zumindest wird
dann nix schneller, sondern eher im Gegenteil.
Als Windows-Resource wird das Bild nur einmal geladen, aber dafür ist dann etwas API nötig.

Ich hoffe mal mich verständlich ausgedrückt zu haben, eine klare eindeutige Antwort gibt es jeden-
falls nicht.

Gruß
Thomas

Re: Werden die Grafiken schnelller geladen?

Verfasst: 25.08.2010 20:55
von Thorium
ts-soft hat natürlich recht.

Aber du kannst Einfluß auf die Ladezeiten nehmen, z.B. indem du ein Grafikformat wählst welches klein und schnell ist.
In dem Zusammenhang möchte ich gerne auf mein TSI Bildformat hinweisen: http://www.purebasic.fr/german/viewtopi ... 11&t=21083

Dateigröße vergleichbar mit PNG, oft kleiner und bis zu doppelt so schnell wie libpng beim dekodieren. Unterstützt allerdings nur 32bit Farbtiefe BGRA. Eine neue Version, welche mehr Bilddatenformate unterstützt ist in Arbeit.