Commit Graph

177 Commits

Author SHA1 Message Date
Lynix c42eff2db0 Added CallOnExit class
Former-commit-id: d4b6bb17a8183f46e4631d727fc8056eb2fcb254
2014-02-18 01:01:30 +01:00
Lynix 4df6c30a26 Fixed ParameterList placement new conflicting with MLT
Former-commit-id: 97ca15d16e20e42427fceeea4f96a2e6b857dc83
2014-02-18 00:52:23 +01:00
Lynix 908e79df65 ParameterList destructor is no longer virtual
Why should it be ?


Former-commit-id: ea3393f6d5418cfa16b396104e872c7a03227238
2014-01-20 09:35:03 +01:00
Lynix d05cc9ce0c Improved ParameterList interface
Made it easier to handle errors and use default value


Former-commit-id: 1891efa0b0196b2c6602e52631e5e6cefb529137
2014-01-19 12:02:59 +01:00
Lynix 47959eaaeb Added ParameterList class
Former-commit-id: c592d0a09c33aa23b5efe635734c52b726364085
2014-01-19 10:56:45 +01:00
Lynix 151a34b35b Added String::Set method
Also improved performances in some cases


Former-commit-id: f88dbd0685b8779715e316e9d85ec005ab72e1fb
2014-01-15 14:40:15 +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 9389e1ea05 Changed DynLib internal
Fixes the "Assimp32.dll not found" bug


Former-commit-id: 662adba33c5d9cfbd23c8b0af0670626070baaa9
2014-01-12 10:33:03 +01:00
Lynix 9ac4df3c6c Added move constructor/operator to DynLib
Former-commit-id: af6c6b2ad7803a9ae6d7106188a0b69e341835c0
2014-01-08 10:48:23 +01:00
Lynix 3dd8b8fce1 Modified DynLib/PluginManager interface
Former-commit-id: 2dae56cad852a46c9bac828cc7775a4da42c96cf
2014-01-05 15:30:27 +01:00
Lynix 6568cc7995 Fixed Color::operator[+|*](=)
Former-commit-id: b49f7e60af324d28862948f066faa55bbe5f4c87
2013-12-26 11:39:39 +01:00
Lynix c2579bcf10 Fixed ResourceLoading not recognizing uppercase extensions
Former-commit-id: decf98cfc6681a416c39c45c4c5acd880aa870ce
2013-12-09 14:17:16 +01:00
Lynix a9af5523ee Added cone primitive generation
Lacks normal/tangents/uv


Former-commit-id: 682bb7ea926361bfb10807f6addf98f8fd4e7d75
2013-12-09 14:15:34 +01:00
Lynix 55aed0ec68 Rewrote Task Scheduler
Better and faster implementation


Former-commit-id: d765415ca0576cd843480292e30c2d7bafa7f66a
2013-11-30 13:48:01 +01:00
Lynix 0fa18c3924 Fixed PluginManager not being exported
Former-commit-id: 86f49a1ea6aff817bf0357ce57b9ef1177663a36
2013-11-06 23:54:18 +01:00
Lynix 7f7e8d8567 Fixed ErrorFlag not being exported
Former-commit-id: 0b24f1beb68333806bb6b29786e1ea05a0802638
2013-11-06 23:53:55 +01:00
Lynix a410e8856a Improved Error system
Former-commit-id: ddd08841d30575713f4a28ac02566f92791e5539
2013-10-09 10:14:09 +02:00
Lynix 2fd86dc406 Added texture rect parameter to primitive generator
Former-commit-id: 5efc0fd1bcc2aad9cd4b75ff9fb8b29d84bfd363
2013-09-21 09:05:37 +02:00
Lynix 3167531b39 Fixed some VS warnings
Thanks to Fraggy again !


Former-commit-id: bd0eea66714701b065892d8b69d576e7b3615dd2
2013-09-21 00:10:10 +02:00
Lynix 6440d38c5c Fixed some warnings about types
Thanks to Fraggy


