Commit Graph

264 Commits

Author SHA1 Message Date
Lynix 446f537e3f Merge branch 'master' into NDK
Conflicts:
	src/Nazara/Physics/Geom.cpp

Former-commit-id: 8fd71e34dbe105890042acc55e30b64e7c457ed4
2015-05-06 23:45:41 +02:00
Lynix 55b94f2bbf Math/Matrix: Removed deprecated comment
Former-commit-id: f29b0b453b1313e991f783e8e3be183faa29d8bd
2015-05-06 23:33:07 +02:00
Lynix 3fd217b8a3 Merge branch 'master' into NDK
Former-commit-id: 7f2646da9f2e2c29157e645afbcfcf974f0e0709
2015-03-19 13:13:20 +01:00
Lynix 0363a1a8fa (Box|Rect) Fixed Contains method excluding edge vectors
Former-commit-id: f3281ad9f7af268fceccfdb9d4f67ac0ac76b445
2015-03-19 12:49:08 +01:00
Lynix 5c3720feb1 Merge branch 'master' into NDK
Former-commit-id: f118c029ca94296495957816f910d412ae8a56f2
2015-03-18 20:44:52 +01:00
Lynix 2bde611d33 (Math) Added CountBits function
Former-commit-id: 11e825a95a7bda300e46eb321f0fdb51bea93343
2015-03-16 15:16:05 +01:00
Lynix 458fba2180 (Math) Improved code and added comments
Former-commit-id: 3cf198715ac83e3d85d572d4ed0a3c6988074d0d
2015-03-16 14:54:07 +01:00
Lynix 3e214678c3 (Math) Added IntegralLog2(Pot) functions
Former-commit-id: 2def88ebf1e0ec2c908b2da4df60ff9e8075f8f1
2015-03-16 13:53:48 +01:00
Lynix ca88c5bae4 Optimized NumberToString algorithm
Fixed useless allocation made by String::Reversed


Former-commit-id: c41c1d5fea3ebb55978fd63284d25c2ad3971ac1
2015-02-18 21:03:36 +01:00
Lynix cdff689403 (Ray) Fixed Intersect(Plane, T) method
Former-commit-id: 5acfae80d778087a2e2b423d34da8a218a802cd4
2015-01-24 16:18:06 +01:00
Lynix 0e48f052e5 Fixed GetNearestPowerOfTwo function
Returning the next POT even if the number was a POT itself


Former-commit-id: 812f35d13a99985ca5c12517cd84de22292e52c7
2015-01-24 14:34:36 +01:00
Lynix ea8d683624 Updated copyright year
(532 files, wow)


Former-commit-id: cbb31f1124a86720bd3a54fe589a0f849a87b434
2015-01-21 20:53:01 +01:00
Gawaboumga 3933b07094 Suppression of warnings
OffsetOf: use of static_cast
Updatable: API and virtual destructor
Drawable: virtual destructor
Vector: std::abs should be "the" abs.
AbstractClass: API
+Updatable: Like for others abstracts
Buffer: nullptr for pointer to function.
Image: wasn't returning a vector.

Former-commit-id: 57e0009286a02b9e3b0b81945e500d7d9e466ae2
2015-01-21 13:51:49 +01:00
Lynix 7e9c5e9a06 Improved NomalizeAngle function
Former-commit-id: 79793b0c57a333e6d2d4a41a14f2b7fdc1d1f093
2015-01-20 15:05:37 +01:00
Lynix 304b46b17d Merge remote-tracking branch 'origin/Particle-Update'
Former-commit-id: 272203af1d740dc32e9714e00e4f889db6b13350
2015-01-19 02:23:07 +01:00
Lynix 5daf09e41b Added OpenGL-like Vector constructors
Former-commit-id: 302389b6a915d66a0a0fb4cc9a748ed5266ae98c
2015-01-05 02:32:57 +01:00
Lynix 7c47a93a72 Renamed Corner enum to BoxCorner
Added RectCorner and Rect::GetCorner method


Former-commit-id: dc99823ceb17f6e91cdf12779c982ab7e024ec24
2015-01-03 22:31:25 +01:00
Lynix a1624af969 Improved [Box|Rect]::Intersect performances
Allowed early returns


Former-commit-id: 59001afdd9734666640d440cb8b87b5a426973ce
2015-01-03 22:15:15 +01:00
Lynix 5ae54677f1 Fixed Matrix4::IsIdentity()
Former-commit-id: 7f3dfb47241ec2625e7ba02decb53ad5fd3d60ac
2014-12-07 03:04:04 +01:00
Lynix 68bd3304c6 Renamed Degrees|Radians functions to From[Degrees|Radians]
Also added To[Degrees|Radians] functions


