Commit Graph

92 Commits

Author SHA1 Message Date
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 bf2d39541c Fixed cubemaps rendering (Skyboxes)
Former-commit-id: a8d065cbdf8bdbde55547739e53b4daa6ce2969d
2014-09-03 13:29:40 +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 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 7a6195991c Added Quaternion component type
Not compatible with Vertex Declaration though


Former-commit-id: 3174553981ab23fe59ed616c2ce1a27bf7db0108
2014-07-13 09:29:12 +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 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 c23649c363 Improved comments
Former-commit-id: 41b9a4704712f96c155c518f321e59415adf9294
2014-04-25 18:55:21 +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 70e57a338f Optimized hardware buffers
Former-commit-id: 59f96166fb259137b5e0445eb5faa0b912b0f29c
2014-04-20 22:32:09 +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 cd73159d5b OpenGL class now uses CallOnExit class
Former-commit-id: c8c5bb7e50e73ba007e095eaf801fa7d5e3aa215
2014-03-06 09:55:26 +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 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 9bf66e7e16 Added RenderTexture::Blit
Added RenderTexture::GetSize


Former-commit-id: f385ccc39a2051765db9befa3b77f75b17529447
2014-01-11 19:10:19 +01:00
Lynix f3f16144ab Modified comments
Former-commit-id: d66e58a05e212983a6522989ece76a7bdf0292c6
2014-01-05 15:28:57 +01:00
Lynix 3f10354461 Removed redondant comment
Former-commit-id: 29c54a7cf234b9f944c18b51a32e1eb8b1629d4e
2013-12-05 10:20:53 +01:00
Lynix 14eda38cac Made static_assert useful
Former-commit-id: 135783fe3ee3f5304309dd6948f0a83a349e62b2
2013-10-09 10:14:14 +02:00
Lynix 15fa8378c9 Added a lot of methods to send uniforms
including arrays and integers vectors


Former-commit-id: c365cccdbad7eab1a1212e78759d7fda857012f9
2013-09-16 01:01:59 +02:00
Lynix d4abb8fc49 Made stencil per face side
Former-commit-id: 093f2125886d47ebc79f97aaecfad3a5216f399a
2013-09-06 18:17:58 +02:00
Lynix e92f388c65 Renamed FaceCulling enum to FaceSide
Former-commit-id: 7847dcd64e0b23d261a9ec07f3bc1a3c162985e5
2013-09-06 17:59:48 +02:00
Lynix 52b0ed7e72 Fixed compilation error
Former-commit-id: 32c37e6af9fcdb3409b32e84e8765657c2201a68
2013-09-06 17:50:54 +02:00
Lynix 0dd56560e2 Renamed StencilOperation_[Decrement|Increment]ToSaturation
Replaced incorrect "ToSaturation" part by "NoClamp"


Former-commit-id: a0bb122a332bdae291a8a7d46474980574ae168e
2013-09-06 17:43:34 +02:00
Lynix 9d4f7250aa Added RendererComparison_NotEqual
Can't figure out why it was missing


Former-commit-id: cf243f8a081208cc97924d802611d0e3376d8135
2013-09-06 17:41:14 +02:00
Lynix 10f7d185a6 Added conditional rendering
Former-commit-id: 30c062a469ad5f534b95a33c07c92c89036aacf7
2013-09-06 17:38:34 +02:00
Lynix e60b1c010e Added OpenGL functions
glBlendFuncSeparate
glStencilFuncSeparate
glStencilOpSeparate


Former-commit-id: 61d1a9fb2fe92232bee4421d8a4770a03f33d7ef
2013-09-06 17:23:32 +02:00
Lynix 0fd535a9e8 Added a lot more texture formats
Former-commit-id: b3a553ea39a174d84c5cd6fcca853ee83c1e6670
2013-09-06 12:07:38 +02:00
Lynix 76abb5bf16 OcclusionQuery renamed to GpuQuery, and added query modes
Former-commit-id: b36a9b623653ac9b1eb422b09b3781ef46b81aca
2013-09-03 13:49:17 +02:00
Lynix df8449c13e Added HDR texture formats
Former-commit-id: affa3c0842d3918977c48483bf485ac17e218448
2013-08-28 03:05:46 +02:00
Lynix f679f323c2 Made scissor rect/viewport Recti instead of Rectui
Also greatly optimized Renderer::Get[ScissorRect|Viewport]


