FitzQuake Mark V - Easy to compile and ...

Discuss programming topics for the various GPL'd game engine sources.
Baker
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: FitzQuake Mark V - Easy to compile and ...

Post by Baker »

mh wrote:I'd also suggest using ((in_mlook.state & 1) || freelook.value) with the freelook cvar defaulting to 1.
In my head too, but I understand how the metslime/aguirRe/tyrann line of thinking goes for actually real Quake backwards compatibility.
And gl_flashblend should now default to 0 - the dynamic light fix works and is fast - even on AMD it runs over 1.5 times faster in simple cases (id1 timedemos).
It is fast and I certainly didn't want your mega-speedup to go to waste.

Still that isn't the original Quake default and I while I have the frosted mini-wheat side, I get the whole-wheat side too. The first person to mentor me with engine modifications was ... Ben Jardrup (aguirRe), haha.

Thanks for the replies. I hope you guys enjoy the scrolling textures and the horde of "how-tos".
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Re: FitzQuake Mark V - Easy to compile and ...

Post by Spike »

gl_flashblend 0 IS the original quake default.
its only glquake's inefficient lightmaps that warrented the creation of the cvar and a default of 1.
software rendering doesn't give you the option. dynamic lights and no flashblends is the only way it'll render.
mh
Posts: 2292
Joined: Sat Jan 12, 2008 1:38 am

Re: FitzQuake Mark V - Easy to compile and ...

Post by mh »

Spike's correct. Again. :twisted:

It's also in keeping with the FitzQuake manifesto of "my primary focus is fixing a lot of the rendering bugs which made GLQuake inferior to the software renderer". Increased performance on it's own isn't a reason to change a default, but putting Quake back the way it originally was is something that's enabled by the increased performance, and that is a reason.
We had the power, we had the space, we had a sense of time and place
We knew the words, we knew the score, we knew what we were fighting for
Baker
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: FitzQuake Mark V - Easy to compile and ...

Post by Baker »

mh wrote:Spike's correct. Again. :twisted:

It's also in keeping with the FitzQuake manifesto of "my primary focus is fixing a lot of the rendering bugs which made GLQuake inferior to the software renderer". Increased performance on it's own isn't a reason to change a default, but putting Quake back the way it originally was is something that's enabled by the increased performance, and that is a reason.
Haha. Ok. :lol: Still I wasn't looking to make any behavioral changes to FitzQuake 0.85. :D
szo wrote:Didn't look deep but here's one bug: you still have svn_main.c:localmodels as [5], whereas you need [6] (an old fitz085 bug: see MAX_MODELS)
I'll have to put that fix into the next one.
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
Baker
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: FitzQuake Mark V - Easy to compile and ...

Post by Baker »

leileilol wrote:I wanted to do scrolling textures (ab)using FTE's scrapped "bulleten" code) for Engoo once in my Nov 2010 featurecreepcodingrush. I never got it to work properly, and how would we define scrolling texture standards? Another prefix to parse in the texture name? like &su8vortex to scroll up 8 texels a sec, &sd3&sr7cheese to scroll down 3 texels and right 7 texels a second, or so...
I've been thinking about that a little and of all things I actually might have a solution. That avoids the question entirely.

Both Travail has a waterfall. It is just a sequenced texture. Warpspasm has a "lava column" that flows down. Again it is just an animated texture.

Here is a possible solution:

1) Look at the WAD texture for sequence 1. +lava0
2) Look at the WAD texture for sequence 2. +lava1
3) Take the first row of the texture 1 and the first row of texture 2. Do a memcmp
4) --- If they are different ...
5) --- sum the value of the bytes
6) ------ if they match
7) -------- shift texture 2 one byte at time (x number of pixels in row)
8) ---------- do memcpy compare ... if match ... we have a strong candidate for a shifting texture (check a couple more random rows with this same shift to validate)
9) ------------- Shift the entire texture 2 (every row) by amount from #8
10) -------------- Do a memory compare of texture1 and shifted texture2
11) ----------------- if they match ...
12) -------------------- Take the amount of the shift and divide by 10 frames per second (R_TextureAnimation frame rate is 10 per second)
13) -------------------------- and that is the shift rate

Now ... at rendering time, don't use R_TextureAnimation for any texture marked above. Instead use the texture 1 all the time by an interpolated shift amount.

This is
A) Backwards compatible to Quake (no special engine required)
B) Requires no special texture names
C) The shift speed is derived from the textures
D) In an engine using the above formula, these texture animations are interpolated as scrolling textures (and rendered smooth as hell)
E) The move amount can be customized by the mapper.
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
metlslime
Posts: 316
Joined: Tue Feb 05, 2008 11:03 pm

Re: FitzQuake Mark V - Easy to compile and ...

Post by metlslime »

the old quake waterfall textures are not literally the same image shifted down... there are multiple layers of waves moving downwards so each image is somewhat unique in addition to the offset.
qbism
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am
Contact:

Re: FitzQuake Mark V - Easy to compile and ...