Former-commit-id: b7445a42e5ee88319009db9d664d8d9f8fe88c18
2014-09-06 11:52:37 +02:00
Lynix 1b94977722 Added Quaternion::Normalize static method
Former-commit-id: a4530be00673dec5b9731b75fb4edbac7ccd69d5
2014-09-03 13:30:12 +02:00
Lynix 4acd61cf30 Fixed Vector[2|3]::Normalize returning NaN for zero vectors
Former-commit-id: e849a14189ff178134358d4ceed87955bc9f8eae
2014-08-05 17:38:49 +02:00
Lynix 43b4f696b2 Added FIXME
Former-commit-id: 61dfdb35eb265a34c94913947f4ae9164e79c0d9
2014-08-05 09:41:57 +02:00
Lynix d9cce5d7ce Fixed compilation error
Former-commit-id: febc503b22cedaa4edf0efe3677cf38a205d7230
2014-07-29 10:30:49 +02:00
Lynix 454a5b1281 Added Matrix4::Get[Column|Row]
Former-commit-id: 5dc655f97d8523714c69627e70b3bf8dfdcdb1ae
2014-07-28 16:16:32 +02:00
Lynix 60d5c09c18 Renamed Basic.hpp to Algorithm.hpp
Former-commit-id: ba2858d26fb55069313fafc3e4464dc2e9224b7d
2014-07-28 15:18:39 +02:00
Lynix 90a616a26f Made code more readable (Weeeee)
Former-commit-id: fa2a7686130fe67aa4da9f590a8f74c1b5e75ca9
2014-07-28 12:26:37 +02:00
Lynix 4a0dbcb338 Updated Basic.inl
Fixed StringToNumber not working with lowercase numbers
Moved functions order to be alphabetical


Former-commit-id: ff58d17afe38c39527a6ae898bfeb7f3282b2142
2014-07-28 12:24:57 +02:00
Lynix 4ccf021376 Fixed EulerAngles operator+= return type
Thanks to Raakz


