Commit Graph

284 Commits

Author SHA1 Message Date
Jack Andersen 5e008737e0 Make `doNormalize` true by default for CUnitVector3f 2017-03-09 17:39:58 -10:00
Jack Andersen 11ba10b557 Add CAABox::intersectionRadius() 2017-03-06 19:34:54 -10:00
Phillip Stephens 505696e4a3 Some cleanup 2017-03-05 10:01:34 -08:00
Jack Andersen 68612ccd4c Add column-constructor for CTransform 2017-03-04 21:56:20 -10:00
Jack Andersen b97ccb7782 Fix ordering of CAABox::split* methods 2017-02-24 21:56:43 -10:00
Jack Andersen 8702ae7d97 Alternate call for CFrustum plane generation 2017-02-23 22:28:06 -10:00
Jack Andersen 69627f4bf3 Make vector constants class-scope 2017-02-11 17:48:21 -10:00
Jack Andersen 6f215040f4 Make CTransform::buildMatrix3f() return reference 2017-02-11 17:16:29 -10:00
Phillip Stephens ad74069739 Add intersection test for COBBox 2017-01-23 02:10:35 -08:00
Jack Andersen efc0580c31 Merge branch 'master' of https://github.com/AxioDL/zeus 2017-01-21 15:37:02 -10:00
Jack Andersen a7545579cc Add some static athena readers 2017-01-21 15:36:46 -10:00
Phillip Stephens e7a72d02b1 Add CAABox::booleanIntersection 2017-01-20 21:57:34 -08:00
Jack Andersen caff50dfa5 Some arithmetic operators for CVector2i 2016-12-30 14:50:54 -10:00
Phillip Stephens 17a42c15e2 Add static ReadRGBABig to CColor 2016-12-22 12:35:29 -08:00
Phillip Stephens 7d77992ed7 Add equality operators for CTransform and CMatrix3f 2016-12-12 18:54:54 -08:00
Jack Andersen a136d77458 Use __builtin_popcountll for systems that support it 2016-12-09 16:33:18 -10:00
Jack Andersen 64a88b3148 Windows Fixes 2016-09-18 15:03:37 -10:00
Phillip Stephens 8146bed6f1 Merge branch 'master' of https://github.com/AxioDL/zeus 2016-09-16 15:20:31 -07:00
Phillip Stephens 0a7c192dd5 CQuaternion::lookAt imp 2016-09-16 15:20:12 -07:00
Jack Andersen f370a2c4e6 Add CColor Athena writer helpers 2016-09-16 09:54:36 -10:00
Phillip Stephens d03f1157dd Helper functions for CTransform and CQuaternion 2016-09-13 22:12:25 -07:00
Jack Andersen 0e491fc8f5 Remove 'far' too annoying name collision 2016-09-10 15:23:44 -10:00
Jack Andersen f4dd896004 Add CTransform::printMatrix 2016-09-05 19:51:48 -10:00
Phillip Stephens 8ccc52d3b1 CRelAngle division ops 2016-09-01 13:17:33 -07:00
Phillip Stephens 1bba8594d5 Proper CRelAngle implementation 2016-09-01 12:38:16 -07:00
Phillip Stephens fb91979596 Add CMatrix constructor for CQuaternion, close_enough helper, and CTransform constness fix 2016-08-31 21:08:46 -07:00
Phillip Stephens 5c650d3a48 Add CNUQuaternion 2016-08-30 17:32:28 -07:00
Jack Andersen 81afa635ef Add CQuaternion::transform 2016-08-21 10:37:58 -10:00
Jack Andersen b71cf19344 Add CRectangle constructor 2016-08-19 18:21:40 -10:00
Jack Andersen 7aa5ccf0c7 Invert logic on CAABox::intersects 2016-08-13 09:35:41 -10:00
Phillip Stephens c1d5449124 Add static ReadBoundingBoxBig 2016-07-31 12:24:44 -07:00
Phillip Stephens 08d2925689 Add sphere->frustum and point->frustum intersection tests 2016-07-26 13:13:26 -07:00
Jack Andersen b6a1241678 Add CPlane::pointToPlaneDistance 2016-07-25 12:51:29 -10:00
Jack Andersen bf9404811c Merge commit 'b8c7' 2016-07-20 19:20:12 -10:00
Jack Andersen b8c7ac0387 Add missing include 2016-07-20 19:19:57 -10:00
Jack Andersen b15e66a710 Bulk-run of clang-format 2016-07-08 08:42:42 -10:00
Jack Andersen 3925f8509e alternate matrix transpose code-path for pre-SSE4.1 2016-07-04 12:28:59 -10:00
Phillip Stephens 68b5c47e25 Implement unimplemented COBBox constructor 2016-06-25 18:11:55 -07:00
Phillip 978b882449 Fix MSVC Name Squatting 2016-05-20 19:59:26 -07:00
Phillip Stephens c36927076c Remove m_ from all non-private members 2016-04-29 01:44:58 -07:00
Phillip Stephens 48b0aa4601 Rename COBBox members to be consistent 2016-04-26 19:39:56 -07:00
Phillip Stephens ac98ebf428 Various fixes and implementations 2016-04-26 03:36:44 -07:00
Phillip Stephens 7af2c491da Finish CMRay
Unify paths
2016-04-25 00:30:35 -07:00
Jack Andersen ac44f808ce Add static stream reader for vector 2016-04-24 19:03:05 -10:00
Jack Andersen 0c968842ae Add RowMajor matrix reader 2016-04-18 14:17:19 -10:00
Jack Andersen 954978454b Add CAABox::skNullBox 2016-04-16 11:49:09 -10:00
Jack Andersen cfc5d55419 Const correctness fixes 2016-04-15 17:23:54 -10:00
Jack Andersen e284c2de31 Order-of-operations optimization with degrees/radians conversion 2016-04-14 17:00:51 -10:00
Jack Andersen 69b384e48c Const correctness on some CAABox methods 2016-04-14 11:42:16 -10:00
Jack Andersen d84d38a1a3 Add scale matrix constructor 2016-04-13 13:06:50 -10:00
Jack Andersen f17f2371bf add CMatrix3f::addScaledMatrix 2016-04-12 12:27:38 -10:00
Jack Andersen 286d098ecb Proper SFINAE usage on PopCount 2016-04-09 13:18:46 -10:00
Jack Andersen eb2968304b More stable Matrix->Quat constructor 2016-04-08 14:00:48 -10:00
Jack Andersen 5aae3cdbc6 Merge branch 'master' of https://github.com/AxioDL/zeus 2016-04-07 17:36:21 -10:00
Jack Andersen c16f25db09 Add matrix to quaternion constructor 2016-04-07 17:35:16 -10:00
Jack Andersen 4dea46aa65 Fix CQuaternion subscript bug 2016-04-07 16:39:36 -10:00
Jack Andersen baaca3136b WXYZ quaternion layout 2016-04-06 17:39:24 -10:00
Jack Andersen 9762710b85 Add color self-clamp 2016-04-03 19:01:27 -10:00
Jack Andersen 1f7088e5eb Proper CTransform::multiplyIgnoreTranslation return value 2016-03-30 20:18:05 -10:00
Jack Andersen f9f432be97 Unnecessary const qualification 2016-03-15 13:23:07 -10:00
Jack Andersen 33c357ecc6 ZE_ATHENA_TYPES readers are now explicit-endian 2016-03-13 14:57:31 -10:00
Jack Andersen 8154c82d78 made CTransform::rotate a const transform func only 2016-03-10 14:22:22 -10:00
Jack Andersen b721e09ef5 CTransform::orthonormalize added 2016-03-09 17:47:01 -10:00
Jack Andersen a76d43d5df Humungous refactor 2016-03-04 13:03:26 -10:00
Phillip Stephens cd28979d0a Add TVectorUnion constructor for static init 2016-02-23 20:48:42 -08:00
Phillip Stephens 4b920754e9 Merge commit '17f1' 2016-02-23 20:43:05 -08:00
Phillip Stephens 17f1cda1c0 Use CVector4f instead of atVec4f 2016-02-23 20:40:14 -08:00
Phillip Stephens e909f08838 We define types for components, use them
Use multiplication for char -> float conversion for speed
2016-02-22 21:27:51 -08:00
Jack Andersen a857250ccf Routines to support line rendering 2016-02-17 16:40:58 -10:00
Jack Andersen b4ed5b78dc Merge branch 'master' of https://github.com/AxioDL/MathLib 2016-02-16 17:38:32 -10:00
Jack Andersen fc122384bd MSVC constructor fixes 2016-02-16 17:37:43 -10:00
Phillip Stephens bfb1f4fee3 Fix transposed size
Add check for availability
2016-02-16 18:20:17 -08:00
Jack Andersen f7fb4b0ecc Merge branch 'master' of https://github.com/AxioDL/MathLib 2016-02-15 19:50:10 -10:00
Jack Andersen 876a6030bb More CTransform affine operators 2016-02-15 19:49:52 -10:00
Phillip Stephens ce2256c457 Fix brand retrieval 2016-02-15 09:32:49 -08:00
Jack Andersen bd88f654a9 Various optimizations 2016-02-14 17:57:57 -10:00
Jack Andersen bbb81c96b8 Add ceilingPowerOf2 2016-02-13 17:52:00 -10:00
Jack Andersen 082cac124c Add CVector2i class 2016-02-13 17:39:47 -10:00
Jack Andersen 033bfd71e1 Zeus::CTransform::Translate() 2016-02-12 14:56:30 -10:00
Jack Andersen 3f3043dc1f PopCount fix 2016-02-11 16:34:40 -10:00
Jack Andersen 3d3913a6c6 Add Zeus::Math::PopCount 2016-02-11 16:29:35 -10:00
Jack Andersen f590255b5f Alternate CAABox::accumulateBounds 2016-02-11 12:37:50 -10:00
Jack Andersen 4a5d21e9b8 Add CTransform::rotateLocal methods 2016-02-10 16:35:37 -10:00
Jack Andersen 698801a160 Add identity builder for CTransform 2016-02-07 19:09:40 -10:00
Jack Andersen cf0bae88ff Add atVec4f constructor to CColor 2016-02-07 13:57:59 -10:00
Phillip Stephens a2d7c21a7e rotate* helper functions 2016-02-02 00:29:16 -08:00
Phillip Stephens 8c801b26b8 Enable atdna for CQuaternion 2016-01-17 14:40:48 -08:00
Phillip Stephens 6256903a4d I'm dumb 2016-01-17 07:56:45 -08:00
Phillip Stephens 7f08bf47f1 GCC is dumb 2016-01-17 07:55:45 -08:00
Phillip Stephens 3113307e6c Use a union and move real component in CQuaternion 2016-01-16 21:48:20 -08:00
Phillip Stephens 0594099ccd Merge commit '1bef2b2' 2016-01-16 15:17:13 -08:00
Phillip Stephens 1bef2b2847 Enable atdna on CVector*f when ZE_ATHENA_TYPES is defined 2016-01-16 15:16:30 -08:00
Phillip Stephens e1fbd991b6 Forgot to pass alpha 2016-01-05 17:45:06 -08:00
Phillip Stephens 2a3401ade9 Underp toGrayscale 2016-01-05 14:55:44 -08:00
Phillip Stephens 0ec87939d2 Add toGrayscale 2016-01-04 23:49:12 -08:00
Jack Andersen 3d6218a9d2 Added CVector2f::assign 2015-11-29 14:21:26 -10:00
Jack Andersen 9885d34420 Added skClear 2015-11-28 16:55:05 -10:00
Jack Andersen f075c38a4c Windows fix 2015-11-27 12:19:54 -10:00
Jack Andersen a13928491e Added CVector4f::assign() 2015-11-25 21:35:11 -10:00
Phillip Stephens 24886ff8c7 Build Fixes 2015-11-25 18:38:43 -08:00
Phillip Stephens a073e690cd SSE Fixes
CColor <-> CVector4f implicit casting
2015-11-25 17:42:24 -08:00
Phillip Stephens ef0c2e6104 Merge branch 'color-float' 2015-11-25 17:27:20 -08:00
Phillip Stephens b172f023fb Convert CColor back to floating point 2015-11-25 17:26:23 -08:00
Jack Andersen dc5c903a0d Assign method for CVector3f 2015-11-25 14:23:29 -10:00
Jack Andersen 8d54a3c7b5 include fixup 2015-11-24 15:45:58 -10:00
Jack Andersen 116afa6fc3 windows enum refactor fixes 2015-11-20 17:00:18 -10:00
Jack Andersen b757bcd368 Major scoped-enum refactor 2015-11-20 15:14:10 -10:00
Phillip Stephens 8937bfc0c6 Merge branch 'master' of https://github.com/AxioDL/MathLib 2015-11-08 19:40:03 -08:00
Phillip Stephens 35a6a511d8 Add forgotten CMRay 2015-11-08 19:39:51 -08:00
Phillip Stephens d5bb17d994 Move HSL/HSV ops to implementation
Fix broken static color declarations
2015-11-05 20:09:33 -08:00
Phillip Stephens 12631bdc60 Add HSL to CColor 2015-11-05 19:52:47 -08:00
Phillip Stephens 40ca0c3219 More reimplementations 2015-11-02 10:44:46 -08:00
Phillip Stephens 9965f5846d Decouple Athena usage
Convert CColor from RGBAf32 to RGBA8
2015-11-01 04:04:29 -08:00
Phillip Stephens e1baf3631b Add Athena constructor to CMatrix3f 2015-10-25 13:20:53 -07:00
Phillip Stephens dbbd3c76ef Reimplementation 2015-10-25 12:31:41 -07:00
Jack Andersen 2efe395f50 Additional Athena support 2015-10-23 15:23:23 -10:00
Jack Andersen 1901de914c Minor constructor fix 2015-10-23 12:25:36 -10:00
Jack Andersen cd3d2ee133 Windows fix 2015-10-12 09:24:53 -10:00
Phillip Stephens 070a8d7854 Windows fix 2015-10-12 02:50:24 -07:00
Phillip Stephens 9402346822 Add rounded catmull-rom
Fix getBezierPoint
2015-10-12 02:40:42 -07:00
Phillip Stephens 5ec947366a Fix round 2015-10-12 02:19:19 -07:00
Phillip Stephens 9ce41a40f8 Merge branch 'master' of https://github.com/AxioDL/MathLib 2015-10-12 01:49:33 -07:00
Phillip Stephens e849476a7a Complete CMath reimplementation 2015-10-12 01:46:45 -07:00
Jack Andersen 72972196a4 Windows fixes 2015-10-11 18:40:59 -10:00
Phillip Stephens 5e2b997266 WIP math reimplementations 2015-10-11 17:33:42 -07:00
Phillip Stephens 57cfbc93b9 Add forgotten file 2015-10-07 17:29:33 -07:00
Phillip Stephens 8012694fc7 More reimplementations
Move API to Zeus namespace
2015-10-07 17:23:49 -07:00
Phillip Stephens 394a225062 * Fix previous commit 2015-10-07 17:23:49 -07:00
Phillip Stephens 716ca479ce * More reimplementations 2015-10-07 17:23:49 -07:00
Phillip Stephens eeb7a0235e More reimplementations 2015-10-07 17:23:49 -07:00
Phillip Stephens d5c8fe162f More re-implementations 2015-10-07 17:23:05 -07:00
Jack Andersen 151b0e6333 made clamp a template function 2015-08-28 15:29:17 -10:00
Jack Andersen 2e3512b800 Removed exceptions 2015-08-19 16:51:47 -10:00
Phillip Stephens 9d657895cb Added COBBox and renamed SBoundingBox to CAABox
Reorganized code
2015-08-11 18:41:28 -07:00