Commit Graph

37 Commits

Author SHA1 Message Date
rambetter f32b2b3712 This is in branch Rambetter-math-fix-experiments.
- Adding a bunch of *Accu() functions:
    * SnapWeldVectorAccu() in brush.c (needs major proofread).
    * FixWindingAccu() in brush.c (needs major proofread).
    * CopyWindingAccuToNormal()	in polylib.c.
    * VectorLengthAccu() in mathlib.c.
    * Q_rintAccu() in mathlib.h.
    * FreeWindingAccu() declaration in polylib.h (was missing).

- Adding a #ifdef's for EXPERIMENTAL_HIGH_PRECISION_MATH_Q3MAP2_FIXES.
It's turned on now.  Testing brush winding formation.

This code compiles on Linux, I have no idea if it works.  About to test	a
little,	then going to bed.


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/Rambetter-math-fix-experiments@384 8a3a26a2-13c4-0310-b231-cf6edde360e5
2010-12-30 11:57:13 +00:00
rambetter adf336fec1 This is in branch Rambetter-math-fix-experiments.
- Added	lengthy	comment	to describe the	choice of smallestEpsilonAllowed
in polylib.c for the new 64 bit chopping code. 	I think	that this comment
will allow us to make sure that	we have	the correct choice of epsilon.

- Tweaked comments around VEC_SMALLEST_EPSILON_AROUND_ONE and
VEC_ACCU_SMALLEST_EPSILON_AROUND_ONE (actually renamed them).


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/Rambetter-math-fix-experiments@383 8a3a26a2-13c4-0310-b231-cf6edde360e5
2010-12-30 09:47:01 +00:00
rambetter 56e74492bc This is in branch Rambetter-math-fix-experiments.
- Adding new function ChopWindingInPlaceAccu() in polylib.c.  This function is
just like ChopWindingInPlace() except that the winding input has the higher
vect_accu_t resolution.  I actually did a deep massage of this code as well
(went over it with a fine-toothed comb).  I still need to examine it at least
one more time when I'm fresh, and fix an issue related to choosing the value
for maxpts.

- In mathlib.h, defining VEC_SMALLEST_EPSILON and VEC_ACCU_SMALLEST_EPSILON
constants that will help determine suitable epsilons to use for certain
operations.  Comments are provided detailing what these constants do.

- In mathlib.h, defining DotProductAccu() and VectorCopyAccu().

- Small comment in brush.c that has concerns about a certain use of
BaseWindingForPlane() in WriteBSPBrushMap().

State of this code is: compiles on Linux.  May not compile on Windows.  Not
tested (new functionality not used yet in any real code, only functions exist).


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/Rambetter-math-fix-experiments@382 8a3a26a2-13c4-0310-b231-cf6edde360e5
2010-12-30 08:26:49 +00:00
rambetter a28d27640c This is in branch Rambetter-math-fix-experiments.
- Adding new function BaseWindingForPlaneAccu() in polylib.c.  Analogous to
original BaseWindingForPlane() only that the return value is a
winding_accu_t (new type w/ double precision). 	This function is not being
used yet.

- Restoring the original BaseWindingForPlane() function (pre-r371).  Will keep
this as a reference.  What I did exactly:
  * Renamed BaseWindingForPlane() to BaseWindingForPlaneAccu(), changed stuff.
  * Renamed _BaseWindingForPlane_orig_() to BaseWindingForPlane(), preserved.

- Adding things like vec_accu_t, vec3_accu_t, VectorSubtractAccu(),
VectorAddAccu(), VectorScaleAccu(), CrossProductAccu(), and
winding_accu_t.	 Also AllocWindingAccu() and FreeWindingAccu().

- Removing the recently	added VectorSetLength() function because it is no
longer needed.