Former-commit-id: 2247fe952cd593adea90336ea7f8507e83dea3b1
2014-07-15 01:01:37 +02:00
Lynix 10a17bbf68 Removed debug code (Oops)
Former-commit-id: 48bd8955884352990a3a00b1453fcfc101fa7781
2014-07-10 10:41:50 +02:00
Lynix 3dac383486 Improved Ray class
Former-commit-id: 97a9a50440476e962cc850a09859b0784976c242
2014-07-10 10:11:17 +02:00
Lynix 2479588811 Removed toDegree arg from VectorI::AngleBetween
Former-commit-id: 6b5e141e7c291dadedbfd237f5f22615ce5dcfee
2014-07-10 10:03:35 +02:00
Lynix 7103c28d49 Merge pull request #27 from Gawaboumga/master
Merging Gawaboumga pull request (#27), fixes are coming

Former-commit-id: 81079fd052538e15b7e919aea106cfb5a88a87a6
2014-07-08 16:24:46 +02:00
Lynix b51845d88f Added Matrix4::Concatenate static method
Former-commit-id: 842e86a89fb7468552d6a9473a228bfb7a8a3809
2014-07-08 16:15:05 +02:00
Lynix c4b10dddda Big config/debug update
Added config checkers
Macro no longer use suffixes
Moved MemoryManager to upper directory
Renamed *_MEMORYMANAGER to *_MANAGE_MEMORY
Renamed AUDIO_STREAMEDBUFFERCOUNT to AUDIO_STREAMED_BUFFER_COUNT
Renamed CORE_REAL_PRECISION to CORE_DECIMAL_DIGITS
Renamed DEBUG_MEMORYMANAGER_DISABLE_REDEFINITION to
DEBUG_NEWREDEFINITION_DISABLE_REDEFINITION
Renamed GRAPHICS_MAX_LIGHTPERPASS to GRAPHICS_MAX_LIGHT_PER_PASS
Renamed UTILITY_FORCE_DECLARATION_STRIDE_MULTIPLE_OF_32 to
UTILITY_VERTEX_DECLARATION_FORCE_STRIDE_MULTIPLE_OF_32


Former-commit-id: 81ef836ac9f092ac471f60e544bb7c7c6370593c
2014-07-08 10:56:37 +02:00
Gawaboumga 60d045e139 Suppressions of getters
Former-commit-id: db5ae144a8eb8794e7df9981805d2250bbd8b4ee
2014-07-04 11:31:51 +02:00
Gawaboumga ba7f3606a0 Obb intersect ray
New method


Former-commit-id: 282a82d773f61fcec8026eb4ccb74e8b2de9784f
2014-07-04 11:22:47 +02:00
Gawaboumga 31d54d4706 UTF8
Former-commit-id: 3cbdbcc5dd8cc73b5efc40f62e3b6a9619f628cc
2014-07-01 11:06:16 +02:00
Gawaboumga 45fc9158e4 Add of source
Add of the source


Former-commit-id: f3d01ef18ccc1ae906693f388e696c0763576a3b
2014-07-01 10:57:43 +02:00
Lynix d9c38181a5 Added (U)Int32 typedef for Box,Rect and VectorI classes
Former-commit-id: 20fcc8e7ccde6f5306c08058ad477e81cfb2d204
2014-06-30 10:52:25 +02:00
Gawaboumga 7ba72ef1c6 Little fail again
Wrong getter


Former-commit-id: 951d0a46d189c13009854f4bad43e7a243470f03
2014-06-28 11:45:10 +02:00
Gawaboumga 1aebcd83b0 Merge remote-tracking branch 'upstream/master'
Former-commit-id: 124b89e1c31a7b907f88d8c7a234473274d5a0f6
2014-06-28 09:05:16 +02:00
Gawaboumga 5e709001ad Little fail
Plane: Forgot <T>

Former-commit-id: 46f5c4a501fcf1ed841e28474cf5bca8e7baa438
2014-06-28 09:03:56 +02:00
Lynix 032b2ed79b Removed explicit VectorI::operator[]
Since Vector instances can be implicitely converted to T*, native
operator[] will work on them


Former-commit-id: 3f4a1822c514886dee7d9e5dab816c80e5c5ee99
2014-06-27 21:15:11 +02:00
Gawaboumga f3ccd60b5f New class ray
Class ray who represents a ray in space and who can be used as a line.
Support of classical intersections.


Former-commit-id: 2ea5af0cf749dbefdd841f9b02bfab2af5058cdb
2014-06-27 19:39:51 +02:00
Gawaboumga ca595bca20 Add of some mathematical functions
Plane: Getters and classic planes
Sphere: Getter
Vector2: Angle between two vectors
Vector3: Same in 3D

Former-commit-id: 07e6421def813743e5fd8248fe2e9503cebbb8a8
2014-06-27 19:33:28 +02:00
Gawaboumga 9f17722afd Little corrections
HashDigest: Simultaneous use of int and short
EulerAngles: Use of the macro
Geom: cone was missing

Former-commit-id: ecc3a586732a6711b57ce3e79c5450ef7327bb5b
2014-06-27 19:11:45 +02:00
Lynix 48eb59eba8 Commited missing file (from 7dfb82)
Former-commit-id: 90aba1cc976830fd78efdd3d03764345b92df24d
2014-06-22 15:12:54 +02:00
Lynix dc3f3eb344 Fixed some of the pull request code in order to merge it
Former-commit-id: d8a9734fc622cb57f98b3b6abd2579922d562aa0
2014-06-22 15:12:52 +02:00
Lynix a6d6213b9d Commited missing file (from 7dfb82)
Former-commit-id: 4961498d557dea7101960beb4f2eb6b0a3060368
2014-06-17 15:53:57 +02:00
Lynix eceabcd241 Fixed some of the pull request code in order to merge it
Former-commit-id: 76d71f15b335535e7dfcaf986440a00e85e45c1b
2014-06-15 01:55:07 +02:00
Gawaboumga 676ed6c9d8 Correction of mathematical functions.
BoundingVolume: Add of constructor and setter OrientedBox. Extend is now
up to date.
Box: Use of <T>. Return this
Frustrum: Use of <T>
Matrix: Use of <T>
OrientedBox: m_corners is up to date
Rect: Add of operators /= and /. Return this
Sphere: Add of Intersect and Contains with box. Little corrections.
Vector2: Return

TaskSchedulerImpl: Add of include header cstdlib to compile because of
std::div
HardwareInfo/main: use of accentAigu

Former-commit-id: a5a7f8e8c45448e5683eb13bff453d6f67478d03
2014-06-14 22:10:37 +02:00
Lynix 1ba07cf69c Removed Matrix4 "identity optimization"
Returned Matrix4 to a POD type


Former-commit-id: 658f7d41b5d5f7d70b9d6531456ae2e498c469d2
2014-04-20 14:29:55 +02:00
Lynix 7196d8399f Made use of constexpr keyword
Former-commit-id: 79bc50ffaa21947dacd18578a34f6be65285821b
2014-04-02 01:02:47 +02:00
Lynix a441a30beb StringToNumber no longer throw an error on failure
Former-commit-id: 8d191884c4ba757179e0c374a8ee2db756d1064b
2014-01-19 10:54:59 +01:00
Lynix c096756dab Happy thousandth commit Nazara
Updated copyright year (Yay, 515 file updated)
Regenerated global headers
Fixed some typo
Improved some shaders
-Blah blah blah-

Thank you all for supporting my project !
-Lynix


Former-commit-id: e4e741b318ba4f203da5ffd265bd5e516e7ffd7d
2014-01-12 20:16:21 +01:00
Lynix a560a16ef3 Lerp no longer fail when interpolation is not in range [0..1]
Former-commit-id: b9d4179cbd82f709695719dbc47f9d0f9d98841e
2013-12-20 19:59:28 +01:00
Lynix b05f813e70 Added NzMultiplyAdd
Use hardware FMA (or at least faster FMA) when possible


Former-commit-id: fd5134d2aebe924fb8c9148224101dd7d340bb5f
2013-12-09 14:13:37 +01:00
Lynix 43df67d47b Fixed NzNumberEquals not working with integers
Former-commit-id: 9ce3889c1e4364f7e8f90a1d81c3a8921c5cd0b6
2013-12-07 23:46:46 +01:00
Lynix 0520de7ab0 Fixed Vector3::operator[==|<=]
Thanks to OveRdrivR

Former-commit-id: fa93eb7124e3b322407d1488c8530312c2019792
2013-09-30 23:19:38 +02:00
Lynix ffbff9e707 Fixed compilation errors
Former-commit-id: 1ba7f27b5e56aee1ffc34459ab64d56bfe359dfe
2013-09-23 00:22:18 +02:00
Lynix db2b33eda1 Fixed Vector2::Normalize
Former-commit-id: c781e64262c0fbce2782f635c2db13478f18a9d5
2013-09-20 21:31:07 +02:00
Lynix 693aec36c3 Fixed bounding box AABB
Former-commit-id: ef8ec52e7bffca69b1e41462f0971e00a1b73029
2013-09-16 01:03:06 +02:00
Lynix f0eac2bc0d Fixed compilation error
Former-commit-id: 13b96b7bba638a1843a00264068e1c4858e6d301
2013-09-16 00:36:50 +02:00
Lynix 74d396a376 Added warning when clip matrix is not invertible
Former-commit-id: 4707faab0259062ad619a5e5c72fcbbfaf853e3c
2013-08-22 10:50:53 +02:00
Lynix 5d0ed4f27c Removed warning when Matrix4 is not invertible
Former-commit-id: d16c6153dfafadc628cb9af9e4ed707045833616
2013-08-22 10:50:39 +02:00
Lynix 26f120cc66 Fixed Matrix4::[Make]Ortho parameters name
Former-commit-id: ad6a90025e6502ceff9add2c5ecd6c7b83483f38
2013-08-21 19:39:04 +02:00
Lynix b9b572c60c Fixed warning
Former-commit-id: d6ac174b7ad2a365158ccda0300e62aed5bd8a7b
2013-08-19 23:37:23 +02:00
Lynix 35bd693216 Fixed Matrix4::(Make)Ortho
Former-commit-id: fb65916496b8c28c21dcaf6c623ab1427a6e7767
2013-08-16 00:23:03 +02:00
Lynix efd6185f56 Added Box::GetSquaredBoundingSphere
Former-commit-id: 12ecb5d84f44e39ddacb96b83a897f618337c2e1
2013-07-31 14:18:47 +02:00
Lynix 84ebd6043c Sphere::Distance now returns distance between center and point
No more negative distances


Former-commit-id: 1688b82e88621e20312b6b28090ed63941b3e02a
2013-07-31 14:18:27 +02:00
Lynix 35d9a2fef7 Fixed Vector2 division operators
Former-commit-id: cceddfe0bdb1ac94355ad3d04e4c9dab51d2edce
2013-07-01 16:04:50 +02:00
Lynix f4ef89bb32 Made Matrix4::ConcatenateAffine more robust
Former-commit-id: 7d6f74959b29a597fa9b08d8d3c58fbaf9e2555e
2013-06-27 18:56:05 +02:00
Lynix ebf402f138 Added GetNearestPowerOfTwo
Former-commit-id: 609d470e8478c659b816ad7d34fb9d56ad551b07
2013-06-18 21:06:41 +02:00
Lynix 7f9455b947 Added Matrix4::(Make)ViewMatrix
Former-commit-id: 4a21da456f90c5d0c53c291885b3a214be893b5e
2013-06-10 16:41:25 +02:00
Lynix 6b2af70f1d Cleaned interface
Former-commit-id: cdd284de8396d5988853c84d5db17bfa6fa0ba51
2013-06-09 22:05:05 +02:00
Lynix a478926570 Fixed (I hope) Matrix4::GetRotation()
Former-commit-id: 9480437dde664034d7e44c81a3931922c215b646
2013-06-09 16:00:44 +02:00
Lynix 273391d8cb Added optionnal parameter to NumberEquals(a, b)
Former-commit-id: 30e69529d7e15857046327edd6cbe587a3951fa3
2013-06-09 15:53:49 +02:00
Lynix 7a7cfc3092 Added [Box|Rect]::Translate
Former-commit-id: 72b4cd351a7233df89709366fbe7ce59e4ba94e7
2013-06-09 15:50:56 +02:00
Lynix bb31a1666f Added [Box|Rect]::Get[Maximum|Minimum]()
Former-commit-id: 5226f2dfd2beaec2bc9075543f555cc48a457e3a
2013-06-09 15:41:57 +02:00
Lynix c940abdb75 Renamed [Box|Rect]::GetSize() to GetLengths()
Former-commit-id: 3c122057634a6472034b284bfe7091acbb41d004
2013-06-09 15:34:36 +02:00
Lynix 910a79fc84 Cleaned interface
Former-commit-id: b5f1871c164dd72098e389b76edf0994fb1fb124
2013-06-05 15:56:51 +02:00
Lynix fb839de33e Renamed (Oriented)Cube to (Oriented)Box
Also renamed BoundingBox to BoundingVolume


Former-commit-id: 795c70c265ba17f6b96fc30799e89f140c52852b
2013-06-03 14:18:31 +02:00
Lynix a3f1417abd Added Matrix4::Apply[Rotation|Translation]
Former-commit-id: 1c59aa48f057d4bdc4b4413e349d2b4290dec055
2013-06-03 12:57:20 +02:00
Lynix c99ab36ebe Made Cube/Rect more user-friendly
Former-commit-id: 13ac0b9f6428059596c98f636caf61afd2a436b7
2013-05-30 03:02:43 +02:00
Lynix 465a7c246d Added Identity Matrix optimization
Former-commit-id: c426c3098659f9cf74fd7da33cadabe38a158358
2013-05-30 02:58:20 +02:00
Lynix b3f60e90fd Fixed Quaternion::(Make)RotationBetween
Could not handle parallel vectors


Former-commit-id: 3fed3a46d443b208dc95a5bcd29dd43fb7960114
2013-05-30 02:56:58 +02:00
Lynix c05c22c97a Fixed Frustum::GetPlane not compiling in debug
Former-commit-id: efe801b21f50803368aea4c5442a43c1621545f6
2013-05-16 22:21:33 +02:00
Lynix 6d2a1118bc Implemented Matrix4::GetRotation
Former-commit-id: 90e0b6942497c1337ac3873d3990515284df4aa6
2013-05-16 22:21:16 +02:00
Lynix 6c743a89b9 Added Quaternion::(Make)RotationBetween
Former-commit-id: e28517580bd17970e77a38f54e7c114cdaf402d5
2013-05-13 12:52:39 +02:00
Lynix 16004fd41c Added IntegralPow function
Former-commit-id: c04d3bf6365f3ced475405a85285b3956a066c47
2013-05-13 12:52:12 +02:00
Lynix 991d841d57 Made String(char) explicit
Former-commit-id: 02f5ead8fe60b825464f956d9fc6ea4689bda44b
2013-05-11 13:51:56 +02:00
Lynix a8066a58af Added Matrix4::(Make)Transform(T, R)
Former-commit-id: 556554c8cc589dfe64b3a8be903f62af894011c4
2013-05-03 02:50:38 +02:00
Lynix 961c658ae1 Changed Matrix4::(Make)Transform argument pos
To reflect "TRS" transformation
Also removed an useless line


Former-commit-id: b60a70d04797f40f3490b26706740b375fe38421
2013-05-01 01:35:17 +02:00
Lynix 23b760139e Completed Vector3 vectors
Former-commit-id: 73c16102c22fe1d01b9b9411aa3e1bf82949542c
2013-03-21 22:52:19 +01:00
Lynix c7fdf25432 Added Matrix4::GetDeterminantAffine
Former-commit-id: 404098cc552509039c38e7449b167dbab0385008
2013-03-21 18:29:50 +01:00
Lynix 32b1d02cec Updated copyright texts
Former-commit-id: 81483f7a94935c925e53b7f450e42635b1357833
2013-03-13 23:23:41 +01:00
Lynix 1e57c00fa1 Simplified Cube::GetCenter impl
Former-commit-id: 59f3fcb694b5758e726c9fd5884307d80d6d3408
2013-03-13 17:09:54 +01:00
Lynix d695bb02e8 Changed parameter name (nothing relevant)
Former-commit-id: 3b0355d998300b57ab83562f9b107925e4be6c29
2013-03-12 23:35:37 +01:00
Lynix 79ac20f48a Removed useless comments
Former-commit-id: e780ddc3dd648e45f596b3e6a00ff68481d84e42
2013-03-12 23:31:48 +01:00
Lynix bf3ebde2cd Fixed BoundingBox::operator*=
Former-commit-id: ff998c1f7aa93a7b582b689f6b628663d1e921be
2013-03-12 23:31:36 +01:00
Lynix a8e1a00158 Fixed spaces (Yes, one more time)
Former-commit-id: 0f1af03c886d76ed1e79db91f47fd9902dc7813a
2013-03-06 22:39:02 +01:00
Lynix 50b1055e78 Fixed spaces
Former-commit-id: c0b17c175a2d0da81d28fd5287b72e8546ce210b
2013-03-06 13:41:58 +01:00
Lynix b75c04b16a Fixed Matrix4::MakeOrtho
Former-commit-id: 04b75d7c82e34cce4e27b761861747a6375241b3
2013-03-01 18:37:29 +01:00
Lynix bb4c747e0b Buffer::CopyContent takes now an const buffer
Former-commit-id: c7a44c3198a24a60a26ab3cc04f75f4cea159979
2013-03-01 16:11:39 +01:00
Lynix 9b2eb8ce3f Optimized frustum tests against BoundingBox
Former-commit-id: d923e5fa8c9b29dcaca1e0bffc28015ee96c4f30
2013-02-26 00:02:43 +01:00
Lynix 1b5215d4c2 Removed AxisAlignedBox (Replaced by BoundingBox)
Former-commit-id: 931dd6710caf49aeaede51efe209d714f080c44b
2013-02-21 18:28:32 +01:00
Lynix 2e6b864cad Added OrientedCube class
Former-commit-id: ca42e08a8bf73b5801bea1536bd8a8af5e386574
2013-02-21 18:27:08 +01:00
Lynix 283b551d56 Adding some methods to Cube class
Former-commit-id: b8a72658aa97841156910e8ec1120d109069fce1
2013-02-21 18:26:41 +01:00
Lynix a9b538de20 Renamed Vector[i]::[Squared]Length[f] to Get[*]
Also added length pointer parameter to Vector[i]::GetNormal


Former-commit-id: 345ebd14bda9f5e0a3843e7603eb7a1a39667db1
2013-02-21 11:29:35 +01:00
Lynix 31be0bdef9 Fixed infinite aabbs
Former-commit-id: 3040da77b407ec62c01b32f05b11adad35702e6d
2013-02-21 00:52:45 +01:00
Lynix 8b49a6426f Fixed [Frustum|Plane]::ToString()
Former-commit-id: b09821e54d3335a0d3c3cc30ec3050d26a30046a
2013-02-20 16:51:09 +01:00
Lynix 28ea9fc9a0 Added Frustum::Contains(AxisAlignedBox)
Fixed Frustum::Contains, Intersect and Plane::Distance not being const


Former-commit-id: e219a10fac78f50743f19ebe523345bcac0b0fb7
2013-02-20 16:41:29 +01:00
Lynix 6bfe9c8890 Fixed AxisAlignedBox::Transform missing return
Former-commit-id: 13888840999937528a7f4b7c23869eee929853a3
2013-02-20 16:37:22 +01:00
Lynix add363a290 Moved AxisAlignedBox to mathematic module
Former-commit-id: 2cb5b151941a431b5c12457f0decf7b39195052d
2013-02-19 12:32:11 +01:00
Lynix 933a0c7f38 Added Frustum class
Former-commit-id: 90b380e8f8ff21333d081aed0fd65de0393a0242
2013-02-19 01:23:51 +01:00
Lynix 760470e3f0 Added Sphere class
Former-commit-id: b674083e88f3ab6df2313d460eebc3e0e56a80f3
2013-02-19 01:23:37 +01:00
Lynix 28fcb06025 Added Plane class
Former-commit-id: fbbb1f230b4a9f85de0b56b4924ab65f74b4b654
2013-02-19 01:20:15 +01:00
Lynix 0051b76b9b Improved Vector4::Normalize
Fixed length output


Former-commit-id: 2ff9aeca4e125965251187a1b7e2a4c6e0c08e5a
2013-02-19 01:19:31 +01:00
Lynix b6940e9d8b Fixed Corner_Max
Former-commit-id: bc9e18cb6227335d0ce79c3b2cb35705fd76709a
2013-02-19 01:18:47 +01:00
Lynix 49cdbc3c47 Added [Cube|Rect]::ExtendTo(X, Y[, Z]);
Former-commit-id: 6f3a92644acd818f94088347cc6f1be939adb7f9
2013-02-19 01:10:47 +01:00
Lynix ee7a9c572b Added [Cube/Rect]::Get[Negative/Positive]Vertex
Former-commit-id: 66e4851be7751402077ea67df0554a51f3d28df2
2013-02-17 23:41:43 +01:00
Lynix 4a11ff269f Replaced division by multiplication
Former-commit-id: 76c47816b99ed104fc5fd1fe155156f64a053fa1
2013-02-17 23:41:03 +01:00
Lynix 2e4c27188f Fixed math not including some headers
Former-commit-id: a0da804f710d2decf84cd2429d1fedc0df5e49f7
2013-02-17 02:09:10 +01:00
Lynix 60d41f3c4b Moved AxisAlignedBox::GetCorner to Cube
Former-commit-id: 59509594e6cda19089b93efd8dc77ab7bd20250c
2013-02-17 00:51:16 +01:00
Lynix cdf632ac96 Minor changes to math module
-Fixed missing Set method: "X::Set(const X&)"
-Removed operator String


Former-commit-id: 690f161704ed85fc57a62b812af7933e390572b5
2013-02-16 19:21:14 +01:00
Lynix 2cb1f121a5 Improved readability
Former-commit-id: 8cb71d9f3ba34be26a1133e2f4b118c86a8cc0ed
2013-01-24 00:13:24 +01:00
Lynix 962c330390 (Rect|Cube) Fixed ExtendTo method (Close #6)
Former-commit-id: 066d87f52361d1c30ec6521b637308ee4541bba1
2013-01-03 19:17:04 +01:00
Lynix e8842f1ba8 Revert "Optimized NzNormalizeAngle"
This reverts commit 1ed4af0b903b3fae59c633567b49ebda61797cc2 [formerly 683c7e913ee2f293d299c1d0a4abaf6c65116598].


Former-commit-id: 1c687a7d018e277408b0e390d37bec13c454d4a1
2012-12-08 22:20:16 +01:00
Lynix 783c1d5584 Optimized NzNormalizeAngle
Former-commit-id: cbdc09b7dc89c03c178a7b0a22571e810598c6fb
2012-12-06 01:05:40 +01:00
Lynix b4282e6a6e Fixed Vector4 >(=) comparison
Former-commit-id: d3c5d233bb565dbfa0535487fe21bd00ad0281b4
2012-12-02 23:50:32 +01:00
Lynix 6a3087cc26 Optimized Vector <= comparison
Former-commit-id: 8668b8ff78387262f0e21f038b6ca0240c513476
2012-12-02 20:39:49 +01:00
Lynix 437c7047c9 Reintroduce Vector comparison operator
Since it can be used for integer vector, also fixed comparison
technique.


Former-commit-id: 3a193ed21beb4d9b7d311eb29bc2852b0776a41c
2012-12-02 16:48:56 +01:00
Lynix 5c7a9e1011 Removed Quaternion/Vector comparison operator
Made no sense


Former-commit-id: 3c2a822cd3142e2bc931021ef8874602630be8cf
2012-12-02 00:37:21 +01:00
Lynix 4fbe508960 Removed debug error when copying a matrix
Former-commit-id: 60c57643b5a520abe96fdca83f2d0c28f3bc1f11
2012-11-27 20:25:14 +01:00
Lynix c1879d6bf9 Fixed Vector3::Make[Forward|Left] not returning
Former-commit-id: be947d6b5c7c1a353fd035f3a5c1c495066ff7ac
2012-11-22 11:44:32 +01:00
Lynix 70ef422950 Big skeletal animation update
Added MeshInfos demo
Added MD5Mesh/MD5Anim loader support
Added Node class
Fixed ResourceParams not being exported
Added support for skeletal animation
(Animation/Mesh/Joint/SkeletalMesh/Skeleton)
Meshes are now only stored with VertexStruct_XYZ_Normal_UV_Tangent type
Moved Sequence declaration to Sequence.hpp

-Animation:
Renamed Create to Create[Keyframe|Skeletal]

-AxisAlignedBox:
Added Contains method
Added GetCorner method
Added GetCube method
Added Transform method

-Cube/Rect:
Added GetPosition method
Added GetSize method
(Almost) Fixed ExtendTo method
Fixed GetCenter method

-File:
Added GetDirectory static function
Added GetPath method
Renamed GetDirectoryPath method to GetDirectory

-Math module:
Fixed constructor/methods taking a non-const array
GetNormal/Normalize methods now takes an optionnal integer pointer
(returning length)
Made all classes default constructor trivial
Inverse, MakeIdentity, MakeZero, Normalize, Set methods now returns
reference to object

-Matrix4:
Modified methods to avoid copies
Removed COW (Too much overhead)
Removed Concatenate[Affine] static function

-Mesh:
Renamed Create to Create[Keyframe|Skeletal|Static]
Renamed Skin to Material

-MeshParams:
No longer takes declaration argument
Renamed loadAnimations to animated
Storage default to BufferStorage_Hardware if supported and
BufferStorage_Software otherwise

-OpenGL:
Added glGetBooleanv function
Added glIsEnabled function

-Quaternion:
Added ComputeW method
Added Conjugate method

-Renderer:
Added IsEnabled static function
Fixed GetLineWidth function not being static
Removed SetVertexDeclaration

-RenderWindow:
Made CopyTo[Image|Texture] method constant

-Resource
Fixed RemoveResourceListener crash

-ResourceLoader:
Loaders are now used in a LIFO context

-Stream:
Renamed GetLine method to ReadLine

-String:
Fixed Simplified

-Utility module
Added configuration define for strict resource parsing

-VertexBuffer
Now takes a VertexDeclaration pointer

-VertexDeclaration
No longer throw an error when getting a non-existing element


Former-commit-id: f7358c1231d6af48b799d2f24f077a001e16785b
2012-11-21 19:20:32 +01:00
Lynix 4c23ccf1c6 (Matrix4) Renamed Destroy to Undefine, fixed bug
Fixed Transpose() not checking COW ownership


Former-commit-id: de2c64b9aef5abf2f73ce6cff2fe8442c1c382c5
2012-10-26 14:08:30 +02:00
Lynix 61c081ace3 Fixed and improved Matrix class (See description)
-Added ApplyScale
-Added Destroy()
-Added GetInverseAffine
-Added Inverse(Affine)
-Added (Make)Transform method, generating a TRS transform matrix
-Fixed COW
-Inverse methods now takes an optionnal boolean pointer


Former-commit-id: 84e7c679c242876f9b0888875b37afa12eed311a
2012-10-24 22:32:46 +02:00
Lynix 8712de3118 Cleaned NzNormalizeAngle code
Former-commit-id: 3d984db7632e0c9cba032d22b1470828326c0ad9
2012-10-24 18:22:07 +02:00
Lynix 855b3676e8 Fixed quaternion interpolation
Former-commit-id: b43671708fb9e64517a67ba070167587688457fb
2012-10-24 18:21:33 +02:00
Lynix 5bbc8d0fa4 Fixed debug-mode compilation
-Also added multiplication operator and equality comparison to Cube and
Rect


Former-commit-id: b4194a50fbe3025d3be1fc25d48a85d5a05fc5ac
2012-10-08 23:08:46 +02:00
Lynix 94268ae6b2 Fixed typo
Former-commit-id: 3a47a8981692b57ccad50e1044c1139c34bf9c75
2012-10-08 15:35:02 +02:00
Lynix cfd54b859d Added linear interpolation (Lerp) to math module
Former-commit-id: 5920e21f25d42701a1895734eca492fdf5351669
2012-10-08 14:45:29 +02:00
Lynix 7bab3d9443 Cleaned code
Former-commit-id: 65b235b0c8326e060ec7032bb2a153e22518a25a
2012-10-04 09:32:55 +02:00
Lynix aaca9349fd Fixed Matrix4 equality comparison
Former-commit-id: cb1e21196c2053138a8d70bc09d39ecbf7b83ba8
2012-09-30 23:11:43 +02:00
Lynix a73cd1374a Normalized line ending
Former-commit-id: bd061c48bdc8f0d26159dac3b41017defef5ae1e
2012-09-21 14:24:48 +02:00
Jérôme Leclercq cd5a1b7a5e Added RenderTextures (And many others things)
-Added Forward, left and up vector (Vector3)
-Added Matrix4::ConcatenateAffine shortcut
-Added Quaternion::GetInverse() and Quaternion::Inverse()
-Added Resource listeners
-Added Depth and stencil pixel formats
-All enums now have an ending "max" entry
-Animation/Mesh::Add[Sequence/Skin/SubMesh] now returns a boolean
-Contexts are now resources
-Enhanced AnimatedMesh demo
-Fixed MD2 facing
-Fixed Vector3::CrossProduct
-Made Resource thread-safe
-Made OpenGL translation table global
-Many bugfixes
-MLT will now write malloc failure to the log
-Most of the strcpy were replaced with faster memcpy
-Occlusion queries availability is now always tested
-OpenGL-related includes now requires NAZARA_RENDERER_OPENGL to be
defined to have any effect
-Pixel formats now have a type
-Renamed RenderTarget::IsValid to IsRenderable
-Renamed Quaternion::GetNormalized() to GetNormal()
-Renamed Texture::Bind() to Prepare()
-Renamed VectorX::Make[Ceil|Floor] to Maximize/Minimize
-Removed MATH_MATRIX_COLUMN_MAJOR option (all matrices are column-major)
-Removed RENDERER_ACTIVATE_RENDERWINDOW_ON_CREATION option (Render
windows are active upon their creation)


Former-commit-id: 0d1da1e32c156a958221edf04a5315c75b354450
2012-09-20 22:07:30 +02:00
Lynix 40ec2003b4 Added Audio module
Fixed examples resources not being commited
Temporary removed static build configurations
2012-08-21 15:04:00 +02:00
Lynix 5619ddb0b1 Changed all the files encoding to UTF-8
Named modules in licence informations
2012-08-10 03:21:37 +02:00