Former-commit-id: e3b3a8421b4c49884e5757814f51cfcecc14a878
2013-09-20 23:25:04 +02:00
Lynix 0546019da1 Improved error message
Former-commit-id: d47c8651acc368bb7091785e156d99c849c19dc3
2013-09-20 21:46:58 +02:00
Lynix 72a57fbf4c Fixed crash when resources in use by the Renderer are released
Former-commit-id: 98eedb556f0387f0a5c1cafde2fc74645d1d0457
2013-08-26 00:40:45 +02:00
Lynix bf4b762a5d Renamed CORE_DUPLICATE_TO_COUT to CORE_DUPLICATE_LOG_TO_COUT
Former-commit-id: fc877ab4467261e052f167e39471bc8b3b0b6c5e
2013-08-24 21:59:21 +02:00
Lynix e31a670041 Minor changes
Former-commit-id: 5954ff863d8f51d7ed47a1b84ae9ff0a5348ecce
2013-08-16 00:27:42 +02:00
Lynix d4cff9946e Improved ResourceListeners
Former-commit-id: 8016c23cb75aab94762a1e2838dbbcac2093119b
2013-08-09 16:28:07 +02:00
Lynix c6f89757b6 Fixed missing noexcept
Former-commit-id: 58276c2ba77d0242fade3b29034f28871b48a987
2013-08-07 01:10:52 +02:00
Lynix 901b917d37 Fixed Color::operator+ and operator*
Thanks to Overdrivr


Former-commit-id: 696e2a35f4e0243577a56feeb16e2268f25290d3
2013-08-06 23:15:22 +02:00
Lynix 19e02a900b Added Directory::Exists
Former-commit-id: 51e6b909b323074401b0200747db35f2e4b1c42a
2013-08-03 20:20:30 +02:00
Lynix f47ecfe414 Added unsigned int constructor to ByteArray/String classes
Former-commit-id: 2b52c0dabcd6fbf4ad33b31ef3cb84e668edcd54
2013-08-03 20:18:12 +02:00
Lynix ce028e497a Made current file relative to engine directory
Former-commit-id: 7a664df265a1d1b7f9b3594e34418163cc023eda
2013-08-03 17:35:08 +02:00
Lynix ae53b01ca1 Added File::Write(ByteArray)
Former-commit-id: 7f064cc17d940b5d2e3229264598cb0f1c778c80
2013-08-03 17:13:34 +02:00
Lynix ccb3adfc1c Cleaned ByteArray class
Former-commit-id: a155b789634cb1e7d875be2f4d1ba6cc896b4212
2013-08-03 17:13:16 +02:00
Lynix 29ee943871 Made non-filling version of ByteArray::Resize
Former-commit-id: 0fec6b5749a786fc1999b9fc718a481d47c52895
2013-08-01 23:14:49 +02:00
Lynix 48e5af6373 Added NazaraDebug macro
Former-commit-id: 5a8cec09bd4a7283f86d030ac2d867cda23736cd
2013-07-30 21:31:28 +02:00
Lynix 4352083c4b Added ShaderManager (Experimental)
Former-commit-id: 327e373f2b932e31184e88c5f29bd5bd8fa3ba46
2013-07-15 00:23:04 +02:00
Lynix 68d5f9a8e6 Added default subdivision value for planes
Former-commit-id: 3884f79e74e52b4d78140f3cf96c02768d7ba440
2013-07-14 00:47:23 +02:00
Lynix 5b730f1d4c ResourceListener no longer add a resource reference
Former-commit-id: b249d472b4140b85e4e286552323fde6b9b66bd7
2013-07-09 01:06:11 +02:00
Lynix b035852576 Optimisations
Former-commit-id: 81d277a49b57f061a6339678bd953054e434c613
2013-07-03 01:17:22 +02:00
Lynix 4abefc3e93 Reworked IndexBuffer, Vertex[Buffer|Declaration|Structs]
Former-commit-id: e3f637f2680afda57a444f73b8f7ad681bb1b8a5
2013-07-01 16:14:29 +02:00
Lynix b7c4d607ce Improved interface of Primitive
Former-commit-id: bcd4f2eb247c8f7fb59d864884e6ecda5f60afb1
2013-06-25 14:06:04 +02:00
Lynix 3609f31708 Added std::hash for String, made use of unordered_map
Former-commit-id: 20f3d12bc3222873706949f0a7d0a131e237a247
2013-06-23 16:53:37 +02:00
Lynix b0c46b2384 Revised String class
Renamed String::Substr to SubString


