Re: Multiplayer
#226 posted by szo on 2012/02/22 18:55:08
How does texturescalefactor, which is about drawing the particles and doesn't seem to have anything to do with net traffic, can not be so good with multiplayer?
As for additional features suggested, we can review and possibly merge patches if you submit them to us through our tracker on our project page.
Particles In MP
#227 posted by mh on 2012/02/22 19:36:01
I think a large part of the particles problem is that the MP community likes to run with high values of host_maxfps (in order to get smoother movement). Because particles are primarily fillrate-bound, lots of particles many more times per second will have a disproportionately higher impact on fillrate (esp when squeezing a 64x64 non-mipmapped particle texture into tiny screenspace areas).
Interesting...
#228 posted by metlslime on 2012/02/22 20:25:18
so are mipmaps actually a performance gain rather than just a (subjective) quality gain? I could mipmap the particles pretty easily if that is the case.
#229 posted by JneeraZ on 2012/02/22 20:57:04
I never understood that either. I always thought, logically, it should just be a visual improvement but for some reason it factors into performance as well. Isn't it just interpolating across the texture, regardless of the polygon size on the screen? Why do mips matter for performance?
Re: Multiplayer
#230 posted by LeopolD on 2012/02/22 22:11:34
No, for me it's not about FPS in this case. They just get too big and block view more then necessary. With lots of rockets and explosions it really gets annoying, I tried it. Doesn't matter or may even be a visual enhancement in SP that's why I suggest to have a cvar for it (going from 1 up).
I'd like to see quakespasm to stick to the proquake standards for MP.
Sorry that I didn't make that clear in the original post.
Multiplayer
#231 posted by LeopolD on 2012/02/27 08:46:12
Ok, patches uploaded to project homepage.
Mipmaps
#232 posted by mh on 2012/02/27 18:06:49
This more or less says it: http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0555a/CHDEIJID.html.
Summary: reduced memory bandwidth and improved cache utilization.
#233 posted by JneeraZ on 2012/02/27 18:46:40
Cache efficiency, OK, I guess I can see that ...
Patches
Cheers LeopolD.
Keyboard Layouts
#235 posted by negke on 2012/03/01 11:35:18
Something that I find slightly annoying (in some other engines, too) is that, even though the US layout is used, the console key sticks to the rules of my QWERTZ layout. It has ^ which, along with � and `, doesn't print the symbol right away, but instead requires another key press - space or vowel - because it's supposed to be used for accented letter like in French, e.g. � and �. So in QS, and also Q3/QL, for example, this requires me to press the backspace key twice everytime I open the console in order to delete the ^. More otfen than not I forget to do it and have to retype the whole string of commands because of it.
#236 posted by mh on 2012/03/01 20:51:52
The console thing happens to me in Q4 too.
I'm also getting a case where I hit the toggleconsole key in QuakeSpasm and as soon as I start typing the console goes away - I need to hit it a second time to bring it back again. Definitely a case of a second ` being cached somewhere as Alt-Tabbing away from the engine to something that has a text editor or text box will bring the ` key with it as the first key in the editing area.
A case can be made for clearing all input state when transitioning between values of key_dest.
A minor niggle but having scr_showfps on should automatically force the tileclear areas to be redrawn each frame. This is an old carryover from Fitz. I'm dubious about the value of skipping this draw anyway.
And +mlook should be enabled by default (set in_mlook.state |= 1 on startup should be all that's needed).
#237 posted by spirit on 2012/03/03 20:21:35
There is something weird with autoexec.cfg files. Install http://www.quaddicted.com/reviews/kinn_bastion.html and try to start a coop server eg like this:
./quakespasm -dedicated -game bastion +deathmatch 0 +coop 1 +teamplay 1 +map bastion
> deathmatch
"deathmatch" is "1.000000"
and all the other cvars were ignored too. It works fine if I delete bastion/autoexec.cfg. That file is setting completely unrelated cvars.
Minor issue 2:
If I load a -dedicated it meshes mdl files and searches for .lit files. Seems unnecessary.
#238 posted by necros on 2012/03/03 20:28:42
also weird is that if you remove the autoexec.cfg the console gets spammed with warnings:
...
static light with incorrect attenuation at: '-281.0 1959.0 -316.0'
light with wait != 2 at: '-281.0 1959.0 -316.0'
static light with incorrect attenuation at: '-280.0 1960.0 -252.0'
light with wait != 2 at: '-280.0 1960.0 -252.0'
static light with incorrect attenuation at: ' 71.0 1959.0 -316.0'
light with wait != 2 at: ' 71.0 1959.0 -316.0'
static light with incorrect attenuation at: ' 72.0 1960.0 -252.0'
light with wait != 2 at: ' 72.0 1960.0 -252.0'
static light with incorrect attenuation at: '1176.0 1728.0 -312.0'
light with wait != 2 at: '1176.0 1728.0 -312.0'
static light with incorrect attenuation at: '1216.0 2064.0 -56.0'
light with wait != 2 at: '1216.0 2064.0 -56.0'
PR_AllocStringSlots: realloc'ing for 768 slots
static light with incorrect attenuation at: '-392.0 1856.0 -280.0'
light with wait != 2 at: '-392.0 1856.0 -280.0'
static light with incorrect attenuation at: '-392.0 1856.0 -128.0'
...
i guess this is kinn's progs? but why doesn't that show up with the autoexec?
Necros
#239 posted by Kinn on 2012/03/03 20:40:29
That only happens if you have developer 1 on.
And yes, it's a load of shit in my progs that i should have removed (there's a ton of other stupid crap that goes on in my maps with developer 1 as well tbh).
No idea why the autoexec affects that though...
Autoexec.cfg
#240 posted by szo on 2012/03/03 23:01:11
.. from that bastion mod doesn't have a newline at the end of the file, and quake's original Cmd_InsertText() didn't think about such a case whereas the qw version has it fixed. I fixed it in the svn as of rev.639:
http://quakespasm.svn.sourceforge.net/viewvc/quakespasm?view=revision&revision=639
#241 posted by spirit on 2012/03/03 23:08:22
damn, that's evil. thanks for this amazingly fast fix!
While I Remember ... Gamma On Lose/Gain Focus
#242 posted by Baker on 2012/03/04 22:41:38
On OS X at least, a nicety would be ...
1) .. if Quakespasm is in a window (not fullscreen)
2) And I switch to another application
3) Quakespasm should restore the system normal gamma on "lose focus" and then restore the game normal gamma setting on "gain focus".
#243 posted by necros on 2012/03/06 21:11:39
Quakespasm doesn't seem to flush sound names between maps.
If you load up one map with many sounds and then load up another map with many sounds, the engine will crash with "S_FindName: out of sfx_t"
this was inherited from FQ085.
#244 posted by Spirit on 2012/03/07 10:44:02
make install does
cp quakespasm /usr/local/games/quake
Shouldn't that be cp quakespasm /usr/local/games/quake/ instead?
#245 posted by Spirit on 2012/03/07 10:59:52
#246 posted by Spirit on 2012/03/07 11:33:57
Anyways, SOMEONE just made an Archlinux AUR package https://aur.archlinux.org/packages.php?ID=57351
Probably really ugly.
Sound name flush, DESTDIR/trailing slash and mlook enabled by default would be good, but not much time at the moment. Patches ?
I'm curious about LeopolD multiplayer stuff too. (The format is a little wrong though. Individual file patches are normally concatenated together to form meaningful groups, but they'll get looked at sometime).
#248 posted by Spirit on 2012/03/07 12:26:34
I will give mlook, always run (!) and the trailing slash a try.
#249 posted by Spirit on 2012/03/07 13:28:31
always run and trailing slash were simple and clean. http://sourceforge.net/tracker/?atid=1285038&group_id=304914&func=browse
But mlook seems to be evil. I also thought about making some better key defaults (right mouse to jump for example) so newbies get a modern keymap but then realised that this is config land. I gave up.
Mlook
#250 posted by mh on 2012/03/07 13:34:58
What I did was add a cvar called freelook, then every check just becomes "if ((in_mlook.state & 1) || freelook.value)". Reason for this cvar name is that precedent is set in both Q2 and Q3A so it's expected behaviour for players.
|