|
From: Kevin M. <sub...@us...> - 2002-02-15 21:48:18
|
subatomic 2002/02/15 13:48:16 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
commented out mat/vec stuff until they work again.
Revision Changes Path
1.4 +5 -4 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.3&r2=1.4&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-02-25 17:48:49
|
subatomic 2002/02/25 09:48:47 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
commented out stuff that sucks...
Revision Changes Path
1.7 +102 -26 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.6&r2=1.7&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-02-28 14:24:14
|
subatomic 2002/02/28 06:24:12 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
updated xform(quat, vec) to use conj instead of invert. faster, and it works.
found this equation in game programming gems #1.
xform(quat, vec) and operator*(quat,vec) are faster by about 10%
Revision Changes Path
1.8 +8 -4 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.7&r2=1.8&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-02-28 15:47:16
|
subatomic 2002/02/28 07:47:12 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
increased performance of xform(q,v) and operator*(q,v) by 20%
(a total of 28% since yesterday :)
I did this by expanding the 5 function calls, doing ret val opt in operator*...
Revision Changes Path
1.9 +49 -14 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.8&r2=1.9&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-02-28 16:47:16
|
subatomic 2002/02/28 08:47:15 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
added comments about perf increases under debug vs opt. it is better under opt.
Revision Changes Path
1.10 +8 -4 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.9&r2=1.10&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-02-28 16:48:58
|
subatomic 2002/02/28 08:48:58 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
notes about xform(quat,vec) and compiling with gcc 2.96 opt3....
xform: faster by 35% than slow/easy method in gcc 2.96 opt3 mode (78% for
doubles)
operator*: faster by 35% than slow/easy method in gcc 2.96 opt3 mode (78%
for doubles)
Revision Changes Path
1.11 +2 -2 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.10&r2=1.11&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-03-08 17:27:05
|
subatomic 2002/03/08 09:27:04 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
operator* is written now (but not yet tested for correctness)
for the following:
mat(m, k) * vec(k-1)
mat(m, k) * point(k-1)
Revision Changes Path
1.12 +41 -37 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.11&r2=1.12&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-03-09 04:10:55
|
subatomic 2002/03/08 20:07:12 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
xforms between mat vec and mat point work now (tested)
Revision Changes Path
1.13 +141 -75 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.12&r2=1.13&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-03-09 19:50:47
|
subatomic 2002/03/09 11:50:46 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
the last commit of this file accidently checked in something I was trying.
because it is faster, use conj instead of invert in xform(quat,vec) and
operator*(quat,vec). I've run tests, and using conj or invert both yield
the same results (cool), so use the faster one.
somehow I didn't trust my previous commit where I said to use conj,
but I've retested it, and I was right. Now there is a test in the
test suite for it (to do the raw calculation of quat*vec using conj or
invert comparing if they equal, which they should.)
Revision Changes Path
1.14 +22 -37 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.13&r2=1.14&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-03-09 22:54:52
|
subatomic 2002/03/09 14:54:50 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
for both pnt and vec, divide the W param from the other elts, if it is
non-zero... this adds a yukky conditional... :(
also, this whole mat44 * pnt3 is a mess, and seems like it might be less
optimal than mat44 * pnt4. in any case it is screwing up any chances for
having a mat34 * pnt4, that returns the correct value of pnt3
pnt3 = mat34 * pnt4 is correct matrix math, right?
well, as it is written now, we can only do:
pnt4 = mat34 * pnt4 (not correct matrix math)
cut currently xform doesn't support this... :( so those tests have been
commented out. this is probably because I don't know how to code it using
the generic methods I've been doing so far...
on second thought, because it is a transform, maybe we don't _want_ it to
change the size of the Vec or Pnt??? in that case, we may be good...
any help?
Revision Changes Path
1.15 +35 -10 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.14&r2=1.15&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-03-09 23:17:54
|
subatomic 2002/03/09 15:17:54 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
fixed a compile bug
Revision Changes Path
1.16 +3 -3 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.15&r2=1.16&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-03-10 19:05:00
|
subatomic 2002/03/10 11:04:59 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
make precondition on xform that quat needs to be normalized (since we're
using conj instead of invert). this makes xform only work with rotation
quats... not sure if this is good, but I can't think of a place in 3D VR
or games that would need a non rotation quat to xform a vec... this may
bite someone later... maybe we need two xforms? one fast, and one slow?
this reminds me of how we keep state in the matrix to select the fastest
operation... might be needed for quat...
Revision Changes Path
1.17 +17 -29 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.16&r2=1.17&diff_format=l
|
|
From: Ben S. <non...@us...> - 2002-03-11 21:24:38
|
nonchocoboy 2002/03/11 12:31:34 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
more warnings
Revision Changes Path
1.18 +12 -12 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.17&r2=1.18&diff_format=l
|
|
From: Ben S. <non...@us...> - 2002-03-18 22:48:39
|
nonchocoboy 2002/03/18 14:48:37 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
Added missing include.
Revision Changes Path
1.20 +3 -2 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.19&r2=1.20&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-05-05 20:54:54
|
subatomic 2002/05/05 13:54:54 PDT
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
fix for xforms to compile (was ambiguous before) under vc7.net
Revision Changes Path
1.22 +5 -5 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.21&r2=1.22&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2002-06-05 23:51:22
|
subatomic 2002/06/05 16:51:21 PDT
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
implement xform and operator* for Points also (actually for VecBase).
discussion...
previously quat xform was only implemented for Vec.
a vecbase xform allows xform to be used for point/quat and vec/quat
giving equal functionality to the matrix xform funcs...
Revision Changes Path
1.26 +5 -5 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.25&r2=1.26&diff_format=l
|
|
From: Justin H. <ja...@us...> - 2003-03-10 16:02:52
|
jahare 2003/03/10 08:02:47 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
Added in the capability to perform full matrix transforms on points using
the *= operator.
point *= matrix;
Revision Changes Path
1.30 +47 -2 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.29&r2=1.30&diff_format=l
|
|
From: Justin H. <ja...@us...> - 2003-03-10 19:22:03
|
jahare 2003/03/10 11:22:02 PST
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
Added a *= operator for transforming VecBase objects by a quaternion.
point *= quat;
vector *= quat;
Revision Changes Path
1.31 +17 -2 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.30&r2=1.31&diff_format=l
|
|
From: Patrick H. <pat...@us...> - 2003-04-24 19:08:49
|
patrickh 2003/04/24 12:08:48 PDT
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
Unwind a circular #include problem. Generate.h includes this file.
Revision Changes Path
1.32 +2 -3 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.31&r2=1.32&diff_format=l
|
|
From: Kevin M. <sub...@us...> - 2003-05-10 21:18:39
|
subatomic 2003/05/10 14:18:38 PDT
Modified files:
modules/GMTL/gmtl Xforms.h
Log:
added xform * and *= for Matrix/lineseg and ray
Revision Changes Path
1.33 +102 -4 GGT/modules/GMTL/gmtl/Xforms.h
http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/ggt/GGT/modules/GMTL/gmtl/Xforms.h.diff?r1=1.32&r2=1.33&diff_format=l
|