Former-commit-id: 6aa925799e71af6916f7808368a3faa26efbe1bc
2013-06-19 02:25:19 +02:00
Lynix c1e57c829c Added experimental implementation of ByteArrays
Former-commit-id: c95729bb45059c199344471a61042d98090034c8
2013-06-18 21:07:53 +02:00
Lynix 880c2aa32c Plane primitives no longer rely on normal vector
Former-commit-id: 66e1e2a83799055ad773f7b145e569469f68279a
2013-06-18 16:39:46 +02:00
Lynix 54bc1d77fd Removed useless config defines
Former-commit-id: 37daf78c04fe1e810ab4e0ca6880c857797f7020
2013-06-15 16:11:19 +02:00
Lynix 6b2af70f1d Cleaned interface
Former-commit-id: cdd284de8396d5988853c84d5db17bfa6fa0ba51
2013-06-09 22:05:05 +02:00
Lynix c76c419867 Cleaned interface
And fixed some VS warnings


Former-commit-id: 8c89fa1d4dc92a362053e4cdeabe20537fcec2a6
2013-06-09 11:25:17 +02:00
Lynix f233db0b4e Changed default recursion level of icospheres
When used with PrimitiveList


Former-commit-id: b0010d2eb22535c7a2574f76546dc5d42ab4da5a
2013-06-05 19:49:56 +02:00
Lynix fbc0d7404e Improved code
Former-commit-id: 33082b8f9d55c7a3b9550c788eb27fc613c08032
2013-06-05 13:24:33 +02:00
Lynix 573b4ebf79 Fixed forgotten file in last commit
Former-commit-id: ac75cc7dacda565f0a12ac0afa58cf939b2b2e5d
2013-06-04 14:52:12 +02:00
Lynix 9239ff8881 Box primitives now uses vec3 lengths parameter
Instead of a Box parameter


Former-commit-id: 6c433e883252c6db8eba3b791d1e9364ce5d3b1e
2013-06-03 17:14:09 +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 65c08442ce Added Primitive(List)
Former-commit-id: 3080a1846616fb2dac25e6d341c8a9220f406de4
2013-05-30 13:22:10 +02:00
Lynix e0229ab390 Cleaned Thread class code
Former-commit-id: d8c918c7a3c50ed3ed2f225303540d3860863d4e
2013-05-30 02:59:08 +02:00
Lynix 8f09eea340 Renamed XImpl to AbstractX (More consistent)
Where * is Buffer, Hash and Shader


Former-commit-id: a99681ab1d515c9b39e6ba5f447c9000ef1092b8
2013-05-21 13:54:10 +02:00
Lynix 991d841d57 Made String(char) explicit
Former-commit-id: 02f5ead8fe60b825464f956d9fc6ea4689bda44b
2013-05-11 13:51:56 +02:00
Lynix 459c7a4d07 Made use of atomic variables
In order to replace mutex-protected integer values (Performance
improvement)


