[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 488: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4787: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4789: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4790: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4791: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3922)
InsideQC Forums • View topic - qbsp3 (Quake2) vertex corruption fix

qbsp3 (Quake2) vertex corruption fix

Discuss programming topics for the various GPL'd game engine sources.

Moderator: InsideQC Admins

qbsp3 (Quake2) vertex corruption fix

Postby Jay Dolan » Fri Oct 14, 2016 12:31 pm

One of our intrepid contributors, tapir, found and fixed a 20 year old flaw in qbsp3, the Quake2 BSP compiler. If you've ever struggled with complex, intricate brushes being mangled by qbsp3, consider adopting this one-line fix:

https://github.com/jdolan/quetoo/pull/241/files

This epsilon value specifies the threshold the compiler uses to determine if a vertex requested by a winding is "close enough," or if a new vertex should be allocated. The original value of 0.5 means that no two vertices can be closer than 0.7 units -- they become merged into one. This leads to hairline cracks in brushes pretty often, especially in curved geometry (arches, spherical volumes, etc).

Changing this epsilon to 0.1 fixed numerous errors in several of our more intricately brushed maps. I highly recommend it for other idTech2 projects still kicking out there.
User avatar
Jay Dolan
 
Posts: 59
Joined: Tue Jan 22, 2008 7:16 pm
Location: Naples, FL

Re: qbsp3 (Quake2) vertex corruption fix

Postby Dr. Shadowborg » Fri Oct 14, 2016 5:34 pm

Nice, I'll give this a try later in my modded jitspoe qbsp3 later as the point epsilon in faces.c was only set to 0.4.

Thanks again! :smile:

edit: whoops it was actually set to 0.04 in my version O_o. Nevertheless, this is something that is essential as q2bsp compile tools desperately need updating.
User avatar
Dr. Shadowborg
InsideQC Staff
 
Posts: 1120
Joined: Sat Oct 16, 2004 3:34 pm

Re: qbsp3 (Quake2) vertex corruption fix

Postby Jay Dolan » Sat Oct 15, 2016 6:36 pm

Hah, I'm not surprised that Jitspoe already fixed this in his tools :)

I read in another thread that you're doing some idTech2 work. We should talk! Maybe our projects could share or combine our efforts. If you're at all interested in that, please find me in #quetoo on Freenode.

Jay
User avatar
Jay Dolan
 
Posts: 59
Joined: Tue Jan 22, 2008 7:16 pm
Location: Naples, FL

Re: qbsp3 (Quake2) vertex corruption fix

Postby qbism » Wed Oct 19, 2016 3:08 am

I've been poking at qbsp3 and the other tools, intending to improve the v220 map compiling for J.A.C.K. The tools also work with standard q2 map format. But I haven't touched it for a while and not enough testing to release.
https://github.com/qbism/quake2-220-tools
Search for "//qb" code comments. Small fixes for linux compiling, path determination, Jitspoe fixes.

The q3rad radiosity changes from Alien Arena tools fix some dark edge and banding problems.
User avatar
qbism
 
Posts: 1236
Joined: Thu Nov 04, 2004 5:51 am

Re: qbsp3 (Quake2) vertex corruption fix

Postby Jay Dolan » Mon Oct 24, 2016 12:06 pm

Cool, right on. I will sift through this in the near future. Thanks for sharing!

Btw, is J.A.C.K. open source or what? I would totally consider providing OS X support for them.. but I can't even find a link to a repository or anything.
User avatar
Jay Dolan
 
Posts: 59
Joined: Tue Jan 22, 2008 7:16 pm
Location: Naples, FL

Re: qbsp3 (Quake2) vertex corruption fix

Postby Dr. Shadowborg » Mon Oct 24, 2016 4:18 pm

Nice, I'll have to check it out too later. :smile:
User avatar
Dr. Shadowborg
InsideQC Staff
 
Posts: 1120
Joined: Sat Oct 16, 2004 3:34 pm

Re: qbsp3 (Quake2) vertex corruption fix

Postby hogsy » Sun Nov 06, 2016 9:01 pm

User avatar
hogsy
 
Posts: 198
Joined: Wed Aug 03, 2011 3:44 pm
Location: UK


Return to Engine Programming

Who is online

Users browsing this forum: No registered users and 1 guest