Post by qbism »

Source in the zip package ATM is not current with latest release. Would like to see the demo rewind code, whenever you get a chance to update :D
Baker
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: FitzQuake Mark V - Easy to compile and ...

Post by Baker »

qbism wrote:Source in the zip package ATM is not current with latest release. Would like to see the demo rewind code, whenever you get a chance to update :D
Grrr. It's true. Re-uploaded. Please re-download.

I always get a certain level of relief uploading the source code, knowing if my laptop were to stop working I have nothing to fear. It was 7:30 am when I uploaded that and it would seem I didn't dot every "i".

[I put far more work into making sure demo rewind worked super-correctly with a nice thick coat of polish --- than maybe is even practical.

Several times I was like "Err? Ok what's the reason you keep making this super-perfect when about no one will care? Oh yeah ... because right now I'm in the zone and next week I'll forget every nuisance of demo rewind and if I don't do it now, it'll never happen." You can even rewind out of intermission :D However, every single change is clearly marked ... although there are many, all secrets happily revealed.]
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
qbism
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am
Contact:

Re: FitzQuake Mark V - Easy to compile and ...

Post by qbism »

Haven't had much time lately, but slowly plugging through the rewind source. Per typical, if I learn anything from the code, it will be by fixing the errors that occur by blindly cutting and pasting. (mh had a phrase for that one time... ) This is so well documented it might work on the first go. The #IFDEF 'method of documentation' enforces total completeness: do it right or the compile will break. #ELSE likewise preserves history of changes.

Demo rewind/fast forward is a magical experience that myself and six other people with thoroughly enjoy. I hope to pass it along to the three people who still like software rendering.
qbism
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am
Contact:

Re: FitzQuake Mark V - Easy to compile and ...

Post by qbism »

Works like a champ even on software engine :D Rewind would probably even work on vanilla Winquake, although may be a few minor required FQ upgrades to bring along.
Baker
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: FitzQuake Mark V - Easy to compile and ...

Post by Baker »

qbism wrote:Works like a champ even on software engine :D Rewind would probably even work on vanilla Winquake, although may be a few minor required FQ upgrades to bring along.
I'll glad you like it. I guess part of my reason for liking demo rewind are some games where you can replay what you've done.

[I've also had the though of competing against your "ghost" for say, best single player time. But I suspect I won't be going there any time soon, just because I have other things on my list.]
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
qbism
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am
Contact:

Re: FitzQuake Mark V - Easy to compile and ...

Post by qbism »

'Demo rewind' , 'record demo any time' , host_timescale, and video capture start/stop work together for a video package that can save a lot of production time. (I need to go back and look at pause_demo also!) I tried capture_start in the middle of demo playback, and the video matched the rewinds and host_timescale frame rate changes made during playback.

Racing ghosts would be fun. It would also be cool to be the ghost and move around freely during demo playback.
Baker
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: FitzQuake Mark V - Easy to compile and ...

Post by Baker »

qbism wrote:'Demo rewind' , 'record demo any time' , host_timescale, and video capture start/stop work together for a video package that can save a lot of production time.
Hehe. Understatement of the year.
(I need to go back and look at pause_demo also!)
Look around for cl.paused in the source. Not that I don't have that marked.
Racing ghosts would be fun.
Absolutely.
It would also be cool to be the ghost and move around freely during demo playback.
That would only work to a very limited extent. Remember, the server uses vis data to determine what you can see so if you wander too far, likely there will no entities visible except torches (because those are static). And that is what gets sent to a client and therefore recorded in a demo.

MH created a way to exclude that ... sv_novis 1 in DirectQ .. so it is possible to make such a demo where that can be done. But in an existing demo, it cannot be relied upon. That is a feature in my engine here.
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
Baker
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Re: FitzQuake Mark V - Easy to compile and ...

Post by Baker »

I did a revision #8 of this (download + src | readme).

Spike might get a smile loading it up typing tool_menu in the console. I looked at his menu wizardry in fteqcc gui :D

Then I did some hilarious stuff with it.

It regenerates/reconstructs when activated (when clicked), can show/hide itself and some other funny tricks I think Spike might find amusing. :D To the casual viewer it just looks like a dumb menu of no real interest. Mainly posting this here to make the code available to Spike should he ever be interested in it since I've benefited so much from his code time after time after time.
The night is young. How else can I annoy the world before sunsrise? 8) Inquisitive minds want to know ! And if they don't -- well like that ever has stopped me before ..
Spike
Posts: 2914
Joined: Fri Nov 05, 2004 3:12 am
Location: UK
Contact:

Re: FitzQuake Mark V - Easy to compile and ...

Post by Spike »

if you're after random windows features, try right-clicking fte on the task bar in windows 7 (either pinned or unpinned).
I'm not sure how I feel about menu bars in quake engines tbh. mostly I just see them as duplicated work/maintainence due to non-windows/fullscreen modes still needing proper game menus.

Baker, remind me some time to show you how to hack my npapi browser plugin to load up your engine instead.
Post Reply