Former-commit-id: d40ed2444111f00dab372f2371fe91cfd9cd2472
2013-05-03 23:12:58 +02:00
Lynix 6699ce328f ResourceLoader SteamChecker now return a ternary
Former-commit-id: 2ee274ebb2b61f39e93f6ff2306b5a326b158594
2013-04-27 11:51:42 +02:00
Lynix 86cd0ddbe1 Initializer now uninitialize in the inverse order
Former-commit-id: f6edf57dbad8e131bec0b1ed02e96d41aa40c3aa
2013-04-16 11:58:51 +02:00
Lynix f8e942af65 Improved error message
Former-commit-id: e7193cb36ffba475c6b1c37822676da31042bf15
2013-04-09 11:33:18 +02:00
Lynix 8c77d6e990 Fixed leaks
Former-commit-id: 2f0a73b3bb5df04c13200d71dc198e2fe9ec30e1
2013-04-06 00:13:56 +02:00
Lynix 91a272482e Initializer will initialize several class at once
Former-commit-id: b64c87006e5fd237399b623fca32ec03d0d3d50c
2013-04-03 16:42:54 +02:00
Lynix 8694f71c2a X::Initialize no longer takes arguments
Former-commit-id: a8233235e89112630f2d31c637723443bd0829a4
2013-04-03 16:41:57 +02:00
Lynix d8c5f4a0fd Renamed TupleUnpack to ImplTuplUnpack
Former-commit-id: 34c987536e7835e411f51a5a87eb2cb1eaf29ea2
2013-04-03 14:55:32 +02:00
Lynix e617783999 Improved resource loader error message
Former-commit-id: 3a8c565551b38a2ec3311db3d134e641d46527f8
2013-03-26 01:01:59 +01:00
Lynix ddc900185d Added String::Append(str, length);
Former-commit-id: a1c16d5966221cffe1f28b20f099922078360818
2013-03-26 01:00:29 +01:00
Lynix 5dd2d0d6a7 Changed Resource::SetPersistent default argument
Former-commit-id: 803534a0216d85f96e6f6f7810e5e76ebcc8bb44
2013-03-24 01:07:01 +01:00
Lynix 9c88cbfa84 Fixed ResourceRef not removing references
Former-commit-id: 4f3578aeb60ea6cba6f18ba7d5f0f0e9a06a05c9
2013-03-24 00:59:16 +01:00
Lynix 8f21a75c43 Reworked ResourceLoader
Former-commit-id: 9809e7fcd3657dfe90a0795986d0918f4ae1823c
2013-03-23 22:49:06 +01:00
Lynix b82cbc074b Optimized ResourceRef assignation
Former-commit-id: 9dfdadb8e34f17c93caabef12f097504c89ee51b
2013-03-16 01:01:16 +01:00
Lynix 63fae2f9ca Removed useless comments
Former-commit-id: a80cc9caf7a113fd37e322c0f7fbf26fb2747cba
2013-03-15 03:14:27 +01:00
Lynix 6c2fb1eb89 Added ResourceRef (Automatic resource reference)
Former-commit-id: 97a0b2732f4dc443b8e1676e68b33b1b53ddf4fb
2013-03-15 03:09:58 +01:00
Lynix 6b2690ef30 Fixed files encoding not being UTF-8
Also updated copyright texts for some files forgotten in the last commit


Former-commit-id: 79f158a7943c32f76a9a1e80fba109f15a3b7346
2013-03-14 00:14:16 +01:00
Lynix 32b1d02cec Updated copyright texts
Former-commit-id: 81483f7a94935c925e53b7f450e42635b1357833
2013-03-13 23:23:41 +01:00
Lynix a20818d66b Added interfaces
Former-commit-id: dfe596f28917dd5358e0bb87269fcfd4efa74f1c
2013-03-02 01:03:20 +01:00
Lynix eca2ec3115 Stabilized TaskScheduler (Still buggy)
Former-commit-id: a604c6616065342b21d2c11c27974ec11935a852
2013-03-02 00:26:48 +01:00
Lynix 00d636fb1c Changed module initialisation behavior
Former-commit-id: f3901c7785ab89b113afd961d7a51b609db2e314
2013-01-29 01:57:51 +01:00
Lynix 07f8f5d029 Added experimental PluginManager
Former-commit-id: 717e0a6b8a729a4c7c3bf0f377a93028543a1e2d
2013-01-15 16:54:41 +01:00
Lynix 3080ed8a43 Deleted TaskScheduler constructor/destructor
Made no sense


