Please login or register.

Login with username, password and session length
Advanced search  

News:

IRC channel - server: waelisch.de  channel: #wme (read more)

Author Topic: performance of wintermute, optimisation  (Read 7675 times)

0 Members and 1 Guest are viewing this topic.

gfx johnny

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 142
    • View Profile
performance of wintermute, optimisation
« on: October 28, 2004, 12:01:29 PM »

Since i played the ProjectJoe-demo i'm worrying about wintermute's performance. As described, i played it on my old computer, an athlon 600 with 256mb ram using a geforce 2 mx 400 (64mb). Project Joe has high system requirements, and my pc doesn't fit well, sure.

But i'm a little bit scared now, because i can play almost every other 2d game (and even 3d game) using my hardware with no problems at all. And i mean commercial, high quality games with lots of animations, and high resolution. I think ProjectJoe doesn't have that complexity that would justify its performance on my machine.

Now i'm frightened, because i want to make a high quality game and i don't want the user to have 512mb ram. I'm asking myself, what's the problem? I guess either the ProjectJoe people didn't care about optimisation, or wintermute itself slows it down (i don't hope so). So perhaps Mnemonic can bring light into this darkness, would be nice.

Another thing is, how can you make your game faster? How to optimise it?
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: performance of wintermute, optimisation
« Reply #1 on: October 28, 2004, 12:27:22 PM »

I already commented on this in the other thread, but let me rcapitulate some facts:

Project Joe is work in progress. It would take at least a year to fully finish the game and it's pretty normal for commercial games to aim at higher hardware specs than those up-to-date when the development starts. In my very humble opinion 512MB of RAM will be pretty much standard in a year from now (you'll remember my words when Longhorn comes out ;)).
But the truth is no one really cared about optimization too much in this phase. I guess WME could deal with the memory better, I guess the animations could have been reduced by a lot of needless frames, I guess some of the textures could have been cut a bit more to save some memory, etc.

Quote
And i mean commercial, high quality games with lots of animations, and high resolution.
Frankly, I can't think of any other 2D game in 1024x768 with this amount of graphics. Runaway was close, but other than that?
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

gfx johnny

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 142
    • View Profile
Re: performance of wintermute, optimisation
« Reply #2 on: October 28, 2004, 01:23:13 PM »

First of all i want to say that i dont want to sound rude or something like this. Its all about constructive criticism, i dont want to offend you and your work. I just see a big problem there, and i must know how to handle it.

Quote
I already commented on this in the other thread
I know, but your answer wasnt that satisfying for me. Your answer was something like "there is a huge amount of graphics, so you need more than 256mb ram." I can't follow that because in my opinion ProjectJoe shouldnt need 256mb, its not _that_ complex. I can even play Gothic 2 almost in a smooth way, and its a hell of a monster regarding ram use, its a gargantuan 3d world with huge textures and no loading time. Ok, its 3d, but i would say its a bigger load for ram. And think of Runaway for example (see bottom).

Quote
Project Joe is work in progress. It would take at least a year to fully finish the game and it's pretty normal for commercial games to aim at higher hardware specs than those up-to-date when the development starts.
Thats true, but adventure games are a little bit different i would say. Its my opinion that a 2d adventure won't need that kind of hardware. See Runaway requirements for example. I dont talk about 3d-adventures or 2d games with new innovative techniques that could eat up your ram, thats another thing of course.

