116 Commits

Author SHA1 Message Date
Joseph Jezak
35462205aa MATH: Fix indentation for matrix4. 2014-06-23 09:04:07 -04:00
Joni Vähämäki
350d916670 MATH: Make inverseTranslate and inverseRotate methods of Matrix4 const. 2014-06-17 03:47:50 +03:00
Joel Teichroeb
6ad4b70d84 Merge pull request #926 from Akz-/pathfind-fix
GRIM/EMI: Pathfinding fixes
2014-06-16 10:54:01 -07:00
Joni Vähämäki
b5cdd1240f EMI: Only draw models for actors inside the view frustum.
This adds math classes for doing frustum culling in software. These could be used for optimizing performance in many other places as well. For example, if an actor is outside the view frustum, it may not be necessary to do expensive keyframe animation and vertex skinning calculations for that actor.
2014-06-16 15:42:18 +03:00
Joni Vähämäki
db5a91bcb1 MATH: Return false in intersectLine2d if lines do not intersect. 2014-06-15 13:32:15 +03:00
Joni Vähämäki
b6b7b51528 MATH: More efficient matrix multiplication implementation for 3x3 and 4x4 matrix specializations. 2014-06-15 03:13:40 +03:00
Joni Vähämäki
47aa1ace87 EMI: Added support for animation priorities and implemented blending. 2014-05-31 02:50:06 +03:00
Dries Harnie
dbf3b2e5f8 JANITORIAL: Fix missing reference in Math::{Line2d,Angle} 2014-04-21 14:22:01 +02:00
Pawel Kolodziejski
8759900b6a ALL: synced with ScummVM 2014-04-05 18:18:42 +02:00
Einar Johan Trøan Sømåen
adc0067bf7 MATH: Remove duplicated deg/rad-conversions, replacing them by common/math.h-functionality 2014-02-20 12:22:43 +01:00
Einar Johan Trøan Sømåen
207d7c54d7 MATH: Return Line3d& from it's operator= 2014-01-07 18:29:34 +01:00
Giulio Camuffo
1d543e5e1d MATH: Document Matrix{3,4}::buildFromTargetDir. 2013-01-13 12:09:21 +01:00
Giulio Camuffo
d2f4bf83db MATH: Add a stream debug operator for Line2d. 2013-01-09 18:42:23 +01:00
Giulio Camuffo
2936a82fbf MATH: Move the debug '<<' operators to the Math namespace. 2013-01-09 18:41:50 +01:00
Giulio Camuffo
00a42f3d85 MATH: Fix Line2d intersection functions. Fix #682 2013-01-09 18:27:07 +01:00
Paweł Kołodziejski
175620b62a ALL: change license headers from LGPL to GPL, and few updates 2012-12-19 23:15:43 +01:00
Dries Harnie
8bb8163e29 MATH: Add operator * for Math::Quaternion 2012-11-13 21:51:36 +01:00
Dries Harnie
6334cc0290 EMI: Gfx::startActorDraw() accepts a quaternion 2012-11-13 21:51:11 +01:00
Dries Harnie
17207bc879 EMI: Code style fix 2012-07-03 20:06:29 +02:00
Dries Harnie
9541c89859 MATH: Add fromEuler() to Math::Quaternion 2012-07-03 00:20:38 +02:00
Dries Harnie
0b5a4b0cd1 MATH: Add transpose() to Math::Matrix4 2012-07-03 00:20:36 +02:00
Thomas Allen
981189fedf GRIM: moved lookAtMatrix() to be a member function of Matrix3 (and Matrix4) 2012-03-21 11:32:23 +01:00
Thomas Allen
a045e2177b GRIM: add check for null pointers in getPitchYawRoll 2012-03-21 11:32:23 +01:00
Thomas Allen
8484d7870e GRIM: checked, cleaned, and moved Euler calculations to rotation3d.h 2012-03-21 11:32:23 +01:00
Thomas Allen
67e7a05119 GRIM: relocating and cleaning invertAffineOrthonormal 2012-03-21 11:32:22 +01:00
Thomas Allen
3eb771e206 MATH: Moved angle clamp function to angle.cpp 2012-03-21 11:32:20 +01:00
Giulio Camuffo
8d57a8b6d4 GRIM: Fix wrong ')' placement. Fix #557 2012-03-08 14:52:14 +01:00
Dries Harnie
c3237e129e EMI: use X-Z in Vector3d::intersectLine2d 2012-02-18 22:41:02 +01:00
Giulio Camuffo
3344b3c756 GRIM: Setup the lights from the closest to the farthest to the actor position.
This way if OpenGL can't handle all the set lights it will use the most
important ones. Fix #481
2012-02-10 14:57:58 +01:00
Einar Johan T. Sømåen
f0db69c8ff MATH: Correct a critical typo in the slerp-function. 2012-02-01 12:46:05 +01:00
Einar Johan T. Sømåen
d4413d7f58 MATH: Add in the inverse functions from Portalib3d 2012-01-31 17:00:50 +01:00
Einar Johan T. Sømåen
ee310dd00b MATH: Fix toMatrix for quaternions. 2012-01-30 23:48:14 +01:00
Einar Johan T. Sømåen
1833ac33a1 MATH: Fix the slerp-function 2012-01-30 23:33:03 +01:00
Giulio Camuffo
2148c729f1 MATH: Unify VectorNd::readFromStream. 2012-01-30 21:57:06 +01:00
Giulio Camuffo
87107bc022 MATH: Remove Vector4d::scalarProduct, since that's just Vector::dotProduct. 2012-01-30 21:45:22 +01:00
Einar Johan T. Sømåen
74047546a0 MATH: Add stream-reading to the vector-classes 2012-01-30 21:04:08 +01:00
Pawel Kolodziejski
626e91f23a rename -> ResidualVM 2012-01-06 23:15:48 +01:00
Einar Johan T. Sømåen
45a12eb683 MATH: Fix Vector4d on msvc, thanks to klusark 2011-12-30 19:19:45 +01:00
jj
ab58dd267b MATH: Documented rotation3d.h rotation conventions. 2011-12-30 16:54:27 +01:00
Einar Johan T. Sømåen
b863569294 MATH: Add some quaternion-math from plib. 2011-12-30 14:49:01 +01:00
Einar Johan T. Sømåen
6da0bcb681 MATH: Add Vector4D 2011-12-30 12:18:30 +01:00
Giulio Camuffo
062cf9292f MATH: Use a one-dimensional array for the matrix data. Should fix #414 2011-11-20 15:17:41 +01:00
Einar Johan T. Sømåen
f56a340193 MATH: Fix Matrix-compile on clang 2011-11-11 00:18:25 +01:00
Giulio Camuffo
e982124e05 MATH: Fix build on certain compilers. 2011-11-04 21:07:07 +01:00
Giulio Camuffo
1e86d51b1e MATH: Minor Matrix optimisations. 2011-11-04 15:25:22 +01:00
Giulio Camuffo
46a8d461e0 GRIM: Fix bounding box calculation. Fix #391 2011-10-18 17:43:35 +02:00
Giulio Camuffo
f0967439af MATH: Don't normalize zero vectors. Fix #387 2011-10-09 19:14:38 +02:00
Giulio Camuffo
3534129850 MATH: New function to calculate the distance of a point to a rect. 2011-10-04 21:37:39 +02:00
Giulio Camuffo
ba10e07422 MATH: Normalize the angle only if/when requested. 2011-09-30 17:42:26 +02:00
Giulio Camuffo
846afc03a8 MATH: Adapt the angle to the new range. 2011-09-29 22:14:41 +02:00