131 Commits

Author SHA1 Message Date
Bastien Bouclet
14bacc9496 MATH: Fix typo in gluMathUnProject
Fixes the right click mode in Myst 3
2014-08-24 08:37:35 +02:00
Pawel Kolodziejski
e539b27af8 MATH: improve type support for viewport argument 2014-08-15 12:25:48 +02:00
Pawel Kolodziejski
9ad08415ce MATH: no need do cast anymore in Matrix4::inverse 2014-07-12 07:08:29 +02:00
Joel Teichroeb
cb6a58e01e MATH: Make Matrix4::inverse not const as it changes data 2014-07-10 20:23:06 -07:00
Pawel Kolodziejski
46a91377d8 MATH: added few GLU helpers 2014-07-10 07:27:18 +02:00
Pawel Kolodziejski
5fed6150a0 JANITORIAL: formatting headers 2014-07-08 23:10:17 +02:00
Joni Vähämäki
23a99a9f2b EMI: Implement head limits. 2014-07-02 22:43:58 +03:00
Joseph Jezak
d2d23738a5 MATH: Replace Euler Angle Implementation in Quaternions with Rotation3D based method. 2014-07-01 16:18:12 -04:00
Joseph Jezak
c1b5adf348 MATH: Add new quaternion capability. 2014-07-01 16:18:08 -04:00
Joseph Jezak
f57768ea28 MATH: Add comments and rename getQuaternion. 2014-07-01 11:27:08 -04:00
Joseph Jezak
78772c999b MATH: Rename getVector3d and add comments for the Vector3d class. 2014-07-01 11:27:02 -04:00
Joel Teichroeb
abfd775d51 MATH: Cast M_PI to a float to fix an MSVC warning 2014-06-25 13:45:11 -07:00
Joseph Jezak
b4e730beaa MATH: Keep position when building rotation. 2014-06-24 11:36:35 -04:00
Joseph Jezak
231a98056f MATH: Fix gimbal lock for ZXY. 2014-06-24 11:36:12 -04:00
Joseph Jezak
76d36f676b MATH: Add a selectable Euler Order to Rotation3D. 2014-06-23 09:04:25 -04:00
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