Commit Graph

1194 Commits

Author SHA1 Message Date
Lynix e55c521e96 Added support for skeletal models (WIP)
Former-commit-id: 6a6c2d9f2c68267df79dc48fa56450d2a563e323
2014-12-17 13:56:33 +01:00
Lynix 58fbed1dbd Improved error message
Former-commit-id: ca50bb0afe38364cb4f3bfe71b057fa8721337bd
2014-12-17 13:56:01 +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 02643f9442 Improved Win32 code
Former-commit-id: cfaecc7d8df56fa4cb2a27570531ffbce3fdfe87
2014-12-17 13:52:40 +01:00
Lynix 7316cbb694 Added OpenGL support for pixel formats A8/L8/LA8
Former-commit-id: b17942f7bf22daf90ddf5d8093da6c26b64a67ce
2014-12-10 19:01:03 +01:00
Lynix 3a5868b915 Fixed pixel format conversion from A8 to RGB5A1
Former-commit-id: ae5dbe7dd41f5b2856661820bf40ae93e3556c36
2014-12-10 14:41:43 +01:00
Lynix db0bbd5be4 Added conversions to A8 pixel format
Former-commit-id: 8fc541a3bba588572a7fd87e69c695b470708181
2014-12-10 14:41:12 +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 d22c4a5ac9 Added A8 pixel format
PixelFormat::GetBytesPerPixel() will no longer warn with
less-than-one-byte formats

Former-commit-id: af41f0c2bc7a35c2ee617980878628ff1c8bf868
2014-12-07 03:09:39 +01:00
Lynix a51cbc1e49 Added Sprite::SetSize(float, float) overload
Former-commit-id: 672a2e4f5c2a2d40b4af42c7ee4b7b37d3774117
2014-12-07 03:05:27 +01:00
Lynix aa37c632cb Fixed possible warning
Former-commit-id: 4d14bf2cee4756db0720fda0d904d5bc7b2bafd9
2014-12-07 03:00:35 +01:00
Lynix 605bcc7038 Fixed possible warning
Former-commit-id: fac12a042d206976109ffde42865c561b021ed93
2014-12-07 03:00:19 +01:00
Lynix 27e9996e7b Improved error message
Former-commit-id: 0315fe27119a0da88334ee67575e144c488d655c
2014-12-07 03:00:10 +01:00
Lynix bb95e6862a Fixed sprites being rendered upside-down in 2D
This is still waiting for a fix because it will be upside-down in 3D


Former-commit-id: ca4bef616f3496db22349eb907ec32a0b6c3deb8
2014-12-07 02:59:56 +01:00
Lynix c24e0ef8fa Improved Music.cpp (Added comments)
Former-commit-id: 0a4aabbafd3d76d280ac98332fa2059b1ad73b39
2014-12-07 02:58:52 +01:00
Lynix df6fdf6784 Added a Size parameter to View class
Allowing independent from rendertarget size


Former-commit-id: c131b6dd95692c72a969bf0cc6edd997911bbe58
2014-12-07 02:57:30 +01:00
Lynix e14789830c Removed useless line
Former-commit-id: 3499a0aa828a9886f55ad7c5da55e52ef930eb49
2014-12-07 02:56:05 +01:00
Lynix eda4ef852d Fixed Image::Get[Width|Height|Depth] returning 1 on invalid images
Former-commit-id: 0822a90c3e4b29addcb74ab9a268fd88ff167f76
2014-12-07 02:55:49 +01:00
Lynix 4b2e3370d9 Added GuillotineBinPack algorithm
Former-commit-id: 9f2fb342e7bd9e1b33937a4fd462c993ae5cec3e
2014-11-26 02:35:59 +01:00
Lynix 62dc2dbdf3 Added comments
Former-commit-id: 4f315d869ae4041a9ae245ef6b181dc6058f6503
2014-09-14 19:50:57 +02:00
Lynix 91471e048f Moved comment
Former-commit-id: 63d8ff7494668696550efdf258c372a8e3f3bce4
2014-09-14 19:50:46 +02:00
Lynix b79a4c503c Fixed VBO being freed after OpenGL exit
Former-commit-id: ddd5fb16baa4371ceb917415bc138590cdc16e26
2014-09-14 19:35:12 +02:00
Lynix a008439cde Added depth sorting attribute to Material class
Only works for billboards for now


Former-commit-id: 50a46d3266a2e7fc6d75629103ad8b7193b13bf3
2014-09-11 00:10:24 +02:00
Lynix 04be41082c Added A LOT of oveloads to AbstractRenderQueue::AddBillboards
Former-commit-id: 51b73a110e61cee7ad8fca42b10afd59363de809
2014-09-06 11:59:57 +02:00
Lynix c86de3ed7e Merge pull request #31 from Gawaboumga/master
Some changes

Former-commit-id: f4ef15537da8edef3881def68dce39f6455f9b94
2014-09-03 13:47:39 +02:00
Lynix 023e41512f Merge remote-tracking branch 'origin/master' into Particle-Update
Former-commit-id: 8b2a22ff4546805cdbae394df3cdcdf4228198e5
2014-09-03 13:37:39 +02:00
Lynix ce2aa91b32 Fixed PCX loader crash
Former-commit-id: 3c0734a67d271a68f79a56e986ebd96552ae6d4b
2014-09-03 13:35:10 +02:00
Lynix bf2d39541c Fixed cubemaps rendering (Skyboxes)
Former-commit-id: a8d065cbdf8bdbde55547739e53b4daa6ce2969d
2014-09-03 13:29:40 +02:00
Lynix 659eb31757 Added support for billboads
Improved ForwardRenderTechnique code


Former-commit-id: 2386de85c26839565f087885ffcb098ef263bdfa
2014-09-03 13:16:56 +02:00
Lynix aeec8ee0f4 Enabled new shader flags
Former-commit-id: df06f4faf4c7275c702338eee1ed14a2445662a1
2014-09-01 16:00:54 +02:00
Lynix 67ecefd380 Added sprite color attribute
Former-commit-id: 1db061b862315495cb40ff308348a0ac8d41e304
2014-09-01 15:42:51 +02:00
Lynix 2753e3c4f1 Updated shaders
Added support for billboards (rendertechniques support is coming) -
Doesn't support lighting well for now
Added support for vertex coloring
Added AUTO_TEXCOORDS parameter support to PhongLighting UberShader
Removed unused flag FLAG_FLIP_UVS

More to come ...


Former-commit-id: b408c80e8805a8bfebe9fcdf3a3f954116fbfe96
2014-09-01 14:10:48 +02:00
Lynix ea43edbaf3 Separated ParticleEmitter
Renamed ParticleEmitter to ParticleSystem
Added class ParticleEmitter

(First implementation, this will probably change)


Former-commit-id: a1f80db340983da5e85cedc974dd6b24a98e25b0
2014-08-31 14:09:43 +02:00
Gawaboumga fc4d84f206 Littles fixes
-Light Manager: I prefer iterators
-OpenGL: The UV problem is solved, but you forget to change the cubemaps
-Texture: GetSize() could return a int instead a NzVector2ui
-Algorithm: Simplification
-Utility: Couldn't compile

Former-commit-id: db890711b451d03427871fb997549a1b13c7d80a
2014-08-27 14:34:35 +02:00
Lynix 54382afc37 Merge remote-tracking branch 'origin/master' into Particle-Update
Former-commit-id: 7ec9fba80c2b47a1fb811c7912df67262986c9f0
2014-08-25 23:09:36 +02:00
Lynix 98aa804de5 Flipped texture coordinates
Nazara now use a top-left corner origin for UVs (DirectX-like)


