Forum

TWIG release

Discuss anything not covered by any of the other categories.

Moderator: InsideQC Admins

TWIG release

Postby Urre » Wed Jan 07, 2009 5:47 pm

http://urre.quakedev.com/

Enjoy! Feel free to ask questions here.

EDIT: Yay news post!
I was once a Quake modder
User avatar
Urre
 
Posts: 1109
Joined: Fri Nov 05, 2004 2:36 am
Location: Moon

Postby Downsider » Wed Jan 07, 2009 9:35 pm

Epic! What exactly is in DarkPlaces that's necessary for this to work, as opposed to working in your standard GLQuake?
User avatar
Downsider
 
Posts: 621
Joined: Tue Sep 16, 2008 1:35 am

Postby Urre » Wed Jan 07, 2009 11:11 pm

Thing is, I've worked with DP and only DP for so many years now, that I've grown very accustomed to all its differences compared to GLQuake, and probably take a lot for granted to such extents that I don't even think about it, but I'll try and list as many things as I can think of which are required for this lib:

New builtins:

File read/write
Tracebox
Vectoangles2
String manipulation
Parsing client commands

Other features:

Collisions on rotated BSP models
On-the-fly precaching
High-precision origin and angles for entities
Increased entity limits
(optional but recommended) Q3BSP support
EF_NODRAW
EF_NOMODELFLAGS
set and seta console commands

Undocumented quirks:

Traces starting in solid are allowed to trace out of the solid

And like I said, I'm more than likely forgetting a lot of stuff. Vectoangles2 could be written in QC, it used to be so, but once LH implemented the builtin I used that instead.
I was once a Quake modder
User avatar
Urre
 
Posts: 1109
Joined: Fri Nov 05, 2004 2:36 am
Location: Moon

Postby Downsider » Thu Jan 08, 2009 2:12 am

Thank you.
User avatar
Downsider
 
Posts: 621
Joined: Tue Sep 16, 2008 1:35 am

Postby Baker » Thu Jan 08, 2009 2:14 am

I'm detached enough from the physics side of Quake since I almost exclusively work on engine coding.

But rather than not comment .. because I can't really think of anything smart to say .. I think that is some impressive work that I admit I don't understand.

But it sure reminds me of some physics library vids on YouTube :D
User avatar
Baker
 
Posts: 3666
Joined: Tue Mar 14, 2006 5:15 am

Postby MauveBib » Thu Jan 08, 2009 12:44 pm

Fantastic work, obviously.

Which there are still some issues (stacking crates for example), this is certainly realy to use for some tasks straight away, such as grenade physics and such.
Apathy Now!
User avatar
MauveBib
 
Posts: 634
Joined: Thu Nov 04, 2004 1:22 am

Postby Urre » Thu Jan 08, 2009 6:09 pm

It'll probably never support stacking beyond what it already does, which is, if the box on top is smaller than the one below, it'll work. It's just very hard stuff, even if it wasn't written in QuakeC.
I was once a Quake modder
User avatar
Urre
 
Posts: 1109
Joined: Fri Nov 05, 2004 2:36 am
Location: Moon

Postby Wazat » Fri Jan 09, 2009 5:59 am

Urre: That is damn cool. I can imagine making all ammo boxes work like this, so that firing a rocket into a room will launch them and send them tumbling down the hall; or players can pick up and carry an ammo/health box with them for later. :D

BTW, that youtube video needs some major brightness tweaks. In the third scene I couldn't even tell what was happening.
When my computer inevitably explodes and kills me, my cat inherits everything I own. He may be the only one capable of continuing my work.
Wazat
 
Posts: 771
Joined: Fri Oct 15, 2004 9:50 pm
Location: Middle 'o the desert, USA

Postby Irritant » Fri Jan 09, 2009 11:15 pm

Very very impressive Urre, is there any chance of this ever being ported to a dll so that all quake engines could use?
http://red.planetarena.org - Alien Arena and the CRX engine
Irritant
 
Posts: 250
Joined: Mon May 19, 2008 2:54 pm
Location: Maryland

Postby Electro » Sat Jan 10, 2009 7:47 am

Other physics libraries are already dll's.
This was designed rather specifically to be a physics solution for Quake(1) as there isn't really anything else done for it before, ever.
Benjamin Darling
http://www.bendarling.net/

Reflex - In development competitive arena fps combining modern tech with the speed, precision and freedom of 90's shooters.
http://www.reflexfps.net/
Electro
 
Posts: 312
Joined: Wed Dec 29, 2004 11:25 pm
Location: Brisbane, Australia

Postby CocoT » Sat Jan 10, 2009 4:01 pm

Awesome stuff! I can't wait to try it out when I'll be back in the States :)
Neurotic Conversions - New location: Update your bookmarks!
User avatar
CocoT
 
Posts: 695
Joined: Tue Dec 14, 2004 5:39 pm
Location: Belly-Gum

Postby Urre » Sat Jan 10, 2009 4:52 pm

I'll probably write physics engines in other languages in the future as I find it a very interesting subject, but this is written in QC, and will stay that way. I would however like to see other engines support the same features and builtins required for this to run, ofcourse. If anyone attempts it, and doesn't get it working after adding the ones I've listed, feel free to poke me and we'll work it out somehow!
I was once a Quake modder
User avatar
Urre
 
Posts: 1109
Joined: Fri Nov 05, 2004 2:36 am
Location: Moon

Postby avirox » Mon Jan 12, 2009 12:47 am

This is a phenomenal release! Great work, Urre!

I wonder how it would work over the net. I've been wanting to put some realistic physics into Quake-Life - especially for pushable objects and debris (2 things which HL1 is rather good for). Keep up the great work!
avirox
 
Posts: 137
Joined: Wed Aug 16, 2006 3:25 pm

Postby MauveBib » Mon Jan 12, 2009 8:05 am

avirox wrote:I wonder how it would work over the net.


DP's netcode doesn't send invisible entities to clients, so only 1 entity per physics object will be sent, i.e. the box entity itself.

In other words, there's no net slowdown.
Apathy Now!
User avatar
MauveBib
 
Posts: 634
Joined: Thu Nov 04, 2004 1:22 am

Postby Urre » Mon Jan 12, 2009 3:47 pm

Mauve said it.

What you could do beyond that though, is make the visible entity (the "static" entity as it is called in the lib) use EF_LOWPRECISION, which would reduce the net load even more, as it's not part of the physics calculations in any way, it won't affect their performance or precision. The difference between using EF_LOWPRECISION and not using it is generally speaking not visible for the human eye, unless you apply it on the client, which might give slightly stuttering movement or something. For objects you spot in the gameworld it works great.
I was once a Quake modder
User avatar
Urre
 
Posts: 1109
Joined: Fri Nov 05, 2004 2:36 am
Location: Moon

Next

Return to General Discussion

Who is online

Users browsing this forum: No registered users and 1 guest