Jump to content

upload png as interlace or no?


You are about to reply to a thread that has been inactive for 4458 days.

Please take a moment to consider if this thread is worth bumping.

Recommended Posts

While SL will take a max size of 1024 x 1024, you should always upload the smallest texture possible.   General rule of thumb, work on your clothing at 1024 x 1024 or even 2048 x 2048 but always resize the final to 512 x 512 or less for upload.  I know some who upload as .png while others will upload .tga with an alpha channel.  I use .png witth non-interlaced.  As far as which is better, will have to leave that to the technical folks.

Link to comment
Share on other sites

  • 2 weeks later...

I was curious about this as well, so I did some searching.

Wikipedia said:
Interlacing (also known as interleaving) is a method of encoding a bitmap image such that a person who has partially received it sees a degraded copy of the entire image.
PNG uses the Adam7 algorithm, which interlaces in both the vertical and horizontal direction.

So...
non-interlaced: as the image loads, you see parts of it that are perfectly clear.
interlaced: you see the entire image. It starts fuzzy and then gets more clear as the image loads.

Typically one would interlace large files and/or when dealing with VERY slow connections.

Now.. all that being said, Second Life uses an internal picture format of JPEG-2000. No matter what file type you upload, SL converts it to JPEG-2000. And as we all know from experience, images in SL start out fuzzy and gradually become clear (meaning JPEG-2000 itself uses interlacing as well).

Bottom line, don't bother setting interlacing for pngs you plan to upload into SL.

Link to comment
Share on other sites


Fenix Eldritch wrote:

And as we all know from experience, images in SL start out fuzzy and gradually become clear (meaning JPEG-2000 itself uses interlacing as well).

Careful about jumping to conclusions.  Just because you see it go from blurry to sharp doesn't mean you're seeing interlacing.  Interlacing is just one method among many for delivering an image in stages.  It does not happen to be the method that is employed in SL's JPEG2000 images.

The term "interlacing" comes from weaving.  When you weave, you create a two-dimensional plane by interlacing one-dimensional lines.  Fabric is made in this way by interlacing threads.  Wicker is made by interlacing reeds.  In much the same way, an image can be constructed by interlacing lines of resolution.

One of the simplest forms of interlaced imagery is analog TV picture.  Each frame image is chopped up into horizontal lines, and only half the lines are drawn at any one time.  The odd numbered lines get drawn first, and then even numbered ones get drawn in between.

In PNG images, the Adam7 algorithm you mentioned adds an extra dimension to the mix, so the image is divided not just horizontally, but also vertically.  You therefore get several collections of interlaced squares instead of just two collections of interlaced lines.  (It's actually seven collections, which is where the "7" in Adam7 comes from.)

JPEG2000 uses a very different principle.  Instead of simply chopping up an image into pieces, it employs a complex process of frequency analysis to create several distinct versions of the image, at various resolutions and compression levels.  These versions are arranged hierarchically, so they can be progressively streamed in sequence, from lowest quality to highest.  Simply put, you get a series of whole images before you arrive at the full resolution, instead of just bits and pieces of the one.

Both methods are designed to give you something to look at while you're waiting for the full resolution image to appear.  They just go about it in very different ways.

Link to comment
Share on other sites

You are about to reply to a thread that has been inactive for 4458 days.

Please take a moment to consider if this thread is worth bumping.

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...