Former-commit-id: 550dd76cf15bc731d1e23060d1af15c3cd5cb4fd
2014-08-25 22:37:36 +02:00
Lynix 6e27acc492 Added Color vertex component
Removed Userdata4 vertex component to keep the count to sixteen


Former-commit-id: b048f11f44528d1cf6657d095768b188217421ba
2014-08-25 20:22:10 +02:00
Lynix 71406eb6df Fixed array creation
Former-commit-id: 21c8018a7eb82f96e14a11485adaecfbfe19d5e7
2014-08-25 20:20:02 +02:00
Lynix f3baf9f9df Merge branch 'master' into Particle-Update
Former-commit-id: a015cefb77bfb41617e94368ac58f5cfe12266fe
2014-08-18 19:11:43 +02:00
Lynix b3351037c7 Changed some error messages
Former-commit-id: e578d813dd7a8691506af080b79bc1ec99b65e3c
2014-08-18 18:15:19 +02:00
Lynix 0d69267992 Added Image::LoadArrayFrom* (convert an atlas to an array)
Also added Texture::LoadArrayFrom* shortcuts


Former-commit-id: f3cde12d5b634c75de8745fa800c30749e0fe662
2014-08-18 18:13:30 +02:00
Lynix 8640f86f44 Added TODO
Former-commit-id: f655a6d2bb7788480536503b9370019454961e27
2014-08-18 18:02:36 +02:00
Lynix 2a29dcf6e9 Improved Texture class code
Removed some code duplication


Former-commit-id: affa0bf18ea317b3276a7e8d0a6351f28037dfba
2014-08-18 17:59:06 +02:00
Lynix ad0fa61cdf Added error check
Also "fixed" some error messages


Former-commit-id: 15be3887949e9bafab49c3f4e16ffc732f352c65
2014-08-18 17:42:08 +02:00
Lynix 7266111834 Fixed missing include
Former-commit-id: c63f03fa2233f3d5ac0cd24cb796c48693c0ff39
2014-08-18 17:20:14 +02:00
Lynix e76b57e120 Fixed Image level computation
Array depth will no longer be taked in consideration when computing
level count


Former-commit-id: 93bf114127b5e252c3f8a8cbf938fcd09534a9ca
2014-08-18 17:19:09 +02:00
Lynix f56e0504e6 Buffer, [Render]Window now always throw on error
Former-commit-id: a739cd4c7d96e7cf497338c525e9ab1b5d6a844a
2014-08-18 15:45:37 +02:00
Lynix 0d69da09b9 Fixed Renderer testing non-enabled vertex components
Former-commit-id: d624d98b7b8a61fc3dc92d4c10441e759a50f310
2014-08-18 15:42:17 +02:00
Lynix f154dbfb31 Fixed rare bug when initializing debug drawer
Former-commit-id: 287d10c05a481a139449068014780aa7119096bb
2014-08-18 15:41:42 +02:00
Lynix 34af3c9bc9 [Index|Vertex]Buffer constructor now throw an exception on error
As it should do anyway


Former-commit-id: af4589424c0009dfc40ebf5ae57172fb5df77dc0
2014-08-18 15:40:54 +02:00
Lynix df44d799c8 Added [Index|Vertex]Buffer easy constructor
Former-commit-id: 4536af8c833c15b49876c773defd3475a561df4b
2014-08-18 15:39:44 +02:00
Lynix f936dac6ad Fixed a terrible mistake in [Index|Vertex]Buffer::Reset
Former-commit-id: 97daa00a60615e88fb8d015bd02281713c61807b
2014-08-18 15:14:29 +02:00
Lynix f395cb7579 Added ParticleEmitter::GetFixedStepSize()
Fixed missing implementation of ParticleEmitter::SetFixedStepSize


Former-commit-id: 255fcca4afe40cccf38a561f09f29a0a4ceccd71
2014-08-09 00:30:24 +02:00
Lynix 0976607eb9 Added fixed step update
Switched back to defaulted operator=(ParticleEmitter&&) since it can't
throw exception anyway


Former-commit-id: 178b040a735ef01dcda21b45a317b6c534b5782e
2014-08-08 21:21:04 +02:00
Lynix 202f675301 Changed particle callbacks arguments (offset, count) => (startId, endId)
Former-commit-id: 24550dad44e55aa9dfabaf916cbfb8e25df0451a
2014-08-08 20:59:49 +02:00
Lynix e9267d7f43 Added particles first implementation
Former-commit-id: 2b98ce2f007927690bdecd4092e211013bf568cb
2014-08-08 17:17:58 +02:00
Lynix b413727a21 Added required flags to UberShaderPreprocessor
Former-commit-id: 1118fb08d1c0a7f6ebd18042f9a2044738bc4169
2014-08-05 09:43:19 +02:00
Lynix 7a2a10b390 Added VertexMapper constructor
Removed useless headers


Former-commit-id: e8925f48eec9c52dc4f2ad7bf6a61deb755bc0ee
2014-08-03 20:58:09 +02:00
Lynix 49b19cd6d1 Fixed missing error checking
Former-commit-id: 45c849fd91d2072a2dc0d87394ddeb56816af2f9
2014-08-02 21:30:39 +02:00
Lynix 4d06ca3906 Fixed OBJ Loader sometimes creating empty mesh
Former-commit-id: 6b5624db279f3818edb6b4544ad0114b7c5e1e27
2014-08-02 21:30:19 +02:00
Lynix bbecdf4a92 Fixed DrawInstanced required OpenGL version
Thanks to Raakz


Former-commit-id: c82bf27371817fe05cce789ef84548e3cf64abab
2014-07-30 00:40:05 +02:00
Lynix 60d5c09c18 Renamed Basic.hpp to Algorithm.hpp
Former-commit-id: ba2858d26fb55069313fafc3e4464dc2e9224b7d
2014-07-28 15:18:39 +02:00
Lynix 095a44e9b1 Improved MD5 loaders code
Fixed missing return


Former-commit-id: b5fb298ab8b147bbfda07ffb2090d248156b96c7
2014-07-28 12:25:59 +02:00
Lynix 4a1d7bc503 Improved some code (smart pointers)
Former-commit-id: 67729603eb41ce06c9b3857311146b7cd6faa4e9
2014-07-24 10:33:26 +02:00
Lynix bd0f38092e Updated PhongLighting shader
I can't remember why I commented these lines.


Former-commit-id: 3da37915073f94c9c44adfd84c968cb2d70982cf
2014-07-24 09:45:42 +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 fba2e5ae01 Moved MD5[Anim|Mesh]Parser loading code to Loader
Similary to OBJParser


Former-commit-id: 243b05f2fbc3899089ef05a29672979d3bbca695
2014-07-17 20:15:29 +02:00
Lynix 9e04e8a0e4 Separated reference counting from Resources
Former-commit-id: 7380818cfee9e249c11fd15da9ff7883a6e76565
2014-07-15 00:59:02 +02:00
Lynix 0af8bc4829 Fixed build error
Former-commit-id: ace4f8efc3416aef185a3b95bac405ba8bb5a993
2014-07-13 17:09:39 +02:00
Lynix 8ecae371ee Improved error messages and moved safety check
Former-commit-id: 010051ae56a1d2c1ebfe8dca3ceae3488a4cef18
2014-07-13 17:08:13 +02:00
Lynix 73ba06ac1c Merge pull request #28 from Gawaboumga/master
Consistency update

Former-commit-id: 1c31be9c967cf2e7d9d5d89d46444bfaed11a142
2014-07-13 16:53:59 +02:00
Lynix 736223e97e Fixed typo
Thanks to Gawaboumga