Former-commit-id: 9ce8eb9a565db98d8124a2ca941897365ba45885
2013-01-15 16:33:46 +01:00
Lynix a186a66b1f Added NAZARA_DYNLIB_EXTENSION macro
Former-commit-id: bdf82a80846fd599328d2f9ff4454d9050eda091
2013-01-15 15:43:46 +01:00
Lynix f338cc3609 Added Resource::GetResourceReferenceCount()
Former-commit-id: 1e07449a9a28887f2fd6fbc211590b360ec16dc1
2013-01-12 18:53:44 +01:00
Lynix 41fb7f7ae5 Removed todo comment
Former-commit-id: da05f6ee8aeb04e3b88c225b9cfded0cb2e70aa1
2013-01-03 12:31:27 +01:00
Lynix 73cb237925 Added HardwareInfo::IsInitialized()
Former-commit-id: ef668ac6d2e92a05730b56c892a693a21c7d651e
2012-12-13 19:57:05 +01:00
Lynix 7820a3096b Refactored HardwareInfo
-Can now return processor brand string
-Can now return processor vendor name
-64 bits is now a processor capability


Former-commit-id: 02d0ded16911a88643f4c6799b234a7b18eebefc
2012-12-13 17:32:04 +01:00
Lynix 8376fb38cf Module can now initialize optionnal classes
Former-commit-id: 899007b7879451d15d0808a03b8dfea0cd3413a4
2012-12-08 22:21:20 +01:00
Lynix 6f495c654a Added TaskScheduler::GetWorkerCount()
Former-commit-id: db4bf747441a13f2d824410aa5be264b300e95d4
2012-12-06 01:01:26 +01:00
Lynix ef567bd223 Added Task Scheduler
Former-commit-id: ac37f749ae78f364db3d3edfabc8221802579989
2012-12-03 01:30:04 +01:00
Lynix 023e497777 Revert "Simplified Thread interface"
This reverts commit 49927a03e4a9bfd4681691bb859b08374cd309c6 [formerly f3cfc12d8c18eef8a8aa21c164ad994fff4a33b7].


Former-commit-id: 8315c5f18d29aff59749c2efe98208ee3f5e1a42
2012-12-03 00:25:39 +01:00
Lynix b775542e4d Simplified Thread interface
Former-commit-id: 5cc7c51be1bf8fe8f13e3b4d25b051ff024f4ebf
2012-12-02 23:43:08 +01:00
Lynix 3d8549740e Moved constructor prototype
Former-commit-id: a399ce2633c20bf41c7ba56cb346ced607043fc1
2012-12-02 23:05:28 +01:00
Lynix cbc98ce3f0 Made NzThread interface mimic std::thread one
Hopefully fixed the threaded window bug


Former-commit-id: 6dc3ca2a8bee1da591a9b97d202d4b73b10be8eb
2012-11-29 16:51:01 +01:00
Lynix 0a2e19fa22 Merge remote-tracking branch 'origin/3D-Engine'
Former-commit-id: 1781615fc780accbe6c11d55fd896038d97ffec9
2012-11-29 10:11:30 +01:00
Lynix 64601a72e7 Fixed ResourceLoader bad stream pos after recover
Former-commit-id: d7c7bb33e055ca44ca5690294b504d6ccb644dde
2012-11-27 21:36:04 +01:00
Lynix 4fbe508960 Removed debug error when copying a matrix
Former-commit-id: 60c57643b5a520abe96fdca83f2d0c28f3bc1f11
2012-11-27 20:25:14 +01:00
Lynix 18baa6b8c1 Fixed typo
Former-commit-id: 4254892b447457b57cf9657f87ecf32a1ec899fe
2012-11-25 16:12:57 +01:00
Lynix 9cec8c3a4b Fixed typo
Former-commit-id: 3de64e02311033aa54524e33d7d136c9c405d3f7
2012-11-23 17:58:22 +01:00
Lynix faee0b93b5 Added HardwareInfo class
Former-commit-id: 3db2f8f11d58b4b71b85f749ce2a12dcfff986bc
2012-11-22 11:07:02 +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 b219b19710 Fixed Tuple.inl including Utility debug headers
Former-commit-id: 259b43f54669c6b58e04ee16719df73b441b72dd
2012-10-04 09:23:39 +02:00
Lynix 516bf7b3b9 Fixed NzStream options
Former-commit-id: 1479dd2bbed9587af7b9b7c165192709478f30e1
2012-10-04 09:22:59 +02:00