State of this code is: compiles, not tested (new functionality not used	yet).


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/Rambetter-math-fix-experiments@381 8a3a26a2-13c4-0310-b231-cf6edde360e5
2010-12-30 01:25:37 +00:00
rambetter f62ab305fc Undoing revision 377 (reverting just those files modified by that
commit).  I have disovered the fundamental problem to the math error problems,
and although this commit (r377) is "correct", it fails to address the
fundamental problem.  Therefore, I'd rather leave the code in a state that
has the exact same behavior as before until I get a chance to address the
fundamental issue.


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@379 8a3a26a2-13c4-0310-b231-cf6edde360e5
2010-12-29 09:00:47 +00:00
rambetter f36b40ae62 Continuing work on BaseWindingForPlane() in polylib.c. In fact I'm pursuing
the approach that was committed in r375 (but was then backed out).  I can't
believe my eyes, but I seem to be getting 0.000000% error in some of my
regression tests.  The trick is to scale by a power of 2 and never do a
VectorNormalize().


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@377 8a3a26a2-13c4-0310-b231-cf6edde360e5
2010-12-29 04:32:35 +00:00
rambetter c5449b8cc5 Rewriting BaseWindingForPlane() in polylib.c from the ground up. The behavior
is totally unchanged, and I verified this by running extensive tests.  The
only difference is that the math precision is much much better now.
Performance should be better as well (but that is not tested).
This is a major milestone because it fixes two regression tests:
disappearing_sliver2 and sparkly_seam.
Improvements to math precision is ongoing and more improvements can probably
be made even after this patch.
I will update the README.txt files in the regression tests in a separate
commit.  This commit only includes the actual fixed code.


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@371 8a3a26a2-13c4-0310-b231-cf6edde360e5
2010-12-28 10:02:11 +00:00
rambetter f7764a84b2 Fixing "disappearing_sliver" bug.
A regression test is included.
This is a bug in q3map2.  Please read
regression_tests/q3map2/disappearing_sliver/README.txt for more info.


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@363 8a3a26a2-13c4-0310-b231-cf6edde360e5
2010-12-27 08:08:00 +00:00
TTimo 0152053e52 fix Linux compile from mhash stuff
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@339 8a3a26a2-13c4-0310-b231-cf6edde360e5
2010-11-26 06:46:05 +00:00
TTimo e393e112f4 compiles again on win32, trashed mhash
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@338 8a3a26a2-13c4-0310-b231-cf6edde360e5
2010-11-26 05:59:17 +00:00
TTimo cc4e44e31a merge branch work back into trunk
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@319 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-09-01 17:34:10 +00:00
TTimo 2def0428da ABToSVK commit
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant.ab@308 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-08-24 03:20:51 +00:00
mattn 0e5c89d2c0 * fixed a warning and an error in the overflow check in l_net
* const stuff for GetNextChainItem (bobtoolz)


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@303 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-07-25 19:14:48 +00:00
Forest Hale 88cea027e6 ported over the 1.5 branch version of q3map2 which is newer
made Visual Studio files work in VS2005 Express
fixed a ton of warnings in VS2005 Express
fixed some compile problems on OpenSUSE 11.0


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@302 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-07-25 07:31:37 +00:00
mattn 04c7eb042d * reactivated WXY_Print function to generate screenshots from the xy window
* removed all the references to the old bugzilla links (deadlinks - no longer useful)

git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@289 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-06-27 15:09:36 +00:00
mattn 6d10428141 * fixed warning
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@277 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-06-26 11:40:00 +00:00
mattn 2aa43067fb * fixed warnings
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@276 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-06-26 11:39:44 +00:00
mattn c0f477bd04 * fixed warnings
* removed www dir (dead links, almost none of the posted links are available - correct me when i'm wrong, then we can revert this remove)


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@275 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-06-26 11:21:13 +00:00
mattn ec65cc975d * fixed warnings and fixed clips counter
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@274 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-06-26 11:20:01 +00:00
mattn 5efe3f31db * removed config.mk (not used)
* fixed some warnings in synapse.cpp (const stuff, unused variable)


git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/trunk@263 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-06-26 06:57:21 +00:00
TTimo 0d8ed0a523 error handling in watchbsp (contributed by ilm)
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@250 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-04-14 20:15:34 +00:00
TTimo 3e38eae740 fix and improve the game selection and game configuration dialogs - added dir dialog, using GtkComboBox (added support for GtkComboBox too)
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@248 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-04-12 23:01:39 +00:00
mattn 3a05e084dd * implemented FindFiles, NextFile and ~FindFiles for linux
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@228 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-03-18 19:31:49 +00:00
TTimo 94199c49dc fix windows compile, it's possible the linux build broke and will need misc tweaks. you need a new GtkR-1.6-deps.zip
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@227 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-03-18 17:47:38 +00:00
mattn 8999fcc3a7 * improved quake2 support by added a quake2 boolean to the CGameDescription class - this allows us to even use the quake2 surfaceplugin function (like e.g. SetFaceTexdef_Q2) without a hardcoded game name of q2.game or heretic2.game
* added support for relative md2 skin paths
* fixed wrong _pico_printf call

git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@203 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-03-04 17:33:05 +00:00
TTimo 051578cb3b added file copy tree for the game packs - lists supported games
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@197 8a3a26a2-13c4-0310-b231-cf6edde360e5
2008-02-25 04:17:23 +00:00
TTimo 0975f4af11 propagate from internal tree
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@191 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-11-05 13:28:33 +00:00
TTimo 64fe6940f0 eol
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@190 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-11-04 04:09:22 +00:00
TTimo 2b5ef55c7c more eol-style
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant.ab@187 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-11-04 03:57:33 +00:00
TTimo b1bfb19ecd more eol-style
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant.ab@186 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-11-04 03:53:53 +00:00
TTimo 33efc90892 more eol-style
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@185 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-11-04 03:51:54 +00:00
TTimo ab3a99dbbe eol style
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant.ab@184 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-11-04 03:47:06 +00:00
TTimo 9998050654 set eol-style
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@183 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-11-04 03:34:51 +00:00
TTimo 287cde2548 compiles on OSX (10.4.10 Intel)
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@181 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-11-03 15:00:38 +00:00
TTimo 4189d27b34 some updates to the Linux build system - obtained a core binary and all required modules
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@180 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-10-24 04:00:48 +00:00
TTimo ff588a439f get the basics of a new scons build system together
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@179 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-09-30 19:39:29 +00:00
TTimo 8037810110 transfer from internal tree r5311 branches/1.4-gpl
git-svn-id: svn://svn.icculus.org/gtkradiant/GtkRadiant/branches/ZeroRadiant@177 8a3a26a2-13c4-0310-b231-cf6edde360e5
2007-09-12 18:54:28 +00:00