Former-commit-id: 106e83d7353cebdfbb6daf9abb958191ece9c4da
2014-07-13 16:46:44 +02:00
Lynix b8ccbf4092 Fixed missing commit
Former-commit-id: a46cc95a9f70415f4ebfbb6e12b3a4bf6ba90eb9
2014-07-13 16:25:03 +02:00
Gawaboumga 4c63c53c44 Indentation
Former-commit-id: 17c357f50ffec9787e6c50dd638c85388fb344ca
2014-07-13 16:09:21 +02:00
Gawaboumga e9554ad498 Coherence update
Audio: GetListenerDirection was using ALfloat and GetListenerRotation
not.
ByteArray: Two return *this, hazh is perturbing, is it intended ?
String: Same ?
Camera: Adds of security (don't think it's usefull)
Parser: size() = 0 -> empty()
Utility: update 13 to 14 was forgotten
VertexDeclaration: same

Former-commit-id: f6db5cd15e5a4dc5ac2af12366b18d1f6922b0e0
2014-07-13 16:03:15 +02:00
Lynix 3714371403 Fixed error messages
Fixed Quaternion type not handled by VertexDeclaration::IsTypeSupported


Former-commit-id: 4668810c2acbee3127ba52aed9782255ef92013e
2014-07-13 09:42:21 +02:00
Lynix 7a6195991c Added Quaternion component type
Not compatible with Vertex Declaration though


Former-commit-id: 3174553981ab23fe59ed616c2ce1a27bf7db0108
2014-07-13 09:29:12 +02:00
Lynix 9137357725 (Renderer) Improved vertex attribute code
Former-commit-id: eacb4df1848e7ae807ca607496a50a38451ea083
2014-07-12 14:59:14 +02:00
Lynix f2141f5756 Improved MemoryManager handling of failed allocation
Now throwing a std::bad_alloc


Former-commit-id: 09c1806a0601944b5566d5cb2fe878c4af8ea0f5
2014-07-12 12:51:34 +02:00
Lynix 793ad16238 Improved code
Former-commit-id: 6c140262471d81edebe965c91a270df8929b1aef
2014-07-12 12:50:23 +02:00
Lynix 8128079927 Fixed error message
Thanks to Raakz


Former-commit-id: 71f2febaa811c19f7c3da69d1154d0e6e97da726
2014-07-11 23:06:46 +02:00
Lynix 27aea8ae2a Fixed VertexDeclaration copy constructor
Former-commit-id: 54bd378364c987c975ca2e83187b3559f4b9d92c
2014-07-11 10:23:55 +02:00
Lynix b54be6e25f Renamed AttributeUsage and AttributeType
... to VertexComponent and ComponentType.

-Renderer:
Renamed IsVertexAttributeSupported static method to
IsComponentTypeSupported

-VertexDeclaration:
Added IsTypeSupported static method
Renamed [Disable|Enable|Get]Attribute to [Disable|Enable|Get]Component
Removed GetAttributeSize static method

-VertexMapper:
Renamed GetAttributePtr method to GetComponentPtr

Former-commit-id: 7115856e1d389610c35b26f63af5d93a5ad5c690
2014-07-10 18:31:56 +02:00
Lynix ebb13d3bf2 Added DebugDrawer::DrawLine and DebugDrawer::DrawPoints
Former-commit-id: e1b2278a7c11ebfc8050bad23aef7a9a4cbf3c25
2014-07-10 10:12:25 +02:00
Lynix 0e791ebb19 Removed useless line
Former-commit-id: 3cab7b4c8f170b8bd2d648610b05b3377817ab86
2014-07-10 10:01:11 +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 b3c0168e6a Fixed code
Former-commit-id: 7fbf14a6a976b5f560e3ce77d69c75d7661b414a
2014-07-08 16:15:24 +02:00
Lynix c79047bd16 Improved box generation speed
Former-commit-id: a76d97becdd8e41146a01c9970b358eaf6096623
2014-07-08 11:56:27 +02:00
Lynix a0c2d81114 Replaced struct by lambda
Former-commit-id: 4bb344e15c5f83480c30cb89fc3c213b33c2bbd4
2014-07-08 11:55:40 +02:00
Lynix f19b89f947 Updated Skinning code
Former-commit-id: ae608042061847b2f710abce8101eb008ef2a661
2014-07-08 11:31:14 +02:00
Lynix d3c3ad5bb8 Improved code
Former-commit-id: 31d737ae9d45a14a59b85118b9797565610866ff
2014-07-08 11:29:30 +02:00
Lynix 18849e7d21 Reworked SubMesh methods
Former-commit-id: daff498f907bb28fdc9c7997c0ba602d640964c3
2014-07-08 11:28:01 +02:00
Lynix 5c2ae93d0b Reworked TriangleIterator
Will now output vertex indices instead of vertex data (making it way
more useful)


Former-commit-id: c82d61ca0ac3f2908d57e167dade74af42282b06
2014-07-08 11:22:32 +02:00
Lynix 70e1327071 Reworked VertexMapper to make it way more generic
Will work with any attribute and vertex declaration


Former-commit-id: ca99734bd8a9c3e57c99b1cc338f03e79dda55f6
2014-07-08 11:21:41 +02:00
Lynix af1d2d9146 Reworked SkeletalMesh class
It now uses a VertexBuffer


Former-commit-id: 81d5db90d9eb8a097342a1ae613468edcae730a6
2014-07-08 11:18:09 +02:00
Lynix d636174c04 Added SkeletalMeshVertex struct
Alias of VertexStruct_XYZ_Normal_UV_Tangent_Skinning


Former-commit-id: 1bec60d399dd3293aebb7a7b84370ff33e8b85dd
2014-07-08 11:13:07 +02:00
Lynix 8ab69fa3ab Improved VertexDeclaration class
Added AttributeUsage_Unused
Improved code and error handling


Former-commit-id: bd0f3755867d38e0f03b282970031fbadc10213e
2014-07-08 11:11:11 +02:00
Lynix 9de90a78e5 Disabled the use of glTexStorage* when creating a proxy texture
Looks like AMD drivers does not like it


Former-commit-id: 854492215bb977df39d06cf7b1beab97c0961e08
2014-07-08 11:02:27 +02:00
Lynix 9969d5f5f3 Removed UTILITY_MULTITHREADED_SKINNING config
Useless since SkinningManager is now handling this at runtime


Former-commit-id: 4a8b2d08de2f5c367821786d2cdff5dd45daadef
2014-07-08 10:58:58 +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 28471925ac Fixed possible bug in computing sampler id
Former-commit-id: 29c20403571218c05e3d4405482bb312adda5a35
2014-07-02 01:08:58 +02:00
Gawaboumga 1aebcd83b0 Merge remote-tracking branch 'upstream/master'
Former-commit-id: 124b89e1c31a7b907f88d8c7a234473274d5a0f6
2014-06-28 09:05:16 +02:00
Lynix 53e5944b56 Fixed build error in debug mode
Former-commit-id: 8992ced076980cf0101eb2c62923521e1c975763
2014-06-27 21:18:51 +02:00
Lynix 6e936b6120 Fixed Image::GetPixels returning wrong pointer when level is over 0
Former-commit-id: c54b77b3b7aee5ee9aeff9a022e94f33f4b45453
2014-06-27 21:18:22 +02:00
Lynix 126cd75e4d Fixed possible bug
Former-commit-id: cc37ef2c51011d7a679a10d5386f9bbf0241d51f
2014-06-27 21:17:23 +02:00
Lynix 76bfd0857e Allowed asserts to throw exceptions instead of calling std::exit
Former-commit-id: 892db922761a0a8122c60274b344c3e62de0a65f
2014-06-27 21:16:36 +02:00
Gawaboumga f84897e47a Merge remote-tracking branch 'upstream/master'
Former-commit-id: 578dd5a3b02eb5363a248c437b528a743be983ca
2014-06-27 19:21:44 +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 c5b31d4f03 Replaced CreateSemaphore call by CreateSemaphoreW
Former-commit-id: 8f1897c846bc08d79a7298b1d95a2319c1aefffd
2014-06-25 19:35:53 +02:00
Lynix 4d27f12fec Fixed typo
Former-commit-id: 746c6caea0f7f806db0e7554deb125030009e069
2014-06-25 19:34:55 +02:00
Lynix cc01216e1c Fixed crash in TaskScheduler Windows implementation
Also replaced CreateEventA calls by CreateEventW calls to avoid one
level of function call.
Thanks to bacelar


