Commit Graph

1180 Commits

Author SHA1 Message Date
Lynix a9ef2f7e36 Added support for faux-bold and faux-italic
Former-commit-id: 259429e8d38b0299e30d539253b50e3aab12c76b
2015-01-08 14:19: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 b6c5668232 Separated atlases from Font class
First use of shared_ptr, yay!


Former-commit-id: 4c22341fba5674746d5299cf0e8dbf6dc31d5362
2015-01-07 23:46:26 +01:00
Lynix b61ff3a0d1 (FreeType) Made Bold more strong
Former-commit-id: 9bee352eb567fc51d9d34e73a16fe9340de49d82
2015-01-07 23:42:45 +01:00
Lynix 09856d42e3 Fixed Texture::Download with mipmaps
Former-commit-id: 1c2f6bd9fdd580e3fd5a6425bfa49251766676d2
2015-01-07 23:42:07 +01:00
Lynix 586aac534b Improved Image error on construction handling
Former-commit-id: 5b40aab103d90bb29baedf65d481b2495717af8d
2015-01-07 21:03:57 +01:00
Lynix 904319ee90 Improved/Fixed Texture class
Allowed move constructor/operator
Fixed Texture::Download/Texture::Update
Made InvalidateMipmaps public


Former-commit-id: b8b6a54bc5d6250f640fed6582dc694df6405f73
2015-01-07 21:03:29 +01:00
Lynix 9293022e71 Added sprite overlay rendering
Former-commit-id: 1e25a7d85f06f4a4bc3ed0ead76df01db440671d
2015-01-07 19:27:15 +01:00
Lynix 72a24c4d7c Aded Renderer::GetMaxTextureSize()
+ minor changes


Former-commit-id: 6b80280d018c323ceb393c58aab96d68a15f3ff2
2015-01-06 19:03:39 +01:00
Lynix 5cbdd8832c Turned DataStorage enum into flags
Allowing for example hybrid buffer implementation


Former-commit-id: 74af1ba5b11b945abdfa6b46d0c11d600eca6d7c
2015-01-06 13:36:58 +01:00
Lynix fc1e75d379 Fixed compilation error (from 683866baee26a12cf63b20914fff338cc872a4c8 [formerly a885b69881c30dcad29f87c3ffee41808761b6c9])
Former-commit-id: 8d96d5dee5666bbce41f406bcbabe269e101fafb
2015-01-05 15:12:59 +01:00
Lynix e3f7644831 Added class AbstractImage, inherited by Image and Texture
Former-commit-id: 16e5db4937a145ac244d6c70e4c74662622f86d9
2015-01-05 15:08:29 +01:00
Lynix 304b4d13cc Removed Texture::UpdateFace
Texture::Update is now able to update cubemaps faces (one at a time)

