0.2.8.3 servers cause low fps on 0.2.8.2.1 clients

For all the help you need with Armagetron!
User avatar
Jonathan
A Brave Victim
Posts: 3391
Joined: Thu Feb 03, 2005 12:50 am
Location: Not really lurking anymore

Re: 0.2.8.3 servers cause low fps on 0.2.8.2.1 clients

Post by Jonathan »

You like retro graphics, no? Switch to nearest filtering and use binary alpha in your wall texture.

Edit: whoa! I looked at source (0.2.8.2.1 which was around on my disk) because I never really noticed alpha testing before. But when I scrolled up a bit (sr_ResetRenderState, rScreen.cpp):

Code: Select all

    // and polygons
    switch(sr_polygonAntialias){
    case rFEAT_OFF:
        glDisable(GL_POLYGON_SMOOTH);
        glHint (GL_POLYGON_SMOOTH_HINT, GL_FASTEST);
        break;
    case rFEAT_ON:
        glEnable(GL_POLYGON_SMOOTH);
        glHint (GL_POLYGON_SMOOTH_HINT, GL_NICEST);
    default:
        glHint (GL_POLYGON_SMOOTH_HINT, GL_DONT_CARE);
    }
Missing a break. Maybe a few years past prime time, but a bug nonetheless. If that code even does anything sane...
ˌɑrməˈɡɛˌtrɑn
User avatar
Z-Man
God & Project Admin
Posts: 11736
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Re: 0.2.8.3 servers cause low fps on 0.2.8.2.1 clients

Post by Z-Man »

Whoops. That setting is long gone, however, and wouldn't have worked properly without that bug anyway.
User avatar
Phytotron
Formerly Oscilloscope
Posts: 5042
Joined: Thu Jun 09, 2005 10:06 pm
Location: A site or situation, especially considered in regard to its surroundings.
Contact:

Re: 0.2.8.3 servers cause low fps on 0.2.8.2.1 clients

Post by Phytotron »

Actually, I do use 'nearest' for the font. Otherwise it's all smudgy and hard to read.

So, I'm not talking about setting alpha_blend to anything but 0 or 1. I'm talking about the opacity of the texture itself over the alpha channel. Are you? If so, and that's unsupported, then why is it in the menu, and/or allowed to apply to the graphics at all?
User avatar
Lackadaisical
Shutout Match Winner
Posts: 823
Joined: Sun Dec 21, 2003 4:58 pm
Location: Amsterdam, Netherlands
Contact:

Re: 0.2.8.3 servers cause low fps on 0.2.8.2.1 clients

Post by Lackadaisical »

Yeah he's talking about the same thing, I had a topic about it some time ago as well.
User avatar
Jonathan
A Brave Victim
Posts: 3391
Joined: Thu Feb 03, 2005 12:50 am
Location: Not really lurking anymore

Re: 0.2.8.3 servers cause low fps on 0.2.8.2.1 clients

Post by Jonathan »

Phytotron wrote:So, I'm not talking about setting alpha_blend to anything but 0 or 1. I'm talking about the opacity of the texture itself over the alpha channel. Are you?
Yeah. I and Z-Man meant using only full on and full off alpha in the texture. That should let anything behind it show through reliably.
Phytotron wrote:If so, and that's unsupported, then why is it in the menu, and/or allowed to apply to the graphics at all?
I guess because it even has a clear purpose with other textures, and the same subsystem is reused.
ˌɑrməˈɡɛˌtrɑn
User avatar
Z-Man
God & Project Admin
Posts: 11736
Joined: Sun Jan 23, 2005 6:01 pm
Location: Cologne
Contact:

Re: 0.2.8.3 servers cause low fps on 0.2.8.2.1 clients

Post by Z-Man »

Humm, looked at the duplicate wall rendering performance problem, here's a small patch that should fix it, hopefully without side effects:

Code: Select all

diff -u -r ../armagetronad-0.2.8.2.1/src/tron/gWall.cpp ./src/tron/gWall.cpp
--- ../armagetronad-0.2.8.2.1/src/tron/gWall.cpp        2006-05-13 16:17:32.000000000 +0200
+++ ./src/tron/gWall.cpp        2010-02-01 20:34:39.000000000 +0100
@@ -848,7 +848,7 @@

 #ifndef DEDICATED
 void gPlayerWall::Render(const eCamera *cam){
-    if (!cycle_)
+    if (!cycle_ || begAlpha_ * endAlpha_ > 0.01 )
         return;
     RenderList(true);
 }
Save to a file, change into source directory, call

Code: Select all

patch -p 0 < saved_patch
compile, hopefully be happy.
User avatar
candy pants
Posts: 4
Joined: Wed Jan 27, 2010 12:48 am

Re: 0.2.8.3 servers cause low fps on 0.2.8.2.1 clients

Post by candy pants »

Thanks Z-Man I like quick and simple mods like this :mrgreen:

I didnt have the patch utility (where do I get it ?) so I searched the gWall.cpp for gPlayerWall::Render and located the code and patched it manually

Recompiled and tested on cheers, it does seem to be a lot better but so far the server hasnt had many players so i'll try it again when the server is almost full to give it a real test

I have not seen any side effects so far

Thanks again.
Post Reply