Quote
In my very humble opinion 512MB of RAM will be pretty much standard in a year from now (you'll remember my words when Longhorn comes out ).
You are right perhaps, but thats not the point for me. I don't care about the upgrade madness, i just want to make a quality game like runaway which will run smooth and fine using 256mb ram, and i know its possible. And you know, especially adventure gamers don't always have that big "standard" computer. So its a definitive requirement for me to have a system requirement as low as possible. And 512mb ram is not that low.

Quote
But the truth is no one really cared about optimization too much in this phase. I guess WME could deal with the memory better, I guess the animations could have been reduced by a lot of needless frames, I guess some of the textures could have been cut a bit more to save some memory, etc.
Ok, if you say the projectjoe team didnt optimise their demo, i'm happy and eased. Its not that i want wintermute to have bad performance, you know.

Quote
Runaway was close, but other than that?
I dont know if i get your meaning right; in my opinion runaway is not worse than Project Joe (same resolution, animations). And then look at its requirements: i searched a bit and found values from 32mb ram (minimum) to a middle value of 64mb. Some sites say, 128mb is some kind of optimum. And then let Project Joe have 256mb, and that bad performance... i cant understand that. Its all about the relation. For me, that is a big problem...
 
Logged

deadworm222

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Gender: Male
  • Posts: 197
  • Wintermute Army
    • View Profile
Re: performance of wintermute, optimisation
« Reply #3 on: October 28, 2004, 07:06:41 PM »

Well, alpha channel IS a new technique in 2D games.
Logged

Nihil

  • Supporter
  • Addicted to WME forum
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 528
  • Fear me! I'm evil!
    • View Profile
    • Order of Dagon
Re: performance of wintermute, optimisation
« Reply #4 on: October 28, 2004, 07:23:14 PM »

Actually, I don't think that 256 MB is enough for a PC these days, at least not if you have Win2k or XP installed.

I'm running 2k at the moment, and the only applications running are Opera and my virus-scanner, but only that uses nearly 200 mb ram, I think it's even more under XP, so with only 256 mb installed there is basically nothing remaining for the applications and they have to swap from the very beginning.

But what I also ask myself is how important the memory of the graphic-card is? Are, for example, background pictures, sprites and so on loaded in the video memory or the normal ram?

EDIT:
@Johnny: Did you try out the other demos here? If yes, how did they perform on your machine?
« Last Edit: October 28, 2004, 08:33:46 PM by Nihil »
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: performance of wintermute, optimisation
« Reply #5 on: October 28, 2004, 08:45:39 PM »

But what I also ask myself is how important the memory of the graphic-card is? Are, for example, background pictures, sprites and so on loaded in the video memory or the normal ram?
The size of videoram is important for the overall performance. The videocard can access textures stored in VRAM very fast, unlike those stored system memory. But WME backs all the graphics up in the sys mem anyway, so that they can be restored after you alt-tab away from the game etc. This is where I can see about the only possibility for improvement on the engine side.
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

Nihil

  • Supporter
  • Addicted to WME forum
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 528
  • Fear me! I'm evil!
    • View Profile
    • Order of Dagon
Re: performance of wintermute, optimisation
« Reply #6 on: October 28, 2004, 08:53:58 PM »

Is this technically necessary or just to speed up the screen-recovering after ALT-Tab?

If second, I would say that is a not so important feature (because the players shall not alt-tab, they shall play our games :-) )

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: performance of wintermute, optimisation
« Reply #7 on: October 28, 2004, 08:54:49 PM »

Is this technically necessary or just to speed up the screen-recovering after ALT-Tab?
No, it's not necessary. It simply wasn't an issue up until now :)
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: performance of wintermute, optimisation
« Reply #8 on: October 28, 2004, 09:00:32 PM »

I can even play Gothic 2 almost in a smooth way, and its a hell of a monster regarding ram use, its a gargantuan 3d world with huge textures and no loading time. Ok, its 3d, but i would say its a bigger load for ram.
This comparison is a little off. I seriously doubt Gothic stores everything in memory. IMHO the map is divided into segments and only loads stuff that you can see, even though the loading is more or less seamless. In case of 2D scene in adventure game you can see the graphics all the time hence it has to be loaded in memory. Of course, you could stream long animations from disk, but the performance gain is very questionable in this case.


I dont know if i get your meaning right; in my opinion runaway is not worse than Project Joe (same resolution, animations). And then look at its requirements: i searched a bit and found values from 32mb ram (minimum) to a middle value of 64mb. Some sites say, 128mb is some kind of optimum. And then let Project Joe have 256mb, and that bad performance... i cant understand that. Its all about the relation. For me, that is a big problem...
What I mean is, that I can't think of any other 2D game which is that graphic intense. Runaway uses the same resolution, but uses 16bit colors, probably also internally. Joe uses 32 bit textures, i.e. twice the size of the graphics. Also as far as I can remember there are few background animations in scenes in Runaway (I can be wrong, I don't remember and I'm too lazy to install it now :))

