• To improve security, we will soon start forcing password resets for any account that uses a weak password on the next login. If you have a weak password or a defunct email, please update it now to prevent future disruption.

Why do devs continue to use .png in Ren'py games ?

Kryptozoid

Well-Known Member
Sep 3, 2016
1,191
2,393
Seriously unless you need transparency, why do they keep using png when it just takes space for no real benefit. I don't wanna hear "png is uncompressed it's the best quality !" it's bullshit. A jpg set to 97% quality is the same as png for any human. And if you can set a webp at the highest quality too it's probably very good and even smaller.
So seriously why ? I can understand on the first few releases, players look at the size of the game, and if they see it's 80MB, they think there's not much content. So devs put everything in png so it's 600MB and people still don't get much content but at least they will check the game. But when your game has 3000+ pictures in update 15 please use jpg or webp, we don't all have 72TB of storage for porn games.

Thanks for listening to this rant.
 
  • Like
Reactions: Meushi and moskyx

khumak

Engaged Member
Oct 2, 2017
3,530
3,566
Well the webp compression tool I use actually keeps the .png file name even though it's actually a webp compressed file. I would agree that there's no reason not to at least offer a compressed version, even if you also have a completely uncompressed version.
 

CocoVC

Newbie
Aug 10, 2018
76
168
Maybe, like I was at one time, don't know that batch compression tools like exist.
Or as you say, they want to bloat their game so people will think it's a lot of content for a 0.0.01.
 
Apr 19, 2019
60
82
I mean, you can compress PNG files too, and it's lossless, which is especially important for pixel art. Maybe the real question should be why aren't devs compressing their shit?
 
Jul 22, 2019
247
369
Yup, I don't understand it either. Any dev who still uses PNG is just braindead imo. There is absolutely no practical reason whatsoever. Just use WEBP if you want transparency, and use JPEG for the rest. These 5gb games with 30 minutes of content can easily be a little over 500mb. Small file sizes makes it more convenient, not just for the developer, but also for the players.

There are very few things that put me off from downloading a game and one of them is seeing a 2gb or above file size.
 

Cryswar

The Profound Dorkness
Game Developer
May 31, 2019
903
2,057
Admittedly I didn't know much about .webp until a few weeks ago myself, but yeah it's amazing. The size difference is crazy. I use Advanced Batch Image Converter 'cuz I'm apparently too dumb for XNconvert, and compared to the high-quality original PNG it's not uncommon to see size savings of 70-90% even with lossless conversion.

Obviously, the details depend on the resolution of your game, the art, etc. Webp is generally a huge upgrade in efficiency though.

Now if only Discord would let you upload webp emoji...
 

kytee

Member
Dec 17, 2018
290
680
Why do devs continue to use .png in renpy games?
Yup, I don't understand it either. Any dev who still uses PNG is just braindead imo.
It's a stupid question and if you can figure out what compression is and the differences between the file types are, yet still don't understand what could possibly be the answer to this question then you're just as brain dead.

Admittedly I didn't know much about .webp until a few weeks ago myself
 

Kryptozoid

Well-Known Member
Sep 3, 2016
1,191
2,393
I can understand not everybody knows webp. But everybody knows jpg. And should know how to set jpg to 95%+ quality so there is no visible difference compared to png.

Cryswar : XN convert is pretty easy : you just launch it, drag and drop your pic folder inside its window, go to output tab, select an empty folder, select jpg quality and run the conversion. Not sure it does webp, tho, but jpg is already a great improvement in file size.
 

Doorknob22

Super Moderator
Moderator
Game Developer
Nov 3, 2017
2,152
5,203
Kryptozoid can you help a clueless developer here? What do you recommend that I do? I render a png image and send it to for compression. Is there another course of action you recommend? I'm actually looking to reduce disk space without losing quality.
 

EpicLust

Dev of Cockham Superheroes
Game Developer
May 30, 2017
3,756
7,140
Kryptozoid can you help a clueless developer here? What do you recommend that I do? I render a png image and send it to for compression. Is there another course of action you recommend? I'm actually looking to reduce disk space without losing quality.
I use that too for displayables, they need to be in png format anyway so they are transparent, so not every dev can simply use jpeg or webm all the time. And tinypng reduces pngs without quality loss quite well I'd say.
 
  • Like
Reactions: Doorknob22
Jul 22, 2019
247
369
It's a stupid question and if you can figure out what compression is and the differences between the file types are, yet still don't understand what could possibly be the answer to this question then you're just as brain dead.
So what is it? They might be unaware of it? Is that it? Literally the very first almost knee jerk response I had when I started getting into rendering and learning DAZ etc a while ago was "this shit is gonna become fucking huge with just 50 or so renders, gotta do something about that", and then 1 google search later it was solved. That's it.

Note: Some devs gave excuses of these formats being too lossy and that they don't "like" the compression. Again, excuses, useless excuses that serve absolutely zero practical reasons. Knowing most of your audience, and on what systems they play the game, the observable quality difference is virtually zero, unless someone will be zooming in to inspect the pixels which I doubt.

The only thing it confirms is that some devs are just unwilling to do the research and put in the work, instead they dive head first into the thick of it. I am particularly bitter about this because I have personally talked to some devs, who even after realizing this, didn't implement it. The excuse they gave was that smaller file sizes make it look like the game has lesser content so lesser downloads. Which is just, wow.
 
Jul 22, 2019
247
369
Kryptozoid can you help a clueless developer here? What do you recommend that I do? I render a png image and send it to for compression. Is there another course of action you recommend? I'm actually looking to reduce disk space without losing quality.
If you use post processing on your images, which imo everybody should. Like in Gimp or Photoshop etc. Just from the output formats over there you can export it as a JPEG or WEBP. If not then there are a bunch of compression tools that you can use on the final images, like the one quoted by Jamleng.
 

Winterfire

Forum Fanatic
Respected User
Game Developer
Sep 27, 2018
4,964
7,282
WEBP/WEBM is definitely the way to go for, there is no reason why you should be using PNG.

As for the cruncher and other compressors, leave that task to other people (As a mod/altenative version). Devs should aim to deliver the best quality possible, Ren'Py is not really made with compression in mind like most other game engines.
 

Kryptozoid

Well-Known Member
Sep 3, 2016
1,191
2,393
Kryptozoid can you help a clueless developer here? What do you recommend that I do? I render a png image and send it to for compression. Is there another course of action you recommend? I'm actually looking to reduce disk space without losing quality.
The easiest way for me is XnConvert :


As long as it's for pictures who don't need transparency, you can shove all your png pics in Xnconvert, then in output tab select jpeg (pick the quality you want beforehand), select an output folder and then it's just one button to press and it will convert everything in jpg. And maybe webp is possible too but I'm not sure I only use it for jpg. Anyways it's super easy to use.

And as somebody said, of course if you do post processing in Photoshop, you can save your png in almost any format. But Xnconvert is simple and easier. With Photoshop it's one by one, unless you create a script, which is not as easy as using XnConvert (tho not terribly difficult).
 
  • Like
Reactions: Doorknob22