Index | FAQ | Search | Memberlist | Usergroups | Profile | Log in to check your private messages | Log in | Register

GoldQuake : Improved WinQuake Goto page Previous 1, 2, 3, 4 Next

| Inside3d Forums Forum Index -> Engine Programming

View previous topic :: View next topic
Author | Message
--- | ---
Dr. Shadowborg Inside3D Staff Joined: 16 Oct 2004 Posts: 726 |

Posted: Thu Jan 28, 2010 8:11 pm Post subject: |

mh wrote:
The way DirectQ does it is actually by checking for movement of triangles between frame 0 and frame 1; if they move beyond a certain threshold value then those triangles only are not interpolated (other triangles in the model are). It's called from R_DrawViewModel so we can be certain that the model checked actually is a viewmodel (using models beginning with v_ is not valid as even an ID1 model that ain't a viewmodel begins with v_), and is set up so that it only gets called once per model.
Overall a little hacky but it works fine in every test case so far.

Interesting, does this work on models that have multiple variations of muzzleflash? ex. assault guns with a rapid fire frames and grenade launcher frames?
_________________
"Roboto suggests Plasma Bazooka."

Back to top |

mh Joined: 12 Jan 2008 Posts: 909 |

Posted: Thu Jan 28, 2010 8:22 pm Post subject: |

Dr. Shadowborg wrote:

mh wrote:
The way DirectQ does it is actually by checking for movement of triangles between frame 0 and frame 1; if they move beyond a certain threshold value then those triangles only are not interpolated (other triangles in the model are). It's called from R_DrawViewModel so we can be certain that the model checked actually is a viewmodel (using models beginning with v_ is not valid as even an ID1 model that ain't a viewmodel begins with v_), and is set up so that it only gets called once per model.
Overall a little hacky but it works fine in every test case so far.

Interesting, does this work on models that have multiple variations of muzzleflash? ex. assault guns with a rapid fire frames and grenade launcher frames?

It should in principle because it's completely agnostic towards the model. Everything is done on a triangle-by-triangle basis (actually vertex by vertex, but they need to come from triangles), only back-to-front movement is checked (I forgot that bit in my initial explanation), and each result is totally in isolation from every other one.
The gotcha here is that it only checks frame 0 against frame 1, so it's obviously dependent on the data in those two frames being reasonably representative of the full thing. It should be easy enough to extend to check frame 0 vs all frames, accumulate a count of passes and fails, then fudge something based on that count.
Worst case is that it's either going to be no different from if it wasn't done, or stuff with large movement between the frames that's not a muzzleflash won't be interpolated (so no different than GLQuake).
The obvious correct solution is to build the model with interpolation in mind, of course.
_________________
DirectQ Engine - New release 1.8.666a, 9th August 2010
MHQuake Blog (General)
Direct3D 8 Quake Engines

Back to top |

Sajt Joined: 16 Oct 2004 Posts: 1026 |

Posted: Thu Jan 28, 2010 9:44 pm Post subject: |

I've noted down all your requests! By the way, I've named the engine "GoldQuake", which is short for "Good Old Quake". _________________ F. A. Špork, an enlightened nobleman and a great patron of art, had a stately Baroque spa complex built on the banks of the River Labe.

Back to top |

mh Joined: 12 Jan 2008 Posts: 909 |

Posted: Thu Jan 28, 2010 9:50 pm Post subject: |

Excellent! I'm really looking forward to seeing what comes out of this. _________________ DirectQ Engine - New release 1.8.666a, 9th August 2010 MHQuake Blog (General) Direct3D 8 Quake Engines

Back to top |

Sajt Joined: 16 Oct 2004 Posts: 1026 |

Posted: Thu Jan 28, 2010 9:58 pm Post subject: |

And the SVN is now up at http://svn.icculus.org/qshed/trunk/goldquake! _________________ F. A. Špork, an enlightened nobleman and a great patron of art, had a stately Baroque spa complex built on the banks of the River Labe.

