Commit Graph

1044 Commits

Author SHA1 Message Date
Lynix ff7cfa226e Improved Atlas class
It now handles layer resize failure and will notify listeners of a
pointer change


Former-commit-id: df5e2a129897128a4e41e0b3205f6a1dbeb2069c
2015-01-16 16:26:15 +01:00
Lynix 5eec0d2abe Improved (Fixed ?) Material Copy/Move
Former-commit-id: 8eb9b716e2b028c6d2e249f9706ad6f5567c95dc
2015-01-16 14:03:06 +01:00
Lynix 96743375d9 Fixed debug build
Former-commit-id: 5a7ebd258d4b453412d0d74e7be8590905b26a78
2015-01-16 13:25:51 +01:00
Lynix c2f3ba00f2 Revert "Added ResourceConstListener"
This reverts commit 2492f87ba89bafa180308c60d2470b07e3aac27d [formerly 793b9a8884fb6153d5da152e2cf22659fc7e511b].


Former-commit-id: 05a9dff26921db1e7c1c5b90c0cd50073a839f3c
2015-01-16 13:02:53 +01:00
Lynix e36e8a21e0 Fixed VertexLayout_XYZ_Color_UV declaration
Former-commit-id: e9aa4604e88467c23dd889da943d9e00b75ae637
2015-01-16 12:52:48 +01:00
Lynix b5dbe6f03f Added XY_Color VertexLayout
Former-commit-id: 0f53126584b61738b25b1d86cec819d6166ad678
2015-01-16 12:52:10 +01:00
Lynix 3139e80902 Fixed do-while
Former-commit-id: 08f2520ddee6e6f006f04d60df4a3da52b2ec356
2015-01-16 12:46:42 +01:00
Lynix fbcdd6bb2b Fixed potential crash
Former-commit-id: df8cde180c157f08031cd04d37bb735aa266ee53
2015-01-16 12:46:27 +01:00
Lynix e85c6afa12 Added some formats (.fon, .otf and .ttc) support to FreeType loader
Former-commit-id: ff5d9f9522c920976929603f25d056ed68e6d971
2015-01-16 12:46:07 +01:00
Lynix bdaa4f2838 Renamed TextStyle_None to TextStyle_Regular
Former-commit-id: 3bd44c785f8c6f011bcade1242b051d8662287d2
2015-01-16 12:45:29 +01:00
Lynix 9d83f3f474 (Font) Added spaceAdvance SizeInfo
Former-commit-id: 2767915c2554103615918347c6e742cb324092c5
2015-01-16 12:42:27 +01:00
Lynix 1781e93462 Renamed AbstractFontAtlas to AbstractAtlas
Former-commit-id: 2908a05a7d2d6d44e2e29e96c52cafe962382b71
2015-01-16 12:40:23 +01:00
Lynix e3de7e6f3c Added Atlas listeners
Former-commit-id: a487b6ed53d9b97bfee27b28ba5523e43c1e9e7e
2015-01-16 12:36:13 +01:00
Lynix 1b266e7d7c Allowed font to set glyph border
Former-commit-id: f410fb83ecd0e1ace639e32fd809d00caa4145bc
2015-01-08 14:24:35 +01:00
Lynix 703ea6e9c8 Removed useless call
Former-commit-id: 1c3d84596b5c6b61c6bb64e9067653b8d2279955
2015-01-08 14:20:00 +01:00
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