Pushing AGS to the limit (testers needed!)

Started by edmundito, Sun 21/08/2005 23:15:00

Previous topic - Next topic

edmundito

I was just wondering what's slower to have: 100 graphic overlays moving around on the screen or 100 objects moving around on the screen? Let's say that all graphic overlays and all objects would be based on the same sprite. Also, perhaps 100 characters would be another option?

I guess I could always program a demo and let people test it, huh? :)

---

Update: Oh, I ran into a problem. Looks like I can only do 20 overlays at a time?! That's nonsense! I need at least 150 :P

How am I supposed to push the limits of AGS with so few, sheesh! :(

monkey0506

And you must also be sure to account for the fact that background speech uses overlays.  So if you have any of that going on, you have even less to work with.

edmundito

#2
I don't :)

Here's a test for you guys. Please try it specially if you have a computer that is older than 3-4 years and less than a Pentium4/AlthonXP. Also, it might make you dizzy, so you know... keep a puke bag next to you if you get sick easily:

http://files.cellosoft.com/netmonkey/temp/limit.zip

Basically, it's moving 100 pink posters across the screen, and those are raw drawn every loop, and it's moving 20 bluecups (which are graphic overlays) in the other direction. Also, you can move Roger around, and he has scaling from 10% to 100%. Crazy, huh?

For me, when the game loads, it says 1 fps, 39 fps, and then it stays fixed at 40 fps. I have a P4 2.0 with a geforce 6600 GT card and 1 GB of memory, so perhaps I'm not the best tester for this.

Yeah, I'm bored... waiting to hear back from the Mittens people!! :)

strazer

I found that the main performance hit using rawdraw functions is due to RawRestoreScreen. See this thread for a discussion on that.

edmundito

I'm not using those functions, fortunately! But it's cool that these things have been studied before.

Looks like the Mac version of AGS needs some work because it goes at 35 fps even if I bump up the fps to 60.

Kweepa

#5
Hey, don't slag the mac version! :=
If you're running 320x200, the mac version uses 640x400 instead, so that might explain the discrepancy.

Interesting to see that RawRestoreScreen is slow... hmmm...

[EDIT] Are you sure your FPS calculation is right? I get 24/25 FPS on an iMac G5.
Still waiting for Purity of the Surf II

edmundito

The version that you can download is supposed to run at 40fps which does clock at 24-25 fps on the mac, but I did some extra tests with a special 60fps version just to see if it would go faster, but again, on the mac it averaged 35fps. I didn't do any tests on 640x480, though...

Ishmael

I tired it, 1.6GHz Athlon something, 1GB memory, 32mb GeForce4 MX. Runs at 40fps, untill I clicked the "About" button, which gave me a "Too many screen overlays created" error :P
I used to make games but then I took an IRC in the knee.

<Calin> Ishmael looks awesome all the time
\( Ö)/ ¬(Ö ) | Ja minähän en keskellä kirkasta päivää lähden minnekään juoksentelemaan ilman housuja.

Kweepa

Quote from: Edmundo on Mon 22/08/2005 14:40:15
The version that you can download is supposed to run at 40fps which does clock at 24-25 fps on the mac, but I did some extra tests with a special 60fps version just to see if it would go faster, but again, on the mac it averaged 35fps.

That's my point though. Why would the 60fps version get 10 more fps than the 40? Ohh, unless it's the Sleep I added to cut down on the fan noise... Oopsie. That might very well explain it.

Heh.
Still waiting for Purity of the Surf II

Dave Gilbert

Here are my stats:

PIII processor
701 MHz
256MB of ram

My fps fluxuated between 40 and 38.  I tried it in both resolutions and the results were the same.

edmundito

Can you not have the following?

struct A {};

struct B {
  A a;
};

AGS tells me:
Quote---------------------------
Compile Error
---------------------------
There was an error compiling your script. The problem was:

In: 'Module X'

Error (line 22): Syntax error at 'A::B'; expected variable type

I'm using 2.7 refresh2.


edmundito

Ahhh

I thought it was only nested structs but this way:

struct A {
  A a;
};

... and such.

monkey0506

Quote from: Edmundo on Fri 26/08/2005 07:42:20
Ahhh

I thought it was only nested structs but this way:

struct A {
A a;
};

... and such.

Actually that works...

Kweepa

Somehow I doubt it.
You can't do much with it in any case.
Still waiting for Purity of the Surf II

monkey0506

Actually I can think of some uses for it...

SMF spam blocked by CleanTalk