Back to top |

Urre Joined: 05 Nov 2004 Posts: 1073 Location: Sweden |

Posted: Thu Jan 28, 2010 11:18 pm Post subject: |

Urre approves. _________________ Look out for Twigboy

Back to top |

Dr. Shadowborg Inside3D Staff Joined: 16 Oct 2004 Posts: 726 |

Posted: Thu Jan 28, 2010 11:57 pm Post subject: |

Groovilicious _________________ "Roboto suggests Plasma Bazooka."

Back to top |

Baker Joined: 14 Mar 2006 Posts: 1538 |

Posted: Fri Jan 29, 2010 1:19 am Post subject: |

Quake hasn't seen the amount engine development going on right now in years. _________________ Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...

Back to top |

metlslime Joined: 05 Feb 2008 Posts: 177 |

Posted: Fri Jan 29, 2010 2:15 am Post subject: |

The EF_MUZZLEFLASH trick is the way Fitzquake does it, actually. Works unless the modder decided not to use that effect (i think one of the Quoth enforcer variants doesn't have a muzzleflash for one of its attacks...)

Back to top |

dreadlorde Joined: 24 Nov 2009 Posts: 86 |

Posted: Fri Jan 29, 2010 3:09 am Post subject: |

Svn? *shudders* _________________

Ken Thompson wrote:
One of my most productive days was throwing away 1000 lines of code.

Get off my lawn!

Back to top |

Baker Joined: 14 Mar 2006 Posts: 1538 |

Posted: Fri Jan 29, 2010 5:47 am Post subject: |

More aguirRe WinQuake edge/surf wrote:
Cvar_SetValue ("r_maxedges", (float)100000); //NUMSTACKEDGES Cvar_SetValue ("r_maxsurfs", (float)100000); //NUMSTACKSURFACES

aguirRe's software wizardry to render areas with a lot of surfaces.
Also: no big deal but in r_drawentities there is a minor bug in original WinQuake. It may be as simple as the fact it draws the viewmodel when it not supposed to. Been a long time.
_________________
Tomorrow Never Dies. I feel this Tomorrow knocking on the door ...

Back to top |

Sajt Joined: 16 Oct 2004 Posts: 1026 |

Posted: Fri Jan 29, 2010 5:54 am Post subject: |

If you think that r_drawentities should not draw viewmodels (and DarkPlaces seems to agree with you), I can do that. _________________ F. A. Špork, an enlightened nobleman and a great patron of art, had a stately Baroque spa complex built on the banks of the River Labe.

Back to top |

Error Inside3D Staff Joined: 05 Nov 2004 Posts: 558 Location: VA, USA

Posted: Fri Jan 29, 2010 7:01 am Post subject: |

you could ask FrikaC if he has the source for FrikQuake. it was a upgraded winquake engine. had frik_file and model alpha, water alpha, etc. _________________ Inside3D : Knowledge Is Power Darkplaces Documentation Wiki

Back to top |

Sajt Joined: 16 Oct 2004 Posts: 1026 |

Posted: Fri Jan 29, 2010 7:02 am Post subject: |

FrikQuake...now there's a name I haven't heard in a while. I don't think I ever got my hands on it. _________________ F. A. Špork, an enlightened nobleman and a great patron of art, had a stately Baroque spa complex built on the banks of the River Labe.

Back to top |

ceriux Joined: 06 Sep 2008 Posts: 968 Location: Florida, USA |

Posted: Fri Jan 29, 2010 7:15 am Post subject: |

i wish i could have. _________________ QuakeDB - Quake ModDB Group

Back to top |

Display posts from previous:

| Inside3d Forums Forum Index -> Engine Programming | All times are GMT Goto page Previous 1, 2, 3, 4 Next
Page 2 of 4

Jump to:

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

Powered by phpBB © 2004 phpBB Group