Former-commit-id: 4612e3fb0af8eef9ffd947d8edf55e4f2fa27c9b
2014-06-25 15:23:31 +02:00
Lynix b70f693b8c Merge remote-tracking branch 'origin/RenderTechnique-Update'
Former-commit-id: 85e5af81ed3381af19e87c6ca0ee14e79955e563
2014-06-24 12:56:10 +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 3f81ab4742 Alphabetical commit
Former-commit-id: 3f04840ed109e31cef0e6eda085320aaa17c9f2f
2014-06-22 15:12:50 +02:00
Lynix 6c1852299d Added SkinningManager
Former-commit-id: ca3648dc16f5b1654cb8e3f5480d04f7fd22a3bc
2014-06-21 16:23:38 +02:00
Lynix 774df28d87 Cached skinning matrix
Former-commit-id: c5aeb09778f5696906eb764f600c4a152ab7ba48
2014-06-21 16:22:34 +02:00
Lynix 5310c8b0d6 Moved skinning to algorithms
Former-commit-id: ab31467438f55e8381daa8f238c201c46ba96f52
2014-06-21 16:21:33 +02:00
Lynix f5833aa2d4 Improved rendertechnique fallback (will no longer loop)
Former-commit-id: 1aeb737432de1d2a8f205e547404b3f140967a16
2014-06-21 15:38:24 +02:00
Lynix 9ba6258478 Made context creation exception-safe
Former-commit-id: d55687cea712a34e905b3f2f2d85611d1d0b1b74
2014-06-18 20:34:05 +02:00
Lynix 81672a5ff6 Clarified source code
Former-commit-id: 669b6c52c05d87ff8e84d9c1148bc649431cc724
2014-06-18 17:39:16 +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
Lynix 62daced765 Merge branch 'master' of https://github.com/Gawaboumga/NazaraEngine into Gawaboumga-master
Former-commit-id: 56e40c1b251e01c435595ac73a696d2720fb1453
2014-06-15 01:20:46 +02:00
Lynix 13e1cadcdd Alphabetical commit
Former-commit-id: 88c2aad1451a941f7b3afa83063d9383fc8b40d2
2014-06-15 01:13:40 +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 b4c6dac441 Updated copyright years to 2014 for some missed files
Former-commit-id: 932e421ad0c8ddc8fb9f010f6e3015b7740f3d59
2014-06-05 21:46:22 +02:00
Lynix a31ced1d76 Modified SceneNode::FrustumCull
Now provides an implementation which will test the bounding volume
against the frustum (Basic frustum culling)
Is now const
Disabled face culling on sprites


Former-commit-id: 5cb7a94b38ef8b0ffa5a78f16f5ef65a59ab375d
2014-06-05 21:28:17 +02:00
Lynix bc9c8c6bdb Merge remote-tracking branch 'origin/RenderTechnique-Update'
Former-commit-id: db5a6503e43615a47e3be4aaaa033899639392b7
2014-05-29 19:59:09 +02:00
Lynix df803fd5f7 Fixed Graphics module build
Former-commit-id: 1dc70a30cd4ca68d2d7869d51eb01f81770b0e3b
2014-05-28 01:15:12 +02:00
Lynix c8ae34f20b Updated mesh loader
Former-commit-id: 04c174544912a8c3c48e3fde7934cdc4edc19e07
2014-05-28 01:08:08 +02:00
Lynix fa5b1ab000 Model can no longer be animated (SkeletalModel will)
Former-commit-id: e203a3dddf74bb171d8abe961e8a2f28df13bcad
2014-05-28 01:03:59 +02:00
Lynix c901b5808e Added new abstract renderqueue rendering
Former-commit-id: 35e66174ccc3de3b43571f12a149e6d3c59cc2c9
2014-05-28 01:00:18 +02:00
Lynix 012c120bf1 Added Scene::EnableBackground
Former-commit-id: 57a3c3e41799703bb72b4980433d7faadc3b1b86
2014-05-28 00:35:28 +02:00
Lynix 15e62110cf Added fastpath for operator==(const String&, const String&)
Former-commit-id: 2f0c5dff353ba9225ff5888fe35c744790bb1f95
2014-05-28 00:28:50 +02:00
Lynix d81268f204 Skeleton class now notify modifications
Former-commit-id: e796d1ea36e4214e31381a10e4bc79eaf1806d28
2014-05-28 00:27:43 +02:00
Lynix cc8a3033ca Re-added proxy textures and glTexStorage2D optimization for cubemaps
Former-commit-id: 95ff10767a906c602bab4d0cf75acc27c68ddd41
2014-05-28 00:25:43 +02:00
Lynix 579b22e753 Disabled error exception during Renderer::EnsureStateUpdate
Former-commit-id: c09ad9e1da95b483ce65a04100182c787cc0aafb
2014-05-28 00:24:10 +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 ee55847220 Improved LuaInstance class
Better handling of panic (showing the actual error)
Secured arrays with static assert
Added ArgCheck
Added ArgError
Added reference handling
Improved DumpStack method (Now printing the address of functions,
tables, threads)


Former-commit-id: 5ae9a1aefca4b8c50aa57db99da3b778cb1ebff4
2014-05-26 01:57:10 +02:00
Lynix b899ff294b Improved RenderWindow context creation
Former-commit-id: a744a433603e4f14ce6d7e7c269d5ff659b1a0f7
2014-04-26 12:58:07 +02:00
Lynix beb1879aca Added support for double and integer attribute (VertexDeclaration)
Improved Renderer error handling


