Do you optimize your assets?
Forum rules
Ren'Py specific questions should be posted in the Ren'Py Questions and Annoucements forum, not here.
Ren'Py specific questions should be posted in the Ren'Py Questions and Annoucements forum, not here.
-
- Regular
- Posts: 49
- Joined: Mon Feb 27, 2012 8:17 am
- Completed: HellBounders - Act 0
- Projects: HellBounders series
- Location: Ireland/LA
- Contact:
Re: Do you optimize your assets?
I'd certainly be wary of going too high-res with images, definitely design for a set resolution when you can (I'd guess most folks are going to be playing VNs in a window, I'd personally consider anything over a 720p baseline to be massive overkill, and even that's pushing it). And be careful with scaling. Software-scaled hi-res sprites look messier than ones properly designed for a target resolution and absolutely kill performance on slower systems.
I liked to use a netbook as a baseline spec to make sure I was keeping things nice and fast. I had to sell it since, but it helped me develop some good habits. Back when it was the only system I had, it was a real bummer that quite a few commercial VNs ran poorly (unplayable in some cases) due to lack of optimisation in stuff like this. I'd imagine it's a similar problem with android systems.
I liked to use a netbook as a baseline spec to make sure I was keeping things nice and fast. I had to sell it since, but it helped me develop some good habits. Back when it was the only system I had, it was a real bummer that quite a few commercial VNs ran poorly (unplayable in some cases) due to lack of optimisation in stuff like this. I'd imagine it's a similar problem with android systems.
- Greeny
- Miko-Class Veteran
- Posts: 921
- Joined: Sun Dec 20, 2009 10:15 am
- Completed: The Loop, The Madness
- Projects: In Orbit, TBA
- Organization: Gliese Productions
- Location: Cantankerous Castle
- Contact:
Re: Do you optimize your assets?
Is this true? I always play everything in fullscreen.ffs_jay wrote:I'd guess most folks are going to be playing VNs in a window
In Orbit [WIP] | Gliese is now doing weekly erratic VN reviews! The latest: Halloween Otome!
Gliese Productions | Facebook | Twitter
Gliese Productions | Facebook | Twitter
- papillon
- Arbiter of the Internets
- Posts: 4107
- Joined: Tue Aug 26, 2003 4:37 am
- Completed: lots; see website!
- Projects: something mysterious involving yuri, usually
- Organization: Hanako Games
- Tumblr: hanakogames
- Contact:
Re: Do you optimize your assets?
It used to be almost everyone went for fullscreen. Nowadays, the proliferation of different monitor aspect ratios (and in some cases, monitors that don't handle non-native resolutions that well) makes window-playing more attractive for 2d games. Plenty of people will still fullscreen everything though.
-
- Regular
- Posts: 49
- Joined: Mon Feb 27, 2012 8:17 am
- Completed: HellBounders - Act 0
- Projects: HellBounders series
- Location: Ireland/LA
- Contact:
Re: Do you optimize your assets?
Yeah, that was probably a bit presumptuous of me. I don't think you'll do yourself any harm by designing the optimum version of your game to be the windowed version, though. From what I've seen elsewhere in the indie gaming community, windowed does seem to be the norm, at least for simpler 2D stuff. That's largely anecdotal though.
Papillon makes some great points, another one I'd offer is that monitors in general are just bigger these days, and so people are more inclined to window stuff.
(EDIT: That was a general 'you', and not aimed at papillon. From what I remember, the games of hers I played all worked just fine, even on my rickety old netbook.)
Papillon makes some great points, another one I'd offer is that monitors in general are just bigger these days, and so people are more inclined to window stuff.
(EDIT: That was a general 'you', and not aimed at papillon. From what I remember, the games of hers I played all worked just fine, even on my rickety old netbook.)
- PyTom
- Ren'Py Creator
- Posts: 16088
- Joined: Mon Feb 02, 2004 10:58 am
- Completed: Moonlight Walks
- Projects: Ren'Py
- IRC Nick: renpytom
- Github: renpytom
- itch: renpytom
- Location: Kings Park, NY
- Contact:
Re: Do you optimize your assets?
im.Composite should be pretty fast. It takes place at image-load time, which shouldn't be performance-critical unless image prediction failed.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom(When was the last time you backed up your game?)
Software > Drama • https://www.patreon.com/renpytom
- papillon
- Arbiter of the Internets
- Posts: 4107
- Joined: Tue Aug 26, 2003 4:37 am
- Completed: lots; see website!
- Projects: something mysterious involving yuri, usually
- Organization: Hanako Games
- Tumblr: hanakogames
- Contact:
Re: Do you optimize your assets?
My problem was that I was building multiple sets of sprites in different sizes for each character (I have headshots in a different scale than fullbody sprites so that you can see the faces more clearly), so I was running composite, crop, and scale all together all the time, and that was producing noticeable slowdown in skip mode and (so I heard) actual lag in play on slower computers. For the moment while I'm still in development mode I'm ignoring composite completely and just letting my filesize explode, then when I'm more finished I'll optimise a bit with a much less complicated set of composites.
- PyTom
- Ren'Py Creator
- Posts: 16088
- Joined: Mon Feb 02, 2004 10:58 am
- Completed: Moonlight Walks
- Projects: Ren'Py
- IRC Nick: renpytom
- Github: renpytom
- itch: renpytom
- Location: Kings Park, NY
- Contact:
Re: Do you optimize your assets?
I can certainly see the problem in skip mode. Skip mode generally doesn't have time to preload anything, so the speed of loading is much more important.
Supporting creators since 2004
(When was the last time you backed up your game?)
"Do good work." - Virgil Ivan "Gus" Grissom(When was the last time you backed up your game?)
Software > Drama • https://www.patreon.com/renpytom
- jack_norton
- Lemma-Class Veteran
- Posts: 4084
- Joined: Mon Jul 21, 2008 5:41 pm
- Completed: Too many! See my homepage
- Projects: A lot! See www.winterwolves.com
- Tumblr: winterwolvesgames
- Contact:
Re: Do you optimize your assets?
I usually do:
- set my sprites to max 1024x1024 (since some old PC could have troubles with textures bigger than that)
- crop the expression to the face (it's very useful the photoshop layer function since returns the x,y coordinates of the rectangle). so for each character I have base image + several rectangles with the face expressions
- finally compress all with JCC
I remember I checked that vs using normal PNG / uncropped sprites and the result was a reduction of over 50:1 !!
- set my sprites to max 1024x1024 (since some old PC could have troubles with textures bigger than that)
- crop the expression to the face (it's very useful the photoshop layer function since returns the x,y coordinates of the rectangle). so for each character I have base image + several rectangles with the face expressions
- finally compress all with JCC
I remember I checked that vs using normal PNG / uncropped sprites and the result was a reduction of over 50:1 !!
- nyaatrap
- Crawling Chaos
- Posts: 1824
- Joined: Mon Feb 13, 2012 5:37 am
- Location: Kimashi Tower, Japan
- Contact:
Re: Do you optimize your assets?
Yeah 1024 pixel is very important setting. My game couldn't get good performance when it's developed in 1280.
Also, filmstrip images should be 512 pixel. Otherwise, it'll give memory error.
Also, filmstrip images should be 512 pixel. Otherwise, it'll give memory error.
-
- Regular
- Posts: 98
- Joined: Sat Dec 31, 2011 7:05 pm
- Projects: Kangaroo, Terminal Love
- Location: DC
- Contact:
Re: Do you optimize your assets?
Nowadays I do my best to make sure I do, especially when it comes to web development. For example, I had a site background that was a rather large image (2000x1133) However, it was only made out of about 3 or 4 different colors. You can seriously compress that, which I did, and then I tested the load on a phone and other platforms, and each time it loads fairly quickly, which is great seeing as how the image is enormous.
One of the people I know who has tested/proofread many things for me in the past lives in the middle of nowhere with a seriously limited bandwidth and an abhorrently slow internet connection. For game code I personally write in C, I tend to have a command line with option -D DEMO, and throughout the game, I tend to hide any music calls using something like this:
That way I can easily compile a version of my game that does not require music, and the only difference I need to make is to add/remove an option from my command line statement. You can likely do something similar in Renpy, but it wouldn't be with anything like a preprocessor. : P
One of the people I know who has tested/proofread many things for me in the past lives in the middle of nowhere with a seriously limited bandwidth and an abhorrently slow internet connection. For game code I personally write in C, I tend to have a command line with option -D DEMO, and throughout the game, I tend to hide any music calls using something like this:
Code: Select all
#ifdef DEMO
// music code
#endif
Unless I get lag or ugly graphics, I'll stay in full screen.Greeny wrote:Is this true? I always play everything in fullscreen.ffs_jay wrote:I'd guess most folks are going to be playing VNs in a window
- Greeny
- Miko-Class Veteran
- Posts: 921
- Joined: Sun Dec 20, 2009 10:15 am
- Completed: The Loop, The Madness
- Projects: In Orbit, TBA
- Organization: Gliese Productions
- Location: Cantankerous Castle
- Contact:
Re: Do you optimize your assets?
I could probably slice a solid 30 mb's off my game but programming the composites would a a bitch. So I won't. :P
In Orbit [WIP] | Gliese is now doing weekly erratic VN reviews! The latest: Halloween Otome!
Gliese Productions | Facebook | Twitter
Gliese Productions | Facebook | Twitter
- nyaatrap
- Crawling Chaos
- Posts: 1824
- Joined: Mon Feb 13, 2012 5:37 am
- Location: Kimashi Tower, Japan
- Contact:
Re: Do you optimize your assets?
Just read back the topic and I noticed one thing. Are you using LiveComposite, LiveCrop or some other Live functions? I never met the performance problem while using only im.Composite. I have heard LiveComposite isn't efficient so I never used it.papillon wrote:My problem was that I was building multiple sets of sprites in different sizes for each character (I have headshots in a different scale than fullbody sprites so that you can see the faces more clearly), so I was running composite, crop, and scale all together all the time, and that was producing noticeable slowdown in skip mode and (so I heard) actual lag in play on slower computers. For the moment while I'm still in development mode I'm ignoring composite completely and just letting my filesize explode, then when I'm more finished I'll optimise a bit with a much less complicated set of composites.
- papillon
- Arbiter of the Internets
- Posts: 4107
- Joined: Tue Aug 26, 2003 4:37 am
- Completed: lots; see website!
- Projects: something mysterious involving yuri, usually
- Organization: Hanako Games
- Tumblr: hanakogames
- Contact:
Re: Do you optimize your assets?
No, none of the functions were live. As I said, it's because I had very large images that were being composited AND cropped AND scaled and all done twice for each image. Normal people wouldn't do this.
- nyaatrap
- Crawling Chaos
- Posts: 1824
- Joined: Mon Feb 13, 2012 5:37 am
- Location: Kimashi Tower, Japan
- Contact:
Re: Do you optimize your assets?
Oh, then it makes sense. If there are many png files are decompressed for compositing at once, then it must slow down the game in theory. And if they have im.Factorscale process, then it may significantly slow.
-
- Veteran
- Posts: 353
- Joined: Thu May 01, 2008 1:12 pm
- Projects: Winter, winter
- Location: Estonia
- Contact:
Re: Do you optimize your assets?
Stumbled upon a thread about optimizing RPG Maker assets. Several neat tools and techniques were listed, some of them specific to that engine. But these we can use:
- PNG optimization
- Removing thumbs.db files if you're a windows user
- Remove unused files you may have forgotten in the game folder
- Use music loops instead of full tracks
- Make sure music and video are properly compressed
Who is online
Users browsing this forum: Ahrefs [Bot], Google [Bot]