Former-commit-id: 7468761d1f08fc9477af8da5a38722508c044917
2015-01-05 14:32:34 +01:00
Lynix 1c168fed21 Fixed Image::Update(UInt*, const Boxui&, ...) not working well with cubemaps
Former-commit-id: 6f8c83c6a4ace3006543646df9bb2e2838c6cac0
2015-01-05 14:31:28 +01:00
Lynix d13ab1a050 (Texture) Reflected Image interface (size getters)
Former-commit-id: 4d979671c7b49191fb44b5fae7e9bfb266cd1417
2015-01-05 13:51:46 +01:00
Lynix b2b18a9f51 Added Image::GetSize (returning the image's dimensions)
Renamed original Image::GetSize to GetMemoryImage


Former-commit-id: a2b54f171353b8197639b5f2b3911e4b3f2a8db2
2015-01-05 13:41:56 +01:00
Lynix 0d143a64a2 Made Buffer::SetStorage exception-safe
Former-commit-id: 46e9f9416aa3bd93e130f784a42d23533ec60dea
2015-01-04 19:02:35 +01:00
Lynix 911e10fa84 Renamed Buffer::IsSupported to IsStorageSupported
Former-commit-id: 12309ca590820fd68ab2b15a4c41ffb554832603
2015-01-04 18:30:50 +01:00
Lynix d560975e09 Renamed (Set)BufferFunction to (Set)BufferFactory
Former-commit-id: 6165dcd881716461a9886be6ce7fd6bb2b335ef0
2015-01-04 18:23:06 +01:00
Lynix b3d72ec094 Renamed BufferStorage enum to DataStorage
Former-commit-id: 97eede03eb6bb85e506c640d40c9d6e7acb2e099
2015-01-04 18:16:31 +01:00
Lynix 8a836b2060 Added Font class (+ FreeType loader)
Former-commit-id: 1811304cd0efe9a86cbae83faaf4c39d9fae248f
2015-01-04 14:21:09 +01:00
Lynix 119b043201 Updated STB_image to v2.00b
Former-commit-id: a0887de0a051fab7ceb34c4ed5e9aedde0e6b1a9
2015-01-04 13:21:34 +01:00
Lynix 4de17fdffb Remade sprite rendering
Added VertexColor shader flag
Added color sprite attribute
Added VertexStruct_XY_Color(_UV) struct & declaration


Former-commit-id: b664f4520aa55f4502f85f9dedab9b92040a8c16
2015-01-04 13:19:07 +01:00
Lynix e69c2982b9 Minor changes
Former-commit-id: 1282e3600c687647f637aec42f05d033266e1d33
2015-01-04 13:08:26 +01:00
Lynix 97ff9bc4ac Improved texture creation
Fixed possible wasted space on NVidia hardware


Former-commit-id: 42a26c88d8bd03b1ac845c62984cf8c355f1902a
2015-01-04 12:50:56 +01:00
Lynix ed1cc7a092 Added viewer-relative directions
Former-commit-id: 9d80744bd227689426b76df7e3c273de13424041
2015-01-03 22:39:51 +01:00
Lynix 596f407a79 Added DebugDrawer::Draw(position, size)
Draws a "size"-sized box centered on "position"


Former-commit-id: 9385762a4118fe76364faa5819fd9a94efceefbf
2015-01-03 22:32:56 +01:00
Lynix 7c47a93a72 Renamed Corner enum to BoxCorner
Added RectCorner and Rect::GetCorner method


Former-commit-id: dc99823ceb17f6e91cdf12779c982ab7e024ec24
2015-01-03 22:31:25 +01:00
Lynix 4e9bec804a Merge remote-tracking branch 'origin/master' into Font-Update
Former-commit-id: c62f6317f401e200eff303fcf5b8945302fd89c6
2015-01-03 22:21:14 +01:00
Lynix 5b0d65c767 Merge remote-tracking branch 'origin/master' into Font-Update
Former-commit-id: 7b46087b9e3c137ca1e036449edae7ef15a99f7a
2015-01-03 22:17:40 +01:00
Lynix e6090c80a8 Added default implementation of Unicode class
Working for the ASCII set


Former-commit-id: 70b1fdbb94ba91861494f64bf169c89bbfecc9ce
2015-01-03 21:47:40 +01:00
Lynix 92df395a0e Fixed TriangleIterator with TriangleStrip mode
Former-commit-id: 4d0303859e4818e9f5592b0226cb479f1c9d1ef3
2015-01-03 21:46:32 +01:00
Lynix 2bfb798dd9 Minor changes
Former-commit-id: fd74c48a546663f4d4802826ee2d396b0874e2c9
2015-01-03 21:45:37 +01:00
Lynix 57b90112fb Removed useless includes
Former-commit-id: 63c91b06d959075435fd03c740953be3537ca959
2014-12-17 14:15:22 +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 93314d5c0e Fixed error messages
Former-commit-id: e7dc2e53f9bce6676ac00ff17a36d2bcf8f10253
2014-12-17 14:00:04 +01:00
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