Former-commit-id: 87945543144216715520a4c3ab30629636995afd
2013-08-26 13:37:33 +02:00
Lynix 72a57fbf4c Fixed crash when resources in use by the Renderer are released
Former-commit-id: 98eedb556f0387f0a5c1cafde2fc74645d1d0457
2013-08-26 00:40:45 +02:00
Lynix fe6816b089 Fixed buffer corruption bugs ! (Yeah !)
Former-commit-id: 3e2c82a786810a160d324f8ccf284f8e505613a0
2013-08-23 12:52:52 +02:00
Lynix e31a670041 Minor changes
Former-commit-id: 5954ff863d8f51d7ed47a1b84ae9ff0a5348ecce
2013-08-16 00:27:42 +02:00
Lynix cbc92364f4 Fixed rare crash within OpenGL::[GetRendererName|GetVendorName]
Former-commit-id: a5b12a391178eef87129c9c8c9a58e7016a6279b
2013-08-12 22:03:46 +02:00
Lynix 5bc3d3b46e Fixed OpenGL Renderer and Vendor names
Former-commit-id: ce962b69924f6e78e51b6f2e86f1b6cccf7dc13e
2013-08-12 01:09:01 +02:00
Lynix 1ebaf4749c Added static assertions to secure code
Former-commit-id: 207f1135b3b40cee74fbf8ba98e6fb7379ba8c33
2013-08-03 20:58:50 +02:00
Lynix d751718a16 Added methods to retrieve shader binary
Added support for GL_ARB_get_program_binary


Former-commit-id: 3c23cfd237680f7832d15279af9e4248f9fa4678
2013-08-01 23:22:48 +02:00
Lynix 48e5af6373 Added NazaraDebug macro
Former-commit-id: 5a8cec09bd4a7283f86d030ac2d867cda23736cd
2013-07-30 21:31:28 +02:00
Lynix 405e14d9ae Added OpenGL::GetGLSLVersion and ImageLoadStore shader extension
Former-commit-id: 97afadc93465132e6a698c5bf88e4ec070aff3db
2013-07-13 17:07:16 +02:00
Lynix 4abefc3e93 Reworked IndexBuffer, Vertex[Buffer|Declaration|Structs]
Former-commit-id: e3f637f2680afda57a444f73b8f7ad681bb1b8a5
2013-07-01 16:14:29 +02:00
Lynix 308c2cfd78 Decreased useless OpenGL calls (Optimization)
Former-commit-id: b07c32afa9aa98b91eb8bd146a175f693af539ed
2013-06-27 12:50:38 +02:00
Lynix 3b88cd936c Fixed bug with threads and OpenGL contexts
Former-commit-id: 044923d57873f4e1a1eb4001395a83dbe97aabed
2013-06-25 00:26:18 +02:00
Lynix 44fdb48384 OpenGL's VAOs are now used the right way
Former-commit-id: 04a944b55d7406bc6028a2d90a5550b0d5e888f0
2013-06-24 00:24:22 +02:00
Lynix 00c2e824d1 The OpenGL wrapper now handles context change
Fixed some bugs
Thanks to Raakz


Former-commit-id: f156ba7aa3307cccd83c9c02987dadad02cd8185
2013-06-21 01:28:11 +02:00
Lynix 5886238e2e Fixed srcBlend not being updated
Former-commit-id: 84ae24fdc116c48b91b356810d3637b6510f971e
2013-06-18 18:31:30 +02:00
Lynix 274aa96037 Fixed condition (Thanks to Raakz)
Former-commit-id: 57b41719ccfea5d60ca4edb79da5b2f0548a56d5
2013-06-18 18:28:54 +02:00