![]() |
|
#1
|
|||
|
Yesterday I took a first look at jp2. It's truely awesome. It's smaller than jpeg and it also looks much better (I mean the lossy mode). For example hard contrast edges don't end up in a mess of jpeg artefacts. 80% jp2s look pretty much perfect and it's about 20-25% of the size of a png.
However, the patent stuff seems to be still pretty much unclear. I guess it's not used much for that reason. |
||
|
#2
|
|||
|
Is there any OGG stuff in progress for image compression?
Cas ![]()
__________________
Puppygames - Play DROID ASSAULT, our Paradroid homage! |
||
|
#3
|
||||
|
While many are under the belief that JPEG2000 is under strict licenses and such, that is not actually the case. The group and major comapnies behind JPEG2000 have all granted use of the relevant patents without restrictions, so it IS a free format and you can even find a free encoder\decoder for it called Jasper. The only reservation is that there MAY be hidden patents that some obscure company has taken long ago just to fling it in people's faces at a later time. Worrying about this however is probably being a bit paranoid.
Try JPEG2000 out. My experience with works wonders for textures and other "solid" images. Sprites - that is images that have large transparent parts and precise pixellated graphics - are much more suited to be losslessly compressed by LZMA (7-zip). Original License information, taken from http://en.wikipedia.org/wiki/JPEG2000 Quote:
|
|||
|
#5
|
||||
|
Quote:
![]()
__________________
Daniel Kinney solaristudios:. ● TIGRS - The Independent Game Rating System ● "Hard-Sell: The Only Sell" |
|||
|
#6
|
|||
|
In one of their dev diaries (I'm too lazy to dig up the link), Moonpod talked about converting Starscape to use JP2000. They were very impressed by the quality to filesize ratio (it really is leaps beyond jpeg), but found that it decompressed too slowly for loading images in-game. So they have the decompression (to some other format) all done at install time.
__________________
Marty Rabens __________________ The heights by great men reached and kept Were not attained by sudden flight, But they while their companions slept Were toiling upward in the night. |
||
|
#7
|
|||
|
Can you get Jpeg 2000 plugins for Photoshop? How 'bout for ImageMagick? Without support in one (preferably both) of those two, it would be rather hard for me to work with JPeg 2000.
|
||
|
#8
|
||||
|
Quote:
__________________
Daniel Kinney solaristudios:. ● TIGRS - The Independent Game Rating System ● "Hard-Sell: The Only Sell" |
|||
|
#9
|
||||
|
Quote:
__________________
-Spaceman Spiff Making games for the 6-year old in all of us |
|||
|
#10
|
||||
|
Quote:
![]()
__________________
Daniel Kinney solaristudios:. ● TIGRS - The Independent Game Rating System ● "Hard-Sell: The Only Sell" |
|||
|
#11
|
||||
|
Quote:
![]() Jasper sucks. Believe me, I wouldn't write this codec if JasPer were any good...
__________________
Alex Saveliev, "Want your graphics be smaller, yet look better? Use JPEG 2000! It's extremely easy with J2K-Codec" |
|||
|
#12
|
|||
|
<surfaces from hibernation>...is there a pure Java implementation of your decoder anywhere?
Cas ![]()
__________________
Puppygames - Play DROID ASSAULT, our Paradroid homage! |
||
|
#13
|
||||
|
Quote:
P.S. The platform is PC.
__________________
Alex Saveliev, "Want your graphics be smaller, yet look better? Use JPEG 2000! It's extremely easy with J2K-Codec" |
|||
|
#14
|
||||
|
Quote:
But JPEG2000 on Java will be veeeery slooooow ![]()
__________________
Alex Saveliev, "Want your graphics be smaller, yet look better? Use JPEG 2000! It's extremely easy with J2K-Codec" |
|||
|
#15
|
|||
|
Why's that then?
Cas ![]()
__________________
Puppygames - Play DROID ASSAULT, our Paradroid homage! |
||
|
#16
|
|||
|
Is there an easy way to use Jpeg 2000 with SDL?
Will JPeg 2000 cause noticeably slower load/decompress times than regular old Jpeg? |
||
|
#18
|
|||
|
:S Won't get baited... tell that to my Java code.
Cas ![]()
__________________
Puppygames - Play DROID ASSAULT, our Paradroid homage! |
||
|
#19
|
|||||
|
Quote:
Quote:
![]()
__________________
Alex Saveliev, "Want your graphics be smaller, yet look better? Use JPEG 2000! It's extremely easy with J2K-Codec" |
||||
|
#20
|
||||
|
Quote:
![]() Moving packman around and performing full-scale wavelet and codeblock decoding is a bit different calculation tasks ![]()
__________________
Alex Saveliev, "Want your graphics be smaller, yet look better? Use JPEG 2000! It's extremely easy with J2K-Codec" |
|||
|
#21
|
|||
|
I am also interested in JPEG2000 for SDL, specifically if it supported PyGame across Mac, Windoze, and Linux.
|
||
|
#22
|
||||
|
Quote:
What I mean is: Modern hardware and modern optimizing compilers (including JIT-compilers) have undeniably gotten good enough to make both direct memory access (pointers) and hand-tuned assembly 100% useless for anything a game does. (Except for highly complex 3D scenery, and highly complex shader-style pixel manipulations, but those are never done when there isn't hardware acceleration). But, there are things (such as Jpeg 2000) that are far more computationally intensive than what games ever do on the CPU. These things require such an absurdly high amount of computation, that those optimization techniques disallowed by Java - while totally useless for normal game purposes - can still yield noticable performance gains for super-computationally-intensive algorithms. So like Alex said, blitting a bunch of sprites, even with alpha maps, rotation, and scaling, is still nothing compared to what must be calculated for every pixel in a Jpeg 2000 image.
__________________
Nick Sabalausky Last edited by Abscissa; 07-12-2005 at 11:10 AM.. |
|||
|
#23
|
|||
|
That would be a very informative and useful post... if it were true.
Cas ![]()
__________________
Puppygames - Play DROID ASSAULT, our Paradroid homage! |
||
|
#24
|
||||
|
Quote:
![]()
__________________
Nick Sabalausky |
|||
|
#25
|
|||
|
![]() FWIW Sun's Java Media Framework is available in pure Java and it decodes mpegs in realtime at a rate about 5-10% slower than a C version. I'm pretty happy losing 10% of my performance if I get all that Java peace-of-mind. So I'm wondering why Alex isn't interested in doing a port of his decoder to Java for us Java types to purchase. I'm definitely interested. Cas ![]()
__________________
Puppygames - Play DROID ASSAULT, our Paradroid homage! |
||
|
#26
|
||||
|
Quote:
__________________
Alex Saveliev, "Want your graphics be smaller, yet look better? Use JPEG 2000! It's extremely easy with J2K-Codec" |
|||
|
#27
|
||||
|
Quote:
![]() There is already a free Java implementation - JJ2000 - I've mentioned it somewhere above. I haven't compared performances - I had no time to go into troubles of making all this stuff run under Java-VM. I looked into the source code and I would bet that the performance drop will be significantly worse than 5-10% that princec mentioned...
__________________
Alex Saveliev, "Want your graphics be smaller, yet look better? Use JPEG 2000! It's extremely easy with J2K-Codec" |
|||
|
#28
|
|||
|
I tried JPeg 2K [edit - fixed typo] on some images I have - the results were far from a slam dunk.
At equivalent file size reductions (reducing to roughly the size I need for my game), the J2K image looked better on high contrast edges, but in lower contrast areas, the basic Jpeg image looked noticeably better (the JPeg2000 image got very muddy in areas of subtle contrast). I'll take a look again when I have all my art done for my game, but at the moment, I'd say it's roughly a tossup on quality, and given secondary issues (easier toolchain support, legal questions with Jpeg2K, etc), I'm inclined to stay with Jpeg. Note my images are of a sort of water-colory/fantasy look. There are certainly hard edges to be found, but lots of subtle color gradients and the like too. Your mileage may vary. Last edited by Phil Steinmeyer; 07-12-2005 at 06:18 PM.. |
||
|
#29
|
||||
|
Quote:
When you will try JPEG2000 again - feel free to contact me, maybe I will be able to help you with compression settings and other stuff...
__________________
Alex Saveliev, "Want your graphics be smaller, yet look better? Use JPEG 2000! It's extremely easy with J2K-Codec" |
|||
|
#30
|
|||
|
I used this Photoshop plugin to encode an old screen shot and got pretty bad results:
Original PNG (99k) Lossy JPEG 2000 set at same size as Original PNG (99k) Same as above, but converted back to PNG for those unable to view JP2's On the JP2 version, note the smears and blurriness on a) the dithering artifacts on the gamefield background and b) the scoreboard. Also interesting is the fact that saving the JP2-version as a PNG resulted in a file more than five times the size of the original PNG and JP2. So, from my (incredibly ad-hoc and non-scientific) test, it seems that *either* the codec I'm using or JPEG 2000 is really crappy on images with very high-frequency changes (which would probably include things like anime/manga, cartoons, technical drawings, etc.) EDIT: Fixed the links ![]()
__________________
Nick Sabalausky Last edited by Abscissa; 07-13-2005 at 06:33 AM.. |
||
![]() |
| Thread Tools | |
| Display Modes | |
|
|