Commit Graph

567 Commits

Author SHA1 Message Date
Lynix e907db7de1 Core/ObjectRef: Make hashable
Former-commit-id: 42dd274e98f24c09612321e2f8d0e957463748d8
2016-01-19 12:19:27 +01:00
Lynix c9a63bc72c Core: Bring back MemoryStream class (It's not perfect but necessary until a better replacement comes out)
Former-commit-id: e3106b98c9825e313525298a8d46ff9c40bf5027
2016-01-15 02:24:34 +01:00
Lynix f9394e7af2 Merge branch 'master' of https://github.com/DigitalPulseSoftware/NazaraEngine
Former-commit-id: 3569a054e81dff3d44e433bedc9ef62526ebe367
2016-01-08 01:30:27 +01:00
Lynix bbaa328530 Core/Bitset: Replace static members by static constexpr
Former-commit-id: 0c2a2eb8d766f544016068cdc4be859be2b20dd5
2016-01-08 01:28:49 +01:00
Lynix adf5946711 Core/Console: Add CountOf function
Former-commit-id: 8ea1456bc8debae102ca616176febb15d3759d17
2016-01-07 13:33:26 +01:00
Gawaboumga 7f4a7c1012 Add override where missing
Former-commit-id: 2a876a280bc29f45ba81cedff5a3efeb5b70efab
2015-12-30 15:15:20 +01:00
Lynix 4c72e27784 Lua/LuaClass: Add pointer objects support
Former-commit-id: b4cf6fb6674278ed341a27d2a8e432845531a333
2015-12-13 16:35:42 +01:00
Lynix 3cdf6a9f44 Core/String: Replace Resize argument by flags, it is now capable of handling UTF-8 sequences
Former-commit-id: 472e3504de06166049fcf1b850c38e5646a2d872
2015-12-11 13:35:44 +01:00
Lynix 9cf5e4b68c Merge branch 'master' into NDK-ShadowMapping
Former-commit-id: 83435ab51753299b30a102871fbcd5558d2ac4f1
2015-12-09 00:59:07 +01:00
Lynix 9f9705ccfa Core: Rewrite Log system
Former-commit-id: 42bc22a2172507d1dbbdffe570f36067366a67e3
2015-12-07 18:18:14 +01:00
Lynix 6bc285cb00 Fix compilation for GCC
Former-commit-id: 7c51c59904fa86f952b704d175b09b32640d9395
2015-11-28 02:07:56 +01:00
Lynix 1e5cad5b24 Core/Unicode: Fix Unicode export
Former-commit-id: 670984e75c25b3986f7cde250db073421e4b935a
2015-11-25 18:28:33 +01:00
Lynix b5fb11b5c2 Core/Serializer: Add FlushBits method
Former-commit-id: 64b8d4277001ab763dc92c0a157ebce72a8bfef8
2015-11-25 18:19:38 +01:00
Lynix bbe8a776e8 Fix a shitloads of warnings on VS
Former-commit-id: fca61118f4e0530ed2eaaf9ff96de29806aa5aa8
2015-11-25 18:19:26 +01:00
Lynix 4721bf80c3 Network/TcpClient: Make TcpClient a Stream
Former-commit-id: 2176748166ae84b609d5a336495e6ff3550a765d
2015-11-23 18:22:12 +01:00
Lynix 6829863d81 Core/Enum: Rename OpenMode_Current to NotOpen
Former-commit-id: f4395871d68d8f6da5ca6dbcda2177ad6aae2fc8
2015-11-23 14:15:29 +01:00
Lynix 7f220ce48c Core/Serialization: Add bit serialization
Former-commit-id: dbaf3a2d40a85955b4d48efba72a5df9d92d0eb1
2015-11-23 13:45:35 +01:00
Lynix c93e4e901e Core: Add Serializer/Unserializer
Former-commit-id: 50fdf56da4fef46ec78995cb8fc277cbc9a11ebc
2015-11-20 14:23:10 +01:00
Lynix ed961f5ba8 Core: Merge InputStream and OutputStream to Stream
Remove serialization support from Stream


Former-commit-id: 7a761e4fcd07cab561f13e4709c4492ed18da88a
2015-11-20 13:52:49 +01:00
Lynix 35b27bbe67 Core/MemoryStream: Add hash overload for MemoryStream
Former-commit-id: ab618e0db87bd85994a3b11a29c7f38e28d8aae3
2015-11-19 14:03:26 +01:00
Lynix 11f85ab9bb Core/MemoryStream: Add default constructor and getters
Former-commit-id: dde0bbc7e697512d94275a807e18299eb271197e
2015-11-19 13:57:39 +01:00
Lynix 1c8a09f90c Core: Replace serialization arguments by context structures
Also fixed some endianness errors


Former-commit-id: 450849e681a9b002c3d501a856a8481470d08dea
2015-11-19 13:25:07 +01:00
Lynix 6eada337b8 Core/File: Fix compilation
Former-commit-id: 69d173fe734dde3d0ca0f008826addce0d5d50bf
2015-11-19 12:18:27 +01:00
Lynix 3fb9e57360 Core/Serialization: Add correct endianness handling
Core/File: Remove endianness handling


Former-commit-id: 6f7bba52057f36c507a024f7a7ea873658a3cfd3
2015-11-18 18:49:38 +01:00
Lynix be01b6f3b4 Core: Add serialization interface
Former-commit-id: cfa749dba1b6f23ef8f38519e0bc9ad9492e3db3
2015-11-18 18:29:20 +01:00
Lynix 167f3e4a27 Core: Switch Hashable struct to HashAppend function
Former-commit-id: 2a20eca0e75bf4067d390f4f5e446de78f26799c
2015-11-18 18:28:56 +01:00
Lynix 00423c4211 Core/File: Remove useless SetOpenMode method (equivalent to Open)
Former-commit-id: e02f4f758adfd2c0870920997acac71a47d51c3f
2015-11-18 18:27:01 +01:00
Lynix ddc343a630 Core: Rename MemoryStream to MemoryView, add MemoryStream
Former-commit-id: c180d5f34fa7c477f35c4b70ebf7b64e3f35fe3d
2015-11-17 14:06:57 +01:00
Lynix a1bb104255 Core/File: Fix crash
Former-commit-id: ee797ea7ba228fa814f2c87250c6dd6c32a9982f
2015-11-17 14:05:46 +01:00
Lynix 8371ce068f Core: Update Stream interface
Add Open Mode to Stream level, Add IsReadable() and IsWritable()


Former-commit-id: 0da5fa798c0f3bd3bf1545cb57f6bc923b222de8
2015-11-17 13:19:44 +01:00
Lynix fb920f0016 Core: Add OutputStream class
Former-commit-id: a6b8f642e263833c75a338cc23266c94edbced6f
2015-11-17 12:47:13 +01:00
Lynix 9f7468d940 Core/ByteArray: Fix missing include
Former-commit-id: f1f90e4be3d7af42114f0bbe48e351584ab16e77
2015-11-16 14:05:04 +01:00
Lynix 21f223f1c7 Core: Reworked hashes
-Removed HashDigest class (replaced by ByteArray)
-Removed Hashable/Hash classes (replaced by ComputeHash function and
Hashable template struct)
-Fixed ByteArray operator<<
-Renamed File::GetHash to File::ComputeHash


Former-commit-id: cc5eaf2d4c88a556878190b8205e66713512e2d2
2015-11-16 14:04:39 +01:00
Lynix b64ea6f534 Core/String: Fix missing modifications
Former-commit-id: ac0e45fcc8caf8135542cb2fa6ab02b22182735a
2015-11-14 17:37:03 +01:00
Lynix dfa6f06337 Core/Error: Make NazaraAssert blocklike (fixing integration)
Former-commit-id: c6b7e10e30504ef14ef83d0a4d07f17adfd7b026
2015-11-03 22:34:46 +01:00
Lynix df8da275c4 Switch from Nz prefix to namespace Nz
What a huge commit


Former-commit-id: 38ac5eebf70adc1180f571f6006192d28fb99897
2015-09-25 19:20:05 +02:00
Lynix c214251ecf Update copy/move constructors/operators
Former-commit-id: b1faeeae9211a6c0ca29261d46929dc8c66ea0c4
2015-09-24 12:51:52 +02:00
Lynix dea3fb4e39 Convert spaces to tabs
Former-commit-id: b459cfe0c83f651cc660d42f7d3014c3b146f345
2015-09-24 00:55:57 +02:00
Lynix 2fd3872099 Core: Remove NonCopyable
Former-commit-id: f8c6d10ad0b1abb4a32e3c867b7f24fd4bde68a4
2015-09-24 00:37:21 +02:00
Lynix 1ffd2b724f Merge branch 'NDK' into NDK-ShadowMapping
Former-commit-id: 150a4149d50af6971fd5798c080f0c55e009a55b
2015-09-20 23:42:12 +02:00
Lynix b16abf0d09 Merge branch 'master' into NDK
Conflicts:
	build/scripts/module/renderer.lua
	build/scripts/module/utility.lua
	include/Nazara/Renderer/OpenGL.hpp
	src/Nazara/Core/String.cpp

Former-commit-id: 0a8054be56f01b12c604c88b829cb10b490a9d6f
2015-09-20 23:41:21 +02:00
Lynix 025d873228 Merge branch 'NDK' into NDK-ShadowMapping
Conflicts:
	SDK/include/NDK/Systems/RenderSystem.hpp
	SDK/src/NDK/Systems/RenderSystem.cpp

Former-commit-id: 2772ff703c9d68d536667c469aca85084be4b861
2015-09-19 14:47:02 +02:00
Lynix 2c752a38c3 Core/Bitset: Minor changes
Former-commit-id: 0d4e2007c83f34ca966615b55927cf34e88670af
2015-09-18 20:00:53 +02:00
Lynix b56a454a40 Core/ByteArray: Add missing implementation of Front()
Former-commit-id: 672b7bc1054d1a457245dcc15d4c5fafab9fc166
2015-09-18 14:10:24 +02:00
Lynix 466720abec Core/String: Fix IsNull() method (thanks to Unit tests)
Former-commit-id: dd4828c3c0e2d3423094cf018e70fd74deac0740
2015-09-18 14:10:15 +02:00
Lynix aa303f9028 Merge branch 'NDK' into NDK-ShadowMapping
Conflicts:
	include/Nazara/Math/Matrix4.inl

Former-commit-id: e4b7d178a7acba17c03de2b585af86324b8d75a6
2015-09-13 12:10:30 +02:00
Lynix 9f1c190985 Core/String: Replace manual memory management/COW by smart pointers
Former-commit-id: 27cab7f0642619ab47d53ed59c737992534f2979
2015-09-13 12:07:31 +02:00
Lynix 91ec7c7dce Core/ByteArray: Fix compilation/infinite recursion
Former-commit-id: 7e3dded8a79ca6110775891cf3f90f1ab5400483
2015-09-13 12:06:20 +02:00
Lynix ef511d9b11 Core: Temporary disable MemoryManager (its causing crashs during runtime with VS)
Former-commit-id: 317a3f6b4d8ac363393094d591550181c26e6f05
2015-09-13 01:16:25 +02:00
Lynix 32829863aa Merge branch 'NDK' of https://github.com/DigitalPulseSoftware/NazaraEngine into NDK
Former-commit-id: 3cd50359629d58a4e61744b94f3b7fc47ad551e4
2015-09-11 21:47:03 +02:00
Lynix 3d9da38e45 Core/Algorithm: Add Apply variant for methods
Former-commit-id: 6e34c37c56d916c040ef501190f02f35e9c734df
2015-09-11 14:09:59 +02:00
Lynix 73e03073eb Lua: Add automatic function binding
Former-commit-id: dcb1d3ca474c9e10f9a40428095a5ff752f5c4a9
2015-09-10 18:03:52 +02:00
Lynix 5888949bf9 Fix merge files
Former-commit-id: 27058f380928319efcdd7af6104a776296b2093e
2015-08-21 22:43:53 +02:00
Lynix 505f1dbb03 Merge branch 'master' into NDK
Conflicts:
	include/Nazara/Core/Algorithm.inl
	include/Nazara/Core/ByteArray.hpp
	include/Nazara/Math/Algorithm.inl
	src/Nazara/Graphics/SkyboxBackground.cpp

Former-commit-id: 42f52f71989fa805f69527fd07edb8405df06566
2015-08-21 18:55:58 +02:00
Lynix dea48a289d Merge branch 'master' into NDK
Conflicts:
	include/Nazara/Core/ConditionVariable.hpp

Former-commit-id: 84320f0a55ae9d8f80ff5211d30d99184c7b4213
2015-08-21 12:49:05 +02:00
Gawaboumga 376df6a3b7 Indentations
Former-commit-id: 0d82a4464cb9369bc4ca5cf2d7780c921eff953d
2015-08-21 11:32:29 +02:00
Gawaboumga 0b390e45a1 ByteArray rewritten
Now works internally with std::vector


Former-commit-id: 643f1d88b2959aed324743dbf91f831130a9198e
2015-08-21 11:28:04 +02:00
Gawaboumga 3dbcb25384 Transfert enumeration from file to enums
Former-commit-id: 0d9e191373affda50d0eb6c2376c7a23720e591b
2015-08-21 11:22:35 +02:00
Gawaboumga 8cda289b82 Indentation String
Former-commit-id: 86848a87089804d5152f80e960308f8b2eb12ff3
2015-08-21 11:11:04 +02:00
Gawaboumga b51e151930 Suppression unused file
Former-commit-id: 60221e1d8486e6a17a7e5368fd932628d9c52b85
2015-08-21 11:09:18 +02:00
Lynix 481a191693 Core/Algorithm: Replace UnpackTuple by Apply
Former-commit-id: dccf9a102e4287035184053e1d60abc0edaf1a1d
2015-08-20 13:35:51 +02:00
Lynix 1398ed7ebc Core/ObjectRef: Remove static_assert
Former-commit-id: 5050ce7a786053725d7e18fcc943bfb2ce3fee69
2015-07-02 13:01:23 +02:00
Lynix 0cb4726bf5 Merge remote-tracking branch 'origin/NDK' into NDK-ShadowMapping
Conflicts:
	SDK/include/NDK/Systems/RenderSystem.hpp
	SDK/src/NDK/Systems/RenderSystem.cpp

Former-commit-id: f62e9a27427d96893acd2381bb06ae928a1d3741
2015-06-29 21:05:09 +02:00
Lynix 9c1441cc82 Core/MemoryManager: Implement allocation filling
Former-commit-id: 12e6c293e6d51663971e3da4c160b12a6710430e
2015-06-28 16:03:31 +02:00
Lynix b7b5458c79 Merge remote-tracking branch 'origin/NDK' into NDK-ShadowMapping
Former-commit-id: 0c302477d672346eb50c12f8fa7e2b6a19d60779
2015-06-23 12:11:02 +02:00
Lynix 179f30861d Core/Bitset: Fix Bitset::FindNext
Former-commit-id: 20d18be6e8039fc386ef7c402878b3d29577b46d
2015-06-22 14:27:42 +02:00
Lynix 80208b0dc5 Core/OffsetOf: Remove constexpr (cannot be used because of reinterpret_cast)
Former-commit-id: 78142eb9033a1969f20055b2cecf1bc78152e896
2015-06-17 23:32:48 +02:00
Lynix c74de36e77 Core/Color: Fix warning
Former-commit-id: 518409a0b6dabd068c13873e7ac4e4be950a8480
2015-06-15 13:42:28 +02:00
Lynix f4c3ec51ed Final VS fixes
Former-commit-id: 6da44f94127f61de39710a52b8b3b73ce19c1269
2015-06-14 16:18:37 +02:00
Lynix 1fc17c8b53 Separate NAZARA_API into multiple defines (one per module)
To fix inter-module dependency


Former-commit-id: 64704f020e0af22e529d38527323ba977187d4d0
2015-06-13 22:31:29 +02:00
Lynix 251e21f006 More VS fixes
Former-commit-id: 356effb816b9527ff9e89ee3b99074c468455b08
2015-06-13 19:42:07 +02:00
Lynix 504eb96b93 Fix compilation under VS2015
Former-commit-id: fb7b3f377e34ea0c44a7fc65efbdb059581d772b
2015-06-13 17:14:19 +02:00
Lynix f60f8fa6a4 Core/Color: Fix warning
Former-commit-id: 7c91c17d9d9c1133e206154320032d554a15c26b
2015-06-12 00:18:24 +02:00
Lynix e97cc666a1 Core/Signal: Update comments
Former-commit-id: 3e802e6ae0b05c67cb7562567f733fd762e97eed
2015-06-08 01:00:25 +02:00
Lynix 5ce3c5a0cb Core/Signal: Fix disconnection while iterating
This is no longer an issue, you can now disconnect every signal as you
wish even while the iteration


Former-commit-id: 5caadaa860c62ce09f02f7555aa7c6adebc74fb9
2015-06-08 00:28:51 +02:00
Lynix a069b105e6 Fully replace listener system by signals
Former-commit-id: 032dfddd12cc3a792c71426148c758ffac3621f9
2015-06-07 20:42:41 +02:00
Lynix 358fab7115 Core/Signal: Add const-variant of member functions Connect overload
I do speak english very wheel


Former-commit-id: 4d688897a65ff6fcf793af8d10219bac9b28424a
2015-06-07 18:25:04 +02:00
Lynix 4e5cdea454 Core/Signals: Remove Connect/Disconnect macros
And make interface easier to use


Former-commit-id: 5b789c9acb694839cb173ae96392650d80d383b7
2015-06-07 17:28:19 +02:00
Lynix 004b53c590 Renderer/Renderer: Replace listeners by signals
Former-commit-id: c1293f7f7cc31c4122ba866fc44d93188917ad93
2015-06-07 16:52:19 +02:00
Lynix fe25249136 Replace Listenable system by signals
Former-commit-id: 16fb0b3e703ca4b41ceb97fab938cebb05f677d4
2015-06-07 15:16:11 +02:00
Lynix 261dffd931 Core/Signal: Make operator() const
Former-commit-id: 623f4908ca5e71d02365aea0b717d684a822ea5b
2015-06-07 03:36:41 +02:00
Lynix 303cdbb0cb Core/Signal: No longer return rvalue
Former-commit-id: 96ff0eb63fa0e22952783119be6b739a59cb422a
2015-06-07 03:35:54 +02:00
Lynix 991c1af1ca Core/Signal: Add default constructor and operators to ConnectionGuard
Former-commit-id: 0080c6bf19cab972945bf978c3d5461ee4228fce
2015-06-07 01:44:16 +02:00
Lynix 0b14711cbf Core/Signal: Add Connectionguard::GetConnection()
Former-commit-id: 78d0f6e72f15933fb4356d304a5a48ea3c163fbe
2015-06-07 01:31:57 +02:00
Lynix d43126eae5 Core/Signal: Fix incorrect forwarding
Former-commit-id: 4d437e98e89dcc52f44259371e18589a72fdbd27
2015-06-07 01:31:37 +02:00
Lynix 1a0057313c Core/Signal: Optimize
Former-commit-id: 36fee5057acabf1b6bb8ef93ad6741206e10121b
2015-06-07 01:08:08 +02:00
Lynix 32e55c2e72 Core/Signal: Add Connection object and Disconnection
Former-commit-id: 19cda39e3e9fbc5e26c716c413bafe41deecf7ce
2015-06-07 00:51:43 +02:00
Lynix f8682d227b More Cppcheck fixes
Former-commit-id: 62ab1caa04543da1a169812bb92a450d44f3aec1
2015-06-07 00:21:53 +02:00
Lynix d1258c2a6d Core/Signal: Add move Connect method
Former-commit-id: 1874faf23299ebac3e433195faa03c9eb6bd9ed4
2015-06-05 14:45:11 +02:00
Lynix ea3e15d5d3 Core/Signal: Add Connect helpers
Former-commit-id: aae537bdc764b66735356a1d335be4b468eb9f77
2015-06-05 14:12:36 +02:00
Lynix 0f27930467 Core/Signal: Add Signals (WIP)
Former-commit-id: eee55aa563f29c5604437f3c1a2b172af1a6410d
2015-06-04 15:20:16 +02:00
Lynix 656290d089 Core/Bitset: Add comparison operators
Former-commit-id: 7ca04f36fa001f322182c5e9457127f05432d373
2015-05-19 14:31:04 +02:00
Lynix 90e4a1ca52 Core/HardwareInfo: Added GetTotalMemory
Former-commit-id: 71289723115161dd253ccb65c1c91af65344c678
2015-05-19 14:13:48 +02:00
Youri Hubaut 2cb669a558 TaskSchedulerImpl for POSIX and compilation fixes
Former-commit-id: a402d40ac90cacf444b5832c49cfbdaf61f7f747
2015-05-16 13:10:54 +02:00
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 44ff678002 Core: Added Listenable class (Made class Listener system generic)
Former-commit-id: 3baed32d6720c6455f50af51f262292ece9943fa
2015-05-06 18:17:18 +02:00
Lynix e84bd4ed3d Core: Fixed warning
Former-commit-id: df4f09185f6ee273e34c671c62731cd938848354
2015-05-04 13:52:49 +02:00
Lynix 8b5deffe35 Core/Bitset: Fixed Test methods being not const
Former-commit-id: 440c03a78b4dcf8ec1566c1db30989c0145b5a78
2015-05-03 19:54:35 +02:00
Lynix 697e6714db (Bitset) Fixed PerformsAND not working right with empty bitsets
Former-commit-id: f4b70a9d1177c97f7dc376b6cc1d209520e2b19b
2015-04-13 00:13:44 +02:00
Lynix 51942c1eb9 (GuillotineBinPack) Improved readability
Former-commit-id: a65647370d30dfe110ba38c65afc850328f84b01
2015-04-07 17:42:00 +02:00
Lynix aedf416949 (Initializer) Added explicit (un)initialisation
Former-commit-id: 198287ca1cc4e8a53531263a90bcffbcab1ef2b2
2015-04-07 17:23:18 +02:00
Lynix 5c3720feb1 Merge branch 'master' into NDK
Former-commit-id: f118c029ca94296495957816f910d412ae8a56f2
2015-03-18 20:44:52 +01:00
Lynix d28154ab76 Added comments
Former-commit-id: e9297b7c0a4b85b2369abcba444d4cf89e04b95d
2015-03-18 13:03:53 +01:00
Lynix 99e0912163 (Bitset) Simplified Resize code
Removed old code


Former-commit-id: e82ec5e69ba9e4d91b7c65a5132b91fe3a60fd7e
2015-03-17 12:26:51 +01:00
Lynix 4c0c47240c (Bitset) Consistency
Former-commit-id: 4974483833cad392e105d2fc2dfc4d9f8d7310d3
2015-03-17 12:26:29 +01:00
Lynix b742f93643 (Bitset) Fixed last commit
Former-commit-id: 11dcae81e30db925d583112dfab0f0eb5f61f1a0
2015-03-16 21:54:26 +01:00
Lynix 70f9bb3aec (Bitset) Fixed Find* methods not handling empty bitsets
Former-commit-id: 48b9c83c0b786fffae18d5b5fff7bbbe89056c99
2015-03-16 21:44:30 +01:00
Lynix 2ca9989bfe (Bitset) Fixed missing implementation of Reset(bit)
Former-commit-id: a2b0c6e29b87303bdd624f2440e528cb832a8999
2015-03-16 19:21:36 +01:00
Lynix 860712b09f (Bitset) Added Unbounded methods
Former-commit-id: 898eecf4aa8ecf7c9ec85fc8c46c17a6c3badc34
2015-03-16 19:21:28 +01:00
Lynix 6b799b1887 (Bitset) Fixed missing include
Former-commit-id: 6f1a0df5d0bc69072489ccd3ce70455de4130c75
2015-03-16 18:02:25 +01:00
Lynix 458cdd7cab (Bitset) Added equality operator
Former-commit-id: b5145a1a0ad8031001927c29c49e0f1faae2d7af
2015-03-16 18:02:17 +01:00
Lynix 17961f42fd Added Bitset class
It's like std::bitset with a dynamic size


Former-commit-id: 704352d954c88e9cf829b41448d7761f89f59786
2015-03-16 17:23:55 +01:00
Lynix dd56dd6e29 (MemoryPool) Added some DOC comments
Former-commit-id: 5ddd0414541e59623956716739bf19827ce68049
2015-03-01 00:08:34 +01:00
Lynix e55574cb8b (MemoryPool) Added methods to construct/destruct object
Former-commit-id: cd58a108ff201be6e242701eb762e0151695f6e3
2015-03-01 00:02:41 +01:00
Lynix 655be2864f Fixed variadic arguments not being moved
Former-commit-id: 1130a384e982a792d04dc9490a12797cb73bc349
2015-02-28 23:59:26 +01:00
Lynix adb268fec8 (MemoryPool) Removed template and added movement
Former-commit-id: 0a6c890f9ebc84c3c8139c244b5232467cf06bf0
2015-02-28 23:33:40 +01:00
Lynix c3864a1acb Fixed HashCombine function under 32bits compilation
Former-commit-id: 2224a17279f057a922b67cb91b03823d033c51ec
2015-02-25 17:40:07 +01:00
Lynix 96a5bc950c Added HashCombine function
Former-commit-id: 852deae33143138f2841e226690bfef94d3ba2b9
2015-02-24 20:00:13 +01:00
Lynix cadeae5e21 Moved UnpackTuple to an algorithm header
Former-commit-id: 9abfd6edd40481c26cd07d070eb56fa6d0e6826a
2015-02-24 19:57:00 +01:00
Lynix a67d66bbd8 (HardwareInfo) Added Cpuid to the public interface
Also improved the code


Former-commit-id: 07025657e01ff21a3581204ce74e180c3a5e7737
2015-02-24 17:28:02 +01:00
Lynix ee6ca790a5 Fixed missing includes and warnings under VS
Former-commit-id: c06756b62b616e7322aced01062966247bb7654f
2015-02-21 15:04:07 +01:00
Lynix af94573f5f (RefCounted) Removed useless declaration
Former-commit-id: 0e8d1784f26a3e832ea6509065923613673806c2
2015-02-18 21:02:42 +01:00
Lynix 68b0acea65 Replaced header ostream include by iosfwd
Former-commit-id: 305b1b5bfed4c97fad7517ef379e6c0e57f88927
2015-02-05 23:34:12 +01:00
Lynix 4c659a6442 Fixed potential name conflict with user's code
Former-commit-id: ca4e2ec3973d45832fc6a6535750b2639f65fe23
2015-02-04 21:59:45 +01:00
Lynix 25dc252666 (String) Remade GetXBuffer, now called GetXString
And returns a standard string


Former-commit-id: 516735324a62cb6296e19d3be1960322073e5f3a
2015-02-03 21:16:17 +01:00
Lynix 29b61ec958 (MemoryManager) Added allocation logging
Former-commit-id: 6f7d5ae28b8a4bfecfc2dca5010524a3f2c88aaf
2015-02-03 14:43:58 +01:00
Lynix 622fce6f9c Regenerated global headers (and updated copyright year, again)
Former-commit-id: b5b24f4a3610e1dead2883afaded48bf3554669d
2015-01-30 22:33:41 +01:00
Lynix 993b2e4145 (ObjectRef) Removed useless assignation
Former-commit-id: 8e7b3c75ba9a50b99dfbb6656f2c8c97db4b27a7
2015-01-29 14:43:19 +01:00
Lynix 8eef78293d Improved ResourceManager code
Former-commit-id: e4e2b9aafdb569d2769a1501f88e307fcbe763a0
2015-01-29 11:46:29 +01:00
Lynix e82eccecfd (ObjectRef) Added static_assert (Improved error message)
Former-commit-id: 11217f66e37fd6552d811298f7dacce940f894a3
2015-01-29 11:46:11 +01:00
Lynix 7a73314ef5 Added resource managers
Former-commit-id: 9c071230c1e325ec672c9dfe30ee7e498baa1d08
2015-01-28 20:53:40 +01:00
Lynix 6324d21c67 Made ResourceLoader types private
Former-commit-id: 018c224274088c6471d4fdc6d9393782e2352810
2015-01-28 20:39:19 +01:00
Lynix 22e5230c32 (ObjectLibrary) Added Query static method
Former-commit-id: 802dcc589dd2c552a332490153b6761341c0a698
2015-01-28 20:38:54 +01:00
Lynix e18e490c59 Replaced (Uber)ShaderLibrary by template class ObjectLibrary
Former-commit-id: d488cfd4e5e3ff31112fffebce2b7cdb86cc2e55
2015-01-28 15:49:04 +01:00
Lynix c2d1773b41 (ObjectRef) Added implicit conversion constructor/operator
Former-commit-id: c633956130731e84c6d15d09961cd80c8d24877a
2015-01-28 15:46:14 +01:00
Lynix b088736e08 Removed ResourceLoader constructor/destructor
Former-commit-id: 31180fbeb4ce6be2e2811b91e7ae6814af0beccf
2015-01-28 11:37:34 +01:00
Lynix 8fad28bccd Fixed SparsePtr::operator->
Former-commit-id: 29be487addb68b8621d5205c779d4a47aceeb27b
2015-01-26 16:13:44 +01:00
Lynix 0db92e671d Added a static New method to RefCounted-derived classes
Former-commit-id: efd9e68e050fb6cc7e0df7a7c222ca759c502dc5
2015-01-25 23:41:09 +01:00
Lynix 5f5be93992 Merge remote-tracking branch 'origin/master' into Resource-Update
Conflicts:
	include/Nazara/Audio/Music.hpp
	include/Nazara/Audio/SoundBuffer.hpp
	include/Nazara/Core/Resource.hpp
	include/Nazara/Core/ResourceListener.hpp
	include/Nazara/Graphics/Material.hpp
	include/Nazara/Renderer/Context.hpp
	include/Nazara/Renderer/RenderBuffer.hpp
	include/Nazara/Renderer/Shader.hpp
	include/Nazara/Renderer/Texture.hpp
	include/Nazara/Renderer/UberShader.hpp
	include/Nazara/Utility/Animation.hpp
	include/Nazara/Utility/Buffer.hpp
	include/Nazara/Utility/Image.hpp
	include/Nazara/Utility/IndexBuffer.hpp
	include/Nazara/Utility/Mesh.hpp
	include/Nazara/Utility/SkeletalMesh.hpp
	include/Nazara/Utility/Skeleton.hpp
	include/Nazara/Utility/StaticMesh.hpp
	include/Nazara/Utility/SubMesh.hpp
	include/Nazara/Utility/VertexBuffer.hpp
	include/Nazara/Utility/VertexDeclaration.hpp
	src/Nazara/Core/Resource.cpp
	src/Nazara/Core/ResourceListener.cpp
	src/Nazara/Graphics/DeferredRenderQueue.cpp
	src/Nazara/Graphics/ForwardRenderQueue.cpp
	src/Nazara/Graphics/SkinningManager.cpp
	src/Nazara/Renderer/RenderTexture.cpp
	src/Nazara/Renderer/Renderer.cpp
	src/Nazara/Utility/Mesh.cpp

Former-commit-id: 99b5ad26a19fe9c9f8118da7b5920bffe89f60f8
2015-01-25 19:29:55 +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 911babc283 Changed meaning of return value from resource events
Returning false from a resource event will remove the listener from the
resource, instead of decrementing it's counter


Former-commit-id: ba47da0e8de5c0adb3d31f29af0ef7835beefd5a
2015-01-19 00:00:54 +01:00
Lynix 8f9ea9db17 Added ResourceListenerWrapper
This class wraps the call to
Resource::AddResourceListener/RemoveResourceListener using RAII and help
a lot with some of the dependencies.
Thanks to this, the render queues now handle their resources listening
properly.

Former-commit-id: 7f215ffa4ccadcc4f44f777656970e92ce01087a
2015-01-18 23:59:01 +01:00
Lynix c02fe6c8ff Fixed streaming loaders when used with memory streams
Former-commit-id: ce39ee03f40682c00c78b08ac285b9ea36240fa5
2015-01-17 23:42:49 +01:00
Lynix 86502df849 Merge branch 'Font-Update'
Former-commit-id: d293f78c891a74554c6b990afafdc1eb1cc0a584
2015-01-17 00:36:28 +01:00
Lynix cd5399459d Made Resource copying/moving impossible
It is still possible to copy some Resource-based classes though


Former-commit-id: bbb6066f736c210015ff9fdfded7d95eb9695359
2015-01-16 16:28:38 +01:00
Lynix c2f3ba00f2 Revert "Added ResourceConstListener"
This reverts commit 2492f87ba89bafa180308c60d2470b07e3aac27d [formerly 793b9a8884fb6153d5da152e2cf22659fc7e511b].


Former-commit-id: 05a9dff26921db1e7c1c5b90c0cd50073a839f3c
2015-01-16 13:02:53 +01:00
Lynix 88af94b987 Added ResourceConstListener
I don't know yet if it's a good idea but at least it's an idea


Former-commit-id: b034a787d8d8ccce0804f1276958b32c9e149147
2015-01-07 23:47:09 +01:00
Lynix 6c4f8e7396 Added SparsePtr::operator[+|-](unsigned int) overload
Let's hope it will be enough to stop GCC from barking at me


Former-commit-id: 0bcdf37acdc2e49a4ddd310dcdeb5bd6c66225a1
2015-01-07 19:19:53 +01:00
Lynix 0f033eaed9 Added CallOnExit::CallAndReset()
Former-commit-id: 045ff61445203999757971deeeafee719fc5506a
2015-01-04 18:57:01 +01:00
Lynix e69c2982b9 Minor changes
Former-commit-id: 1282e3600c687647f637aec42f05d033266e1d33
2015-01-04 13:08:26 +01:00
Lynix 4e9bec804a Merge remote-tracking branch 'origin/master' into Font-Update
Former-commit-id: c62f6317f401e200eff303fcf5b8945302fd89c6
2015-01-03 22:21:14 +01:00
Lynix ad3c70bbc8 Added SparsePtr substraction operator
Former-commit-id: e2dadc06b1f1abbd257689e6eaee77ebbfa0af5b
2015-01-03 21:50:37 +01:00
Lynix 528969d0fa Merge remote-tracking branch 'origin/master' into Font-Update
Former-commit-id: ae0244334123a3442c7675df80b1a501a6837257
2014-12-17 14:00:20 +01:00
Lynix 1ee02d4fcf Improved code, fixed missing includes
Thanks to d@rk-marouane (@progdupeu.pl)


Former-commit-id: 4147388501d4263e624f4c6402902ef071f88ffd
2014-12-17 13:53:59 +01:00
Lynix 20607238df SparsePtr: Allowed negative stride
Former-commit-id: 9ca3101347bdc071503ec9edb75b4f896a6dd2e0
2014-12-11 18:56:55 +01:00
Lynix a393271f04 Improved GuillotineBinPack
Added explicit copy/move constructor/operator
Added Expand method
Added Insert overloads (you are now able to query which rectangles were
inserted)
Made occupancy computation more precise
Overloaded methods taking a unsigned int pair with Vector2ui


Former-commit-id: f063c04a1aea0d26594db642c2466264fe139450
2014-12-10 14:38:32 +01:00
Lynix 15ddc29179 Added implicit conversion to SparsePtr
Former-commit-id: 5116a5e7687706640cd5d2ef99f5c181e00ee841
2014-12-07 03:06:12 +01:00
Lynix 4b2e3370d9 Added GuillotineBinPack algorithm
Former-commit-id: 9f2fb342e7bd9e1b33937a4fd462c993ae5cec3e
2014-11-26 02:35:59 +01:00
Lynix 522ceb1e30 Improved SparsePtr class
Added implicit conversion from a normal pointer to a sparse pointer
Added implicit conversion to boolean
Added implicit conversion to normal pointer
Added support for const pointers
Renamed Get/Set to GetPtr/SetPtr


Former-commit-id: 32d5d2ec6a7b296c5b89b722de9ca142d5c64aae
2014-09-03 13:32:37 +02:00
Lynix 35c0bc7087 Used std::forward for PlacementNew function
Former-commit-id: e77b64bb90d849d856d93426a68b4d76cb499971
2014-07-28 12:20:47 +02:00
Lynix 8b34e21e2f Improved code
Fixed Directory being copyable
Fixed ByteArray and String self-assignation
Made it clear Clock is copyable


Former-commit-id: 36702d8a389abe6d3faa1e283d9a20f0326041a6
2014-07-23 11:57:04 +02:00
Lynix e6dea541a7 Added memory helpers
This will protect some memory-related code from new redefinition


Former-commit-id: 337e69e70acd0bf8dbc3ba1657c6bb0bddfd5df4
2014-07-22 17:26:31 +02:00
Lynix 9e04e8a0e4 Separated reference counting from Resources
Former-commit-id: 7380818cfee9e249c11fd15da9ff7883a6e76565
2014-07-15 00:59:02 +02:00
Lynix a1efed20a3 Fixed debug build error
Former-commit-id: a96aa0c4b78c4095ae461f5a4ee81be3074fc47d
2014-07-12 15:05:23 +02:00
Lynix cf95b128c5 SparsePtr: Fixed some operators not being const
Former-commit-id: 1393ab9299502328829efb0daa0b17c1a74fdd2e
2014-07-12 12:48:25 +02:00
Lynix 55697908d1 Added TODO
Former-commit-id: 45750e5f2f198532f913c5b8abdbbfa190e7a749
2014-07-10 10:12:33 +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 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
Lynix f45a9d5bf6 Added SparsePtr class
Which is basically a pointer with a different stride than it's type size


Former-commit-id: a025889d7f9fa70f99e9cd5944682aebbd02317e
2014-07-01 20:25:14 +02:00
Lynix b595f703da Added OffsetOf header and function
Designed to replace the old offsetof macro


Former-commit-id: faa45ebfd3c1f9cc817f6fccf5c94d2c1527349d
2014-07-01 19:26:39 +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 55c205a5e5 Improved MemoryPool class
It's size is now dynamic (defaulted to 1024)
Added MemoryPool::GetFreeBlocks()
Added MemoryPool::GetSize()
Tried to make it thread-safe
It supports dynamics allocations (in case where it can't allocate memory
from the pool for some reasons)


Former-commit-id: d42804a47eaafbbc1c0b151f8fcaeb5ddb086ff5
2014-06-22 15:12:51 +02:00
Lynix f55b151c8e Improved MemoryPool class
It's size is now dynamic (defaulted to 1024)
Added MemoryPool::GetFreeBlocks()
Added MemoryPool::GetSize()
Tried to make it thread-safe
It supports dynamics allocations (in case where it can't allocate memory
from the pool for some reasons)


Former-commit-id: 1cc6cb2bc118556363a5c8ba1d18b3b1ce734862
2014-06-15 01:17:57 +02:00
Lynix 31dba6f52c Added pointer value test to MemoryPool
Former-commit-id: 2051f2e5b8f45513d6050dbdb17287841e5394a5
2014-06-05 21:31:29 +02:00
Lynix c27187ae4b Added MemoryPool class
Former-commit-id: cc704583a686dd631bee54ed48cee913aeb2e369
2014-05-28 10:02:43 +02:00
Lynix 8f4b304df1 Renamed Directory::SetDirectory to Directory::SetPath
Added Directory::GetPath


Former-commit-id: 0d2918557962b05ea7c9a16c82e6afc961db32a8
2014-05-26 02:00:46 +02:00
Lynix a3f877daf1 Added MemoryManager::GetAllocationCount()
Former-commit-id: 32f4f0780fdd32ac72a7e94732958bdd688844c6
2014-04-24 21:20:14 +02:00
Lynix c606599e19 Updated MemoryManager
Renamed MemoryLeakTracker[.hpp|.cpp] to MemoryManager[.hpp|.cpp]
Added MemoryManager::GetAllocatedBlockCount()
Added MemoryManager::GetAllocatedSize()
Optimized MemoryManager (no longer allocates a time buffer)


Former-commit-id: 0e9c720cbb48fbed7006db3bd1000ebbc22c9583
2014-04-21 22:13:31 +02:00
Lynix 77fc34ee7d Added some CPU vendors
Former-commit-id: 0eb96633fe6bdd3f6f8649f766620f4e89bc2224
2014-04-21 11:02:17 +02:00
Lynix 082015fe5a PluginManager::AddDirectory no longer returns bool
Former-commit-id: a5994918636765a52ca1fc79617d12eefec2c914
2014-04-20 23:52:54 +02:00
Lynix 361e2a31ee Improved submodules
PluginManager is now a submodule


Former-commit-id: 2e147317ab07447e134d15790386bd6d3494b9d1
2014-04-20 23:50:55 +02:00
Lynix fc970c503a Added File::Open(path, mode)
Former-commit-id: 7bd80f04e5f902e9752b1f5091ac55cdf2bc432a
2014-04-20 13:13:49 +02:00
Lynix d8507b5d10 Updated CallOnExit
Made it non copyable
Made usage of std::function (thus allowing lambda to be used as
functions)


Former-commit-id: b56cb410bf94bdb3b73d73d7599059d613e41a68
2014-04-20 12:55:05 +02:00
Lynix 945c6514a9 Added Resource modification notification
Former-commit-id: b2fafa22ddf125ef2f1cbc0cd473ae06eb99bcd3
2014-04-08 10:21:50 +02:00
Lynix 752cfdd8db Removed useless keyword
Former-commit-id: f5932abe5443e25d4f1fbf3e97f4eb50627fac55
2014-03-30 19:17:32 +02:00
Lynix b212f7c890 Added parameters to Clock class
It is now possible to build a Clock object in a paused state, or to give
it an "already elapsed time" value


Former-commit-id: 20e9c55de8a12a9220f81dc7759a4113a794648f
2014-03-20 23:06:22 +01:00
Lynix 42c10268d2 Fixed thread-safety
Fixed huge mistake in Clock code (Allocating a mutex everytime instead
of locking it)
HashDigest and StringStream class are no longer thread-safe (That was
stupid anyway)


Former-commit-id: d07a6859df27eac2c5171e75720b3963b6a5fbbb
2014-03-06 09:49:39 +01:00
Lynix ef9592a0fd Added repetition constructors
Former-commit-id: ee33ef8aa01ec14a89f47b3581f86cfe499299b8
2014-03-06 09:24:38 +01:00
Lynix 3f4b3aeef5 Fixed DynLib class not exported
Former-commit-id: 65f2607ae8625475a93efb472beaa88a69673abf
2014-02-18 08:34:35 +01:00
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
Lynix 07e949404c Added NzStream and stream options
Former-commit-id: d2c69b12f34fffff4d412111e7af7cc4dbb638a8
2012-10-01 00:57:32 +02:00
Lynix a73cd1374a Normalized line ending
Former-commit-id: bd061c48bdc8f0d26159dac3b41017defef5ae1e
2012-09-21 14:24:48 +02:00
Jérôme Leclercq cc6f2a6fc9 Added InputStream::GetLine(size);
Former-commit-id: 4c5afc038877bfa9865285d044663df3f7932d58
2012-09-21 12:39:40 +02:00
Jérôme Leclercq 2ea37a1877 Added InputStream::EndOfStream()
Former-commit-id: d8618fbb677a73cb6890d913af66adb22e6c2a39
2012-09-21 12:07:13 +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 15afde86c8 Rewritted ResourceLoader and moved it to core
Added creation constructor to NzImage
Added member function functor
Added option to build Nazara as one library (instead of many)
Fixed some 2011 copyrights
Made use of "using def = T" C++11 feature instead of some illigible
typedefs
Removed unused premake file
2012-08-18 01:46:01 +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
Lynix b442ab0bd2 Refactored mathematics module
Added AABBs
Added code examples
Added experimental support for texture arrays (1D/2D)
Added initialisers (new way of initialising modules)
Added global headers (Plus a global header generator script)
Added pattern support for directory
Added support for spinlocks critical section on Windows
Added NzRenderWindow::SetFramerateLimit
Core project now includes Mathematics files
Fixed color implementation using double
Fixed declaration needing renderer include
Fixed MLT not clearing nextFree(File/Line) after Free
Fixed move operators not being noexcept
Fixed thread-safety (Now working correctly - If I'm lucky)
Moved Resource to core
New interface for modules
New interface for the renderer
Put some global functions to anonymous namespace
Removed empty modules
Renamed ThreadCondition to ConditionVariable
Replaced redirect to cerr log option by duplicate to cout
Setting mouse position relative to a window will make this window ignore
the event
Shaders sending methods no longer takes the uniform variable name (it's
using ID instead)
Using new OpenGL 4.3 header
2012-08-08 04:44:17 +02:00
Lynix 06eda4eba9 Added Meshes and Animations (And many more)
Added NzTexture::IsMipmappingSupported
Color::(FromTo)HSV now takes hue and saturation in degrees
Fixed Context::EnsureContext
Fixed COW thread-safety (String, Image, Matrix4)
Fixed Quatenion<T>::operator*(const Vector3<T>&)
Fixed ResourceLoader
Fixed String::Resize with a size of 0
Fixed Texture mipmapping crash
Fixed per-class thread-safety
IndexBuffer and VertexBuffer are now resources
It is now possible to use more than 8 texcoords per shader
Moved all enumerations into separate files (Core/Enums.hpp,
Utility/Enums.hpp, ..)
Removed NzContextParameters::defaultWindow
VertexDeclaration has been rewritten (New interface/COW)
2012-07-13 15:22:14 +02:00