[overhead probleem] Meerdere png files in een file stoppen.

Pagina: 1
Acties:

  • killercow
  • Registratie: Maart 2000
  • Laatst online: 07-08 19:18
Ik ben een web spelletje aan het maken waarin ik nogal veel verschillende plaatjes moet gebruiken, deze plaatjes zijn allemaal ongeveer 300 bytes groot en zoals iedere tweaker wel begrijpt is dit natuurlijk hardstikke mooi al je er maar een paar nodig hebt.

Ik heb er echter een paar honderd en nu is het probleem dat de block-size op m'n hdd ongeveer 80x zo groot als de files is.
de files nemen dus gewoon 32k in beslag op de hdd.
nu is dit nog niet zo'n groot probleem aangezien dit nog steeds maar een paar mb is.

Ik begon aan de hand van deze overhead eens na te denken en toen kwam in er achter dat zo veel kleine files natuurlijk ook allemaal http headers en request en tcp/ip overhead hebben.
Dit is natuurlijk wel onhandig, aangezien dit allemaal snelheid kost.

Als oplossing zie je vaak in spellen dat ze sprites (niet geanimeerd) met z'n alle in een grote image file hebben gestopt welke dan geknipt wordt als er eentje nodig is.

Nu is mijn vraag of het engsinds mogenlijk is om het zelfde in html te doen (zonder het echte knipwerk uiteraard) maar zonder dat de snelheid hier enorm onder lijd.
Als er namenlijk ipv 50 kleine plaatjes volledig, nu ineens 50x een gedeelte van de zelfde maar veel grotere plaat moet laten zien, dan kan ik mij zo voorstellen dat dit de render-tijd van de browser niet ten goede komt.

Weet iemand hier een mooie oplossing voor?
De content word al gezipped verstuurd enzo, maar de content is ook niet het probleem.
Ik wil dus client side de grote image "db" kunnen raadplegen om afbeelding op locatie x-y tot x-y weer te geven.

Bij voorbaat dank.
ps, jullie snappen ook wel dat dit soort dingen niet in search engines te vinden zijn.

openkat.nl al gezien?


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 19:34

crisp

Devver

Pixelated

Ik maak voor lemmings en pumpkins ook gebruik van sprites, echter is dat wel 1 sprite per animatie. Ik heb ook geprobeert alle animaties in 1 grote sprite onder te brengen, maar daar werd de boel inderdaad onwerkbaar traag van. Clipping binnen een relatief klein plaatje is best wel te doen.

Intentionally left blank


  • killercow
  • Registratie: Maart 2000
  • Laatst online: 07-08 19:18
hmmfz,

Ik dacht al dat jij net zo iets gebruikte maar kon lemmings niet meer vinden,
zou je me daarvan een url kunnen geven (eventueel via mail)?

Weet jij toevallig of het ook erg zwaar wordt al je maar een grote plaat gebruikt met een hele kleine color-table?

M'n http headers zijn gewoon groter dan de image data zelf (zeker als je de png en colortables niet tot image data telt)

Weet jij toevallig wat er met het geheugen gebruik gebeurt? wordt dit groter aan de hand van de hoeveelheid afbeeldingen die je gebruikt, of aan de hand van de hoeveelheid zichtbare image data?

Voordat ik m'n game grondig aan ga passen wil ik natuurlijk beetje rond snuffelen voor informatie hierover.

openkat.nl al gezien?