Former-commit-id: 8cded7c0a7d1ba7c8583ef3e7b74b1d9604088e3
2014-04-25 21:11:14 +02:00
Lynix 4898018396 Fixed static_assert tests
Former-commit-id: 4cc139b350d34b2b753b5cd0167d74a014c26e24
2014-04-25 20:24:42 +02:00
Lynix b16f2bf763 Added OpenGL function loading
glVertexAttrib[I|L]Pointer
Also removed useless test (since unsigned can't be under zero..)


Former-commit-id: 628172ca764956349db5498b6ac7fec6400febfa
2014-04-25 20:17:00 +02:00
Lynix bd61d07998 Made Renderer use OpenGL::DeleteVertexArray
Former-commit-id: 16619f9be146e3201350299ff6d288655c7c2130
2014-04-25 20:02:23 +02:00
Lynix c23649c363 Improved comments
Former-commit-id: 41b9a4704712f96c155c518f321e59415adf9294
2014-04-25 18:55:21 +02:00
Lynix 3035fb8fa2 Made Context::Create exception-safe
Former-commit-id: 913e87b684028ca6f9c41e529628c77c171761c1
2014-04-25 18:34:48 +02:00
Lynix fe8ff688e8 Improved OpenGL context implementation
Former-commit-id: 20988bd4a0fa85b7c073a189e71dab25571be617
2014-04-25 14:03:01 +02:00
Lynix 7ac3fee3a5 Added OpenGL::Delete[FrameBuffer|VertexArray]
Also renamed OpenGL::OnContextChange to OnContextChanged (since it
happens after the context change)
Also improved RenderTexture implementation


Former-commit-id: d845b1405294dd3aa134d392585069bbb28a77a3
2014-04-25 12:38:53 +02:00
Lynix a3f877daf1 Added MemoryManager::GetAllocationCount()
Former-commit-id: 32f4f0780fdd32ac72a7e94732958bdd688844c6
2014-04-24 21:20:14 +02:00
Lynix 4ef5f6fb3d Fixed leak from UberShaderPreprocessor
Former-commit-id: 4415e602b2b226dbb434dfd6b8d5133952b49c04
2014-04-21 22:15:36 +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 55fe71ee21 Fixed cpuid reported supported on unsupported compilers
Former-commit-id: 4f5fc2251882ae04d9131242d0f9d7f8a3a3e6dc
2014-04-21 10:43:46 +02:00
Lynix 531fa2ce84 Fixed PluginManager initialization
Former-commit-id: 5125e58bc5c73ed36088f52356728687db23e494
2014-04-21 10:42:20 +02:00
Lynix 7d99550925 Made Initialize/Uninitialize static methods from non-submodules private
Former-commit-id: 78dac32c8650dc9eb4fd2c7f0bece030012497cf
2014-04-21 00:08:34 +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 9b74459ea8 Updated comments
Former-commit-id: 77b83bdf6f52325efdc3e3b9a1d2743124426531
2014-04-20 22:34:10 +02:00
Lynix 70e57a338f Optimized hardware buffers
Former-commit-id: 59f96166fb259137b5e0445eb5faa0b912b0f29c
2014-04-20 22:32:09 +02:00
Lynix c45e22ff7d Updated comments
Former-commit-id: 66e035deb3f7f549257f5b04c327396b88c94363
2014-04-20 22:30:55 +02:00
Lynix ae316394f9 Fixed instancing rendering
(Finally fixed that bug)
Lowered required instance count to ten


Former-commit-id: 6aeb69eb8ca08727a029e07080aed558e1d1f089
2014-04-20 21:27:53 +02:00
Lynix 9d35e40a23 Made Shader::Send* ignore invalid location
Former-commit-id: 22bd15678df54b3cd35fb3333046a7c43bd3ed9e
2014-04-20 14:32:13 +02:00
Lynix c9b7010380 Fixed last commit
Former-commit-id: 52606380de66987bdaab08e09eeff0632cc66e65
2014-04-20 14:21:54 +02:00
Lynix ff2bf98623 Made use of std::function
Former-commit-id: 17e7ebe528071c6399383089ac1c0d089faccc34
2014-04-20 14:06:29 +02:00
Lynix 60cd7c8375 Improved sndfile loader implementation
Former-commit-id: d198c2195b50f1f8f1adce1f81e1c06542ada757
2014-04-20 13:21:35 +02:00
Lynix fc970c503a Added File::Open(path, mode)
Former-commit-id: 7bd80f04e5f902e9752b1f5091ac55cdf2bc432a
2014-04-20 13:13:49 +02:00
Lynix e16e3658f1 Improved sndfile Loader
When streaming and mixing to mono, the samples buffer is kept between
the calls
Made SoundBuffer loader exception-safe
Fixed sf_close not being called


Former-commit-id: cef1d114809dc1fde9a84d2d96dd7afc7550c32e
2014-04-20 13:12:02 +02:00
Lynix 3ddcd3b7ed Optimized Renderer
Renderer was doing useless glActiveTexture calls


Former-commit-id: 5b27c6dcf9382cae79f5fc92577b42e92b851351
2014-04-16 09:11:38 +02:00
Lynix 4026e310bc Optimized OpenGL samplers binding
Former-commit-id: 6afb2ed4d9851e09ff1006cf7c81df0cac0bed7d
2014-04-16 09:02:32 +02:00
Lynix 9428097b53 Alphabetical commit
Former-commit-id: 0d591ff3ddbd8d7536c6c18a9e88fd25d78e4bba
2014-04-12 14:40:03 +02:00
Lynix c7156494f3 Improved DeferredRenderTechnique initialization error messages
Former-commit-id: 99b1174257ae4e99600ad763ba2444d553957d18
2014-04-12 14:28:02 +02:00
Lynix b30d325ca5 Made Submodules initialized when used
Former-commit-id: 203a4a3b07e18301ce003129bb6af22e0478d07a
2014-04-12 14:19:29 +02:00
Lynix 8c6c58c677 Improved MD2, MD5 and PCX loader code
Former-commit-id: ab715a3d52030f1e514c1b0d250b8e6cb3883ad5
2014-04-12 14:09:20 +02:00
Lynix 55ce80b524 Added UberShaderPreprocessor::IsSupported "implementation"
Former-commit-id: 753dbc41d008bd33ed996ac1a745d8e11d836c48
2014-04-09 23:05:13 +02:00
Lynix 945c6514a9 Added Resource modification notification
Former-commit-id: b2fafa22ddf125ef2f1cbc0cd473ae06eb99bcd3
2014-04-08 10:21:50 +02:00
Lynix e36c42900d Fixed String::Resize not always setting the EOS character
Former-commit-id: 975fe786e70d760549a65b52bdf5cf6d945dd209
2014-04-08 10:18:36 +02:00
Lynix a09fbe6a9d Oops
Former-commit-id: cb32d05b5e59329860fea64aaf8bfee024621109
2014-04-04 19:27:11 +02:00
Lynix f88c6cf0d7 Fixed debug shader not compiling on some configurations
Former-commit-id: 7e31eec475dc5e40491f480e9f45476acab5fdb6
2014-04-04 14:56:45 +02:00
Lynix 3b48e556aa Merge branch 'master' of https://github.com/DigitalPulseSoftware/NazaraEngine
Former-commit-id: 52c67ad3c3e137e1a7239775ae0c5eab899249d4
2014-04-04 11:39:12 +02:00
Lynix 04b9a13397 Fixed String::IsNumber with base > 10
Former-commit-id: 18feb64e18e2b0a5360d9ae2b6dfea169ede4365
2014-04-04 11:37:48 +02:00
Lynix 7196d8399f Made use of constexpr keyword
Former-commit-id: 79bc50ffaa21947dacd18578a34f6be65285821b
2014-04-02 01:02:47 +02:00
Lynix 103f80ca2a POSIX: Fixed DynLib implementation header
Former-commit-id: 381cfd9021f972662f1fc8c67536e884e58cb65c
2014-04-01 22:41:53 +02:00
Lynix 485b35684d Added comments and optimized TaskScheduler
Former-commit-id: 863338b4599fdee38cfebec7e9dff47b571ba203
2014-03-30 19:18:42 +02:00
Lynix 11c2f82835 Added LuaInstance::DumpStack
Former-commit-id: 89c3cca3debae881007df83106bb86886a6c26de
2014-03-26 21:24:06 +01: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 2ea87a601a Fixed Clock::Get[*] still running when clock is paused
Former-commit-id: f2063a94251fc27da492d0d37bd42355125a1a24
2014-03-20 23:00:54 +01:00
Lynix 8228d1799c Added LuaInstance::CheckBoolean
Former-commit-id: 2468e458001641cfc6741e271f848afeaad4ea2a
2014-03-20 20:33:26 +01:00
Lynix 044a00669d Improved Scene implementation
Will provide a default background/technique when necessary


Former-commit-id: 547cca512aed4f90c53fff33e8c69245913d3a09
2014-03-18 19:54:35 +01:00
Lynix 90ebf4940c Fixed potential overflow in OBJ Loader
Former-commit-id: 8356daec0fc094c8316d9f0cfabfb6f4ccb8a1e7
2014-03-18 19:53:24 +01:00
Lynix 37197a3840 Fixed sprite rendering in Deferred Shading
Temporary fix: In the future Deferred Shading shall work with some
sprites


Former-commit-id: 4c39ddf1b09511ee411713943d97cf807ee8f52d
2014-03-18 19:53:00 +01:00
Lynix 970c0c8ef8 Optimized String usage
It will no longer initialize the buffer if not necessary


Former-commit-id: b8c910268ed3db6affb8f88b45d043d1dc021aa7
2014-03-15 00:26:29 +01:00
Lynix 268d3ae86d RenderQueues now use std::map::insert only if necessary
It looks like my std::map::insert implementation allocates something,
even if the element is present (It's not a leak, just some useless
allocation)


Former-commit-id: 9490bfb7994c23f893a74d5710381ba5919bb38c
2014-03-14 23:55:14 +01:00
Lynix 0ca2c9ccb2 Removed [*]RenderQueue::AddModel
Former-commit-id: 74b3e2b59b7a2ced16edca8dd7027dd8ae1db861
2014-03-14 23:48:10 +01:00
Lynix 2c3d8ee5f4 Fixed ShaderStage::Destroy
Former-commit-id: 87b67ba4e459a698bef9cd899ed7d5eb2cb6259c
2014-03-06 10:33:16 +01:00
Lynix 00caa6b74a Optimized Renderer (it no longer makes useless allocations)
Former-commit-id: c62e1acd27643103f736d0fdc2f4fb13018004b2
2014-03-06 10:16:23 +01:00
Lynix 9a129ec733 Disabled face culling on default material
Former-commit-id: 112868ff6fe6b4fdd820bbe0839127c5c6b27824
2014-03-06 09:59:27 +01:00
Lynix cec6f29e1e Fixed UberShader leak
Former-commit-id: 2d84fadee8ed55f068d30a28510500fe64df6365
2014-03-06 09:58:26 +01:00
Lynix cd73159d5b OpenGL class now uses CallOnExit class
Former-commit-id: c8c5bb7e50e73ba007e095eaf801fa7d5e3aa215
2014-03-06 09:55:26 +01:00
Lynix 67951074b1 Improved File class source code
Made use of smart pointers to be exception-safe
Made use of StringStream (again)


Former-commit-id: 9b139468e5045abf7ee4832c40bdec25a2a9af50
2014-03-06 09:53:03 +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 24be314b86 Fixed spaces
Former-commit-id: 570c1fb8c0ffa6d140112a9cdaa14c05c752d916
2014-03-05 00:47:26 +01:00
Lynix 5e9201cb22 Optimized Scenes configuration
The scene class no longer create a default background/default
rendertechnique at construction, instead it waits for Scene::Cull method
and create them if they are invalid


Former-commit-id: b5d031abc5d7df4be5ad4edd6036ad7d60cacbb4
2014-03-04 20:21:33 +01:00
Lynix 2990843f31 Added warning
Former-commit-id: b6956df1ded62a23140f4c44f0fd8b677c63c981
2014-03-04 19:35:51 +01:00
Lynix 0f2cab56ff Forward RenderTechnique now handles non-lighting shaders
Former-commit-id: f243ba8aea76ada91510f6b36c292ae0e18e2add
2014-03-04 19:35:40 +01:00
Lynix 05e7e11356 Made default material wireframe
Former-commit-id: c65d5b74dd430ecd5dd71a1b3167dc4afdf6dbf9
2014-03-04 19:34:07 +01:00
Lynix edaac1ded4 Fixed last commit
Thanks to Raakz for his patience


Former-commit-id: 4b423f3d271fcbdc3e33937e8170843681a3b096
2014-03-01 12:55:43 +01:00
Lynix 4cd0ece11e ModelParameters no longer contains shaderName field
Instead it will now set the shaderName field of the material field to
PhongLighting


Former-commit-id: 55b7f5500c7dc2c147f32a7c214a8e75ea434ff1
2014-03-01 12:25:11 +01:00
Lynix 5018787e3e Reworked InputImpl::IsMouseButtonPressed Windows code
Former-commit-id: 216192b459f4b0ce6dcceb06d954eb883ced2410
2014-03-01 12:23:17 +01:00
Lynix 02275293ee Fixed Texture loader not setting shader
Former-commit-id: 9a2e54c28f42a9390ab51d0909c92b7454aba476
2014-03-01 12:20:52 +01:00
Lynix 0e4b1a8ffa Fixed unused variable warning
Former-commit-id: 7a3752dfc8b68620162ef13fe40ac60c97611af9
2014-02-28 13:40:41 +01:00
Lynix dcccc8a5ad DebugDrawer no longer create shader
Former-commit-id: a7f0f19b01b96fde835624d4a0ac7b029a40a039
2014-02-28 12:14:48 +01:00
Lynix 4fb70f8b9f Removed useless include and added TODO comment
Former-commit-id: 99c33e1725fac1a5e08038b7bb013a7d72bc61c2
2014-02-21 19:45:21 +01:00
Lynix 86bdab9055 Big UberShader update
-Added GRAPHICS_MAX_LIGHTPERPASS macro
-Added glGetActiveUniform OpenGL function
-Added (Uber)ShaderLibrary
-Added (Uber)ShaderName parameter to models
-Changed uniform system
-Fixed Node copying
-Moved Material class to Graphics module
-Optimized lights
-Remade Shader class
-Renamed Node::Invalidate to Node::InvalidateNode
-Renamed ShaderProgram to Shader


Former-commit-id: 15f0cad52969e91a2442e7d750ba2dc412f3549d
2014-02-21 19:27:39 +01:00
Lynix 4ee2ceaef0 Fixed debug compilation
Former-commit-id: d2e8883f65ebc6a3025676d69211e54b6e115333
2014-02-21 11:43:54 +01:00
Lynix fd958fd9ac Updated the way module are initialized
It's safer and prevent a bug when initialisation fails


Former-commit-id: a04f18e18f2d9db11ec595a9b8096c2792b39641
2014-02-21 11:13:14 +01:00
Lynix 4df6c30a26 Fixed ParameterList placement new conflicting with MLT
Former-commit-id: 97ca15d16e20e42427fceeea4f96a2e6b857dc83
2014-02-18 00:52:23 +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 9533f16e46 Fixed forward shading point lights for real
Thanks to Raakz


Former-commit-id: a6c2b282a18d2dfa94732afb401811c8dd5d4b93
2014-01-18 09:08:42 +01:00
Lynix 4016d2fdcf Fixed LuaInstance:To[Boolean|Integer|Number|String]
Former-commit-id: 7ab510da1474fa0020981f8d5c90cf866087fa36
2014-01-15 14:40:50 +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 6545b919c5 Fixed forward shading point-lights
Former-commit-id: 43b933a1f8f4be8e9a8c2189c73f86e4f33229a4
2014-01-12 10:02:07 +01:00
Lynix bcfe357be7 Fixed String constructor (Close #24)
Former-commit-id: 4be4b713375ab4285776ec22b598117e3ede418a
2014-01-12 08:42:48 +01:00
Lynix b9dca8966d Improved Deferred Shading performances
Former-commit-id: 7251e9f552230c31409f7780929fcc30f2b85bed
2014-01-11 19:16:36 +01:00
Lynix 9bf66e7e16 Added RenderTexture::Blit
Added RenderTexture::GetSize


Former-commit-id: f385ccc39a2051765db9befa3b77f75b17529447
2014-01-11 19:10:19 +01:00
Lynix cbce6e6e64 Reunited Deferred Point Shader and Spot Shader
Former-commit-id: 0a77f57d8af98387690748102f6cdcea5d5514ed
2014-01-11 10:21:33 +01:00
Lynix 16578e728f Renamed RenderClearFlags to RendererBufferFlags
Former-commit-id: 7821709bc7310820e877db9bb26d1fb50d7ba217
2014-01-11 10:12:06 +01:00
Lynix d902eea49e Added "force mono" option to Music and SoundBuffer
Former-commit-id: 1f46d1461a8289a590a71e368f282a955d7d8234
2014-01-10 20:09:13 +01:00
Lynix faed82426f Fixed missing implementation of Music::GetFormat
Former-commit-id: e3d8ca822a46d00a5eec6e0512dd089e88049cf7
2014-01-10 20:01:33 +01:00
Lynix 601346a566 Fixed possible bug in NzMusic
Caused by sending a non-updated buffer to OpenAL


Former-commit-id: 4441bcc9cd8cee874ba8bc5f66f1234cfffd3621
2014-01-09 21:04:58 +01:00
Lynix 26fb8abbbd Fixed broken Audio module
Former-commit-id: 72adc46d13bb165c1a2f3bf72dc60f64b0b5973e
2014-01-09 19:54:36 +01:00
Lynix 6088e439e3 Fixed last commit
I hope one day i will merge without any error !


Former-commit-id: 2634ffc2a05aa8ce018ee4849ae5ca14c36ac8f5
2014-01-08 12:09:09 +01:00
Lynix 0702e2e7bd Merge remote-tracking branch 'origin/Audio-update'
Conflicts:
	include/Nazara/Core/ResourceLoader.hpp
	include/Nazara/Core/ResourceLoader.inl
	src/Nazara/Audio/Loaders/sndfile/Loader.cpp
	src/Nazara/Audio/Sound.cpp
	src/Nazara/Utility/Loaders/MD2/Loader.cpp
	src/Nazara/Utility/Loaders/MD5Anim/Loader.cpp
	src/Nazara/Utility/Loaders/MD5Mesh/Loader.cpp
	src/Nazara/Utility/Loaders/PCX/Loader.cpp
	src/Nazara/Utility/Loaders/STB/Loader.cpp

Former-commit-id: e0706cc0feafb1ad182b8cc51e2b18f8f3664b97
2014-01-08 12:03:52 +01:00
Lynix 351618f93b Fixed instancing not enabling in some conditions
Former-commit-id: a6a29acd1896f44a7f82dd64fd53740b9021b422
2014-01-08 11:27:29 +01:00
Lynix 5132ada030 Fixed DynLib::Load not emitting error on failure
Former-commit-id: 73d792ccaf18533a04f834f6cefcd2eb844c2100
2014-01-08 11:25:37 +01:00
Lynix b85a5bd5d5 Some changes in DynLib internals
Former-commit-id: cfd8cbbdf30e2b0a6faa3a283c860001b07ae6de
2014-01-08 11:12:34 +01:00
Lynix 26a6158f8f Audio update
OpenAL is now loaded dynamically
Added (back) Audio::[Get|Set]ListenerRotation


Former-commit-id: d99ba9f15ec250f3963cd50d6a4a892209235c4a
2014-01-08 11:06:40 +01:00
Lynix 9ac4df3c6c Added move constructor/operator to DynLib
Former-commit-id: af6c6b2ad7803a9ae6d7106188a0b69e341835c0
2014-01-08 10:48:23 +01:00
Lynix d72486d400 Modified PluginInterface internal
-No more warning when adding a non-existing directory


Former-commit-id: 778ebe57678288293556616fd66d3cdee9d09c79
2014-01-05 15:31:56 +01:00
Lynix 3dd8b8fce1 Modified DynLib/PluginManager interface
Former-commit-id: 2dae56cad852a46c9bac828cc7775a4da42c96cf
2014-01-05 15:30:27 +01:00
Lynix 3625713914 Fixed bloom pass
Former-commit-id: 114db3f6b8857f2ef95da88a118d90eb203806c3
2014-01-05 15:29:34 +01:00
Lynix f3f16144ab Modified comments
Former-commit-id: d66e58a05e212983a6522989ece76a7bdf0292c6
2014-01-05 15:28:57 +01:00
Lynix a332579c80 Deferred Shading update
-Deferred Shading now use a dynamics pass system
-Forward Shading is now capable of rendering more than three lights
(Multipass)


Former-commit-id: 74ed0b998d72aa9eb3bd2aab938a75985ebb2bf6
2013-12-28 10:22:03 +01:00
Lynix 3e0561830f Added Renderer::GetDepthFunc
Former-commit-id: 222cefb90f7fd4771bd5b9f9eab9f9adf02b72d9
2013-12-26 11:33:01 +01:00
Lynix efd3491b43 Fixed Bloom shader not compiling everywhere
Former-commit-id: ff47c90aefa7c54349dfe162c6d5b3e34957460a
2013-12-20 20:08:05 +01:00
Lynix ac7f5008ca Improved FXAA
Former-commit-id: aa3b64de5be93b05fab0ad45039e5aac74c4d197
2013-12-20 20:06:00 +01:00
Lynix f2bb457850 Updated Shaders for Deferred Shading
Former-commit-id: ab97c6e7b74bffad32d334a2d0e5bd4607047c03
2013-12-20 20:05:51 +01:00
Lynix 69479de643 Added center mesh parameter
Former-commit-id: e010a81e3f00ca6091e438d405e3e6ca14938b8f
2013-12-20 20:03:18 +01:00
Lynix d01d6009d0 Fixed SoundEmitter spatialization
Former-commit-id: 01619ceae0609421e590bd5ac0e6ed3828457e7e
2013-12-20 19:43:48 +01:00
Lynix bed3cc570b Fixed memory leak
Former-commit-id: 1cbf2fbe929dc3b210ce0c8ca0e4e5edfe4165b4
2013-12-20 19:41:36 +01:00
Lynix d87dc7bf50 Added Model::InvalidateBoundingVolume
Former-commit-id: 8298726f5170f1d0318e86173e7feba6d4e60e6c
2013-12-20 19:41:13 +01:00
Lynix 4f671db265 Added Sound::Is[Playable|Playing]
Former-commit-id: 526edb3f87884f45c6b677f44329a90457d3444b
2013-12-20 19:36:36 +01:00
Lynix bd98490d9f Made Sound class safier
Former-commit-id: 4d75f94086b2bddcd84bed5b17204f99a3d78ef4
2013-12-20 19:33:27 +01:00
Lynix 56438f6ecd Fixed sndfile loader sometimes not working
Former-commit-id: b76e823dff63ae125fc25336a0b730bcf8f86901
2013-12-20 19:30:26 +01:00
Lynix 19d5b62009 Fixed crash on ForwardRenderTechnique
Former-commit-id: 80181ffddf69a52af96814db54aa18a7809fa5d5
2013-12-16 17:22:23 +01:00
Lynix 16bf4bbcf2 Fixed SceneNode::operator=
Former-commit-id: 9c48148eeaeeadbea708dae3d8d30c594cf5a39f
2013-12-13 22:07:42 +01:00
Lynix 3c96d8a1a1 Added Keyboard::Decimal key (Numpad .)
Former-commit-id: ae01476de199e22d080508e88f2625c2f0332002
2013-12-13 22:07:03 +01:00
Lynix 054cde1c8b Fixed SpotLight bounding volume computation
Former-commit-id: 72c87aa9cdb8f0e98ff2e82522d85643896884df
2013-12-09 14:45:21 +01:00
Lynix 0d8572a60c Added DebugDrawer::DrawCone
Former-commit-id: 8c02ac50f3ca6a7fba1494f8f2a42eebfe949f7b
2013-12-09 14:16:48 +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 9357079e1d Added RenderBuffer class (Usables with RenderTexture)
Former-commit-id: f32a2d5e5018ce3b1d41db87aec6fa910c8183a3
2013-12-07 23:48:21 +01:00
Lynix f7990e4521 Warnings no longer throw exceptions
Former-commit-id: 49545105cb8d5a56e493b5eb63ed745aeb02d2f6
2013-12-07 23:47:07 +01:00
Lynix 3f10354461 Removed redondant comment
Former-commit-id: 29c54a7cf234b9f944c18b51a32e1eb8b1629d4e
2013-12-05 10:20:53 +01:00
Lynix 0af23c11f5 Fixed TaskSchduler not releasing memory and handles
Former-commit-id: 4bf70d2ffdaaaea6b8ee122bb4589b3d8c68884f
2013-11-30 16:13:54 +01:00
Lynix ca76c4dfb3 Added some asserts
Former-commit-id: 703f3982d7fec1ac4ec46c185fbbdf2668e8a848
2013-11-30 13:48:12 +01:00
Lynix 55aed0ec68 Rewrote Task Scheduler
Better and faster implementation


Former-commit-id: d765415ca0576cd843480292e30c2d7bafa7f66a
2013-11-30 13:48:01 +01:00
Lynix 5eeb409484 Updated comment
Former-commit-id: 09c999fca26df0d9656e1ae0edf369e10a6855e8
2013-11-30 13:00:16 +01:00
Lynix 3c337c0191 Optimized ConditionVariable Windows implementation
Former-commit-id: 4f2e582d64e8f3a1f83cea2bd0f7220987aa4332
2013-11-30 12:29:39 +01:00
Lynix 0e99205046 Fixed rendering
Resource encoder now store unsigned char instead of signed char


Former-commit-id: 648dd1d55facd40bc37075291782a54cbbc4811f
2013-11-26 15:25:43 +01:00
Lynix a8a0bcf005 Made SSAO load its noise texture from memory
Former-commit-id: 69d5cd81c728e49be846c2be89d65ca2cd3e1e9b
2013-11-07 00:00:15 +01:00
Lynix 05f8b88b4d Disabled SSAO
Results were just terrible


Former-commit-id: 294b8729f876fe1b7af79520a4616b3f79c2ed3c
2013-11-06 23:59:10 +01:00
Lynix c647b61904 Fixed MemoryStream::Read crash when just skipping (null buffer)
Former-commit-id: 46072c0ebd093bcfa1e7f54d11deb034cbc55dae
2013-11-06 23:56:20 +01:00
Lynix f722d83955 PluginLoad now return an int instead of a bool
Since it's C-exported


Former-commit-id: 77ac90bd7151b086c555ffed50066991910e3cd8
2013-11-06 23:55:44 +01:00
Lynix 2489f46fb7 Changed default plugin directory
Former-commit-id: e730d1bfcdc339f8279084f3305488bf0aff5d3c
2013-11-06 23:55:10 +01:00
Lynix 7f7e8d8567 Fixed ErrorFlag not being exported
Former-commit-id: 0b24f1beb68333806bb6b29786e1ea05a0802638
2013-11-06 23:53:55 +01:00
Lynix b7b65d7119 Added Deferred Shading
Former-commit-id: 926022d6306144e2f87cd293291928bda44c7a87
2013-10-22 12:54:05 +02:00
Lynix 37c45153af Fixed whitespaces
Former-commit-id: 56787f5a0cf0093ad63b33a8b4746968215e2a11
2013-10-19 18:28:15 +02:00
Lynix cb007b48fd Fixed compilation error on POSIX
Former-commit-id: 92c425519f250d15f4fe71d2e08e987b965dac70
2013-10-19 18:28:05 +02:00
Lynix d97d4b62e4 Fixed missing files
Former-commit-id: e1f774f034503628ae7fbaa292142f5b6d1082ab
2013-10-09 10:55:37 +02:00
Lynix 3cbcc527cd Added Sprite::SetTexture
Former-commit-id: 275e689110fe7b86159b895a3016a64f1103effb
2013-10-09 10:14:17 +02:00
Lynix 0f382fd1ad Added new RenderTechnique system
Former-commit-id: 6d65a4537232bc705333c696f2478d47f16e074a
2013-10-09 10:14:17 +02:00
Lynix a88fe446bd Made use of lambda functions
Former-commit-id: d7d81da2a9fc73c9b3e44d292bda9fd47ac561f3
2013-10-09 10:14:15 +02:00
Lynix 14eda38cac Made static_assert useful
Former-commit-id: 135783fe3ee3f5304309dd6948f0a83a349e62b2
2013-10-09 10:14:14 +02:00
Lynix eefd0ddd35 Fixed Texture::Update behavior
Former-commit-id: 8d1de49226b72b3f1e063b9da87c3391bce9ea95
2013-10-09 10:14:13 +02:00
Lynix 282291ffad Fixed error message
Former-commit-id: e75016a246fdc912575cd82e3ac93b9e4e952e20
2013-10-09 10:14:13 +02:00
Lynix 239ce4e323 Fixed Render[Texture|Window] crash when released while on use
Former-commit-id: 30b4bd5b7eb7b665cecfe6366117b7a3b4290202
2013-10-09 10:14:12 +02:00
Lynix 185b450c64 Improved Lighting
Former-commit-id: 6ac2d8ec9a3b283a8179e5f0bb5d5896ec57a14b
2013-10-09 10:14:11 +02:00
Lynix b01fad269e Improved Texture mipmap support
Former-commit-id: 0fc3e003a6524e5c026712a3dc695cf80817ea88
2013-10-09 10:14:10 +02:00
Lynix 8ce5f879a8 Improved RenderTexture class
Former-commit-id: 0126eeefce5512a504024e1c0ef2e5f1345003b3
2013-10-09 10:14:09 +02:00
Lynix a410e8856a Improved Error system
Former-commit-id: ddd08841d30575713f4a28ac02566f92791e5539
2013-10-09 10:14:09 +02:00
Lynix 672cbaed1d Optimized OBJ loader
No longer loading same material twice


Former-commit-id: 21e1842600722f4ba3c02816fbfc016a6e5175c5
2013-10-09 10:14:08 +02:00
Lynix dbbc931df1 Fixed MTL keyword "tr"
Former-commit-id: e5e4ff0a9f7adcc7ba01f9e1586794a9357f3218
2013-10-09 10:14:07 +02:00
Lynix 14a939d785 char -> const char
Former-commit-id: 2ffdcff37f29286517fb33c1b56151405f84bc53
2013-09-23 09:54:13 +02:00
Lynix 1a561e42ff Added Light::SetLightType
Former-commit-id: 8f55cd7b3941496e97795ca920c7a657e555eeab
2013-09-23 09:49:03 +02:00
Lynix 96974a9d2b Fixed Light copy constructor/assignment operator
Former-commit-id: dadf40b2e3a58ed32d9f38b8fea8d60d2297b767
2013-09-23 09:44:43 +02:00
Lynix 05712da240 Fixed MD2 translation
Former-commit-id: dfae1a1d0588c41fb647580623af7a69d367a01e
2013-09-23 00:25:11 +02:00
Lynix 06cda62c9a Fixed Model "Mesh" loader not using mesh parameters
Former-commit-id: 5fd20c30c3d9afa2651ddd17ca74dabf025ec826
2013-09-23 00:24:31 +02:00