Anyway, here are some numbers for your viewing pleasure. This is the texture manager dump of the carfair scene in Project Joe (I hope the Synthetix guys won't mind me releasing this). The total memory usage for graphics is approx. 183 MB. Also notice that the textures have to be resized internally, because todays videocards require the texture dimensions to be powers of two.

http://dead-code.org/misc/wme_texture_stats.htm
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

Nihil

  • Supporter
  • Addicted to WME forum
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 528
  • Fear me! I'm evil!
    • View Profile
    • Order of Dagon
Re: performance of wintermute, optimisation
« Reply #9 on: October 28, 2004, 09:25:32 PM »

This comparison is a little off. I seriously doubt Gothic stores everything in memory. IMHO the map is divided into segments and only loads stuff that you can see, even though the loading is more or less seamless. In case of 2D scene in adventure game you can see the graphics all the time hence it has to be loaded in memory. Of course, you could stream long animations from disk, but the performance gain is very questionable in this case.

3d-engines use techniques like dyamic LOD (level of detail), fog, backface culling (?) and so on, so only very little amounts - i.e. the things you can actually see - are loaded into the vram and rendered (at least as far as I know, but I'm no expert on this). These are things you can't do in 2d, though I don't now if similar things exist there?

So, if you want to develop for slower, smaller machines, I suppose it most important to be extremly carefull with use of graphics.

gfx johnny

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 142
    • View Profile
Re: performance of wintermute, optimisation
« Reply #10 on: October 28, 2004, 09:41:15 PM »

Thx for your time, Mnemonic. So i guess the conclusion is, im able to make a good quality game with Wintermute like Runaway if i use 16bit? That kind of quality would be more than enough. Ok, i think i must make my own test with my graphics and animation to see if im able to create low system requirements.

Quote from: Nihil
actually, I don't think that 256 MB is enough for a PC these days, at least not if you have Win2k or XP installed.

I'm running 2k at the moment, and the only applications running are Opera and my virus-scanner, but only that uses nearly 200 mb ram, I think it's even more under XP, so with only 256 mb installed there is basically nothing remaining for the applications and they have to swap from the very beginning.
Im using xp and i have several applications running (firewall, winamp, firefox) and ~160mb ram is used. I often read Xp will use 128mb minimum. And its enough for most games, especially 2d games, thats my point. Of course my computer is very old (several years), and i didnt complain about Doom3 when it run like a slide show ;) But every other adventure game did run as smooth as it gets, so 256mb is enough when looking at available commercial games. Perhaps Joe is pushing the limit, goes farther than any other adventure, but i dont see that kind of graphic overkill, i would even say Runaway looks better imho (and Runaway has lots of beautiful animations, too).
After all, its ok if you and all other members here think that 256mb ram isnt enough, but im more interested in the question if you can do a more or less big adventure with high quality and just using 256mb ;) Its a requirement for my project, thats all. So the discussion about that is a little bit off.


I tried Sofia's Debt, Dead City, Wilma Tetris and Ganja Joe i think, no problem there (anyway, not a good comparison to Project Joe).

And i know the comparison to Gothic was not that good, hey, i even mentioned it myself ;) But there are lots of very big 2d textures at one time on the screen, so i thought that would qualify in a minor way.
Logged

Nihil

  • Supporter
  • Addicted to WME forum
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 528
  • Fear me! I'm evil!
    • View Profile
    • Order of Dagon
Re: performance of wintermute, optimisation
« Reply #11 on: October 28, 2004, 09:57:58 PM »

You are right, I just rebootet with XP (and basically the same applications running), and it only uses ~170mb, so it seems MS has finally done something right  ;)

Things you can do in my opinion is for example choosing the right size for your sprites.
If you look at the list Mnemonic posted you see for example that the size of the sprite for the right flag is 543 x 173, which is internally increased to 1024 x 256. If they had made it smaller, like 512 x 173 or so, it would have saved a lot of memory (considering this is a 30 frame animation)  ... of course it still has to look good, optimizing is no easy taks here I think.

Orange Brat

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 112
    • View Profile
    • Orange Brat Shenanigans™
Re: performance of wintermute, optimisation
« Reply #12 on: October 29, 2004, 02:51:56 AM »

Quote
Also notice that the textures have to be resized internally, because todays videocards require the texture dimensions to be powers of two

I'm coming to WME from a 3D engine(Gamestudio), and they pound it in our heads that power of 2, power of 2, power of 2 was important. If you have a graphic that is not power of 2, then this will slowdown the engine. The simple solution is if the actual art part of the image is say 180 x 298, then make sure the real image size is 256 x 512. Don't try to use an actual sprite image that is 180 x 298 or the engine has to do more. With Gamestudio, we could actually use an oddball size for a sprite..the engine wouldn't crash if it wasn't power of 2...the same was not true for level surface textures, though.
Logged
The Disenfranchised™ - coming later
 

Page created in 0.034 seconds with 23 queries.