Commit Graph

635 Commits

Author SHA1 Message Date
Lynix df8449c13e Added HDR texture formats
Former-commit-id: affa3c0842d3918977c48483bf485ac17e218448
2013-08-28 03:05:46 +02:00
Lynix 866ff64548 Added Texture::GetSize()
Former-commit-id: da4b31cf95f605f83da17f63bc9a6dbd1d8b35c6
2013-08-28 02:52:47 +02:00
Lynix f69d2f13e5 Changed light model
Former-commit-id: bdf192bd83dbb5ae3ce8c46d6414e5b4fbc0047a
2013-08-28 02:52:09 +02:00
Lynix 83dc00dc60 Added forgotten file
Former-commit-id: c5fd96568c3d6d5ab889a718afc45f955310db34
2013-08-26 13:40:56 +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 7d9eac7660 Refactored code
Former-commit-id: 95c723425cc2ac626b5ddd6d77f69e0a4b0a630a
2013-08-26 13:36:41 +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 f1dc7b98e5 Separated Shaders from Manager
Former-commit-id: 7faddbd38bd729b2778f09be3f98105ef5219740
2013-08-25 19:55:03 +02:00
Lynix bf4b762a5d Renamed CORE_DUPLICATE_TO_COUT to CORE_DUPLICATE_LOG_TO_COUT
Former-commit-id: fc877ab4467261e052f167e39471bc8b3b0b6c5e
2013-08-24 21:59:21 +02:00
Lynix 24e56790cc Fixed transparent model rendering
Former-commit-id: da363be3b19951ae49996fe9d05998420e80911f
2013-08-24 16:22:55 +02:00
Lynix 8611f629cc Removed useless line
Former-commit-id: 3daf9f4b30a614b196d4f68711cfc5782c6e0d86
2013-08-24 15:31:08 +02:00
Lynix 1493da0466 Increased user-friendlyness
Former-commit-id: 9611bb08f0be314d65453b88d84c36299d9a22af
2013-08-23 22:05:17 +02:00
Lynix 7fa8f3dafd Moved Model::EnableDraw to SceneNode::EnableDrawing
Same goes for Model::IsDrawEnabled() => SceneNode::IsDrawingEnabled()
Is Drawable is now a pure virtual method from SceneNode


Former-commit-id: 217c6a21a98206ee0b283aaa216d419696a70faf
2013-08-23 13:16:42 +02:00
Lynix fe6816b089 Fixed buffer corruption bugs ! (Yeah !)
Former-commit-id: 3e2c82a786810a160d324f8ccf284f8e505613a0
2013-08-23 12:52:52 +02:00
Lynix 74d396a376 Added warning when clip matrix is not invertible
Former-commit-id: 4707faab0259062ad619a5e5c72fcbbfaf853e3c
2013-08-22 10:50:53 +02:00
Lynix 5d0ed4f27c Removed warning when Matrix4 is not invertible
Former-commit-id: d16c6153dfafadc628cb9af9e4ed707045833616
2013-08-22 10:50:39 +02:00
Lynix 198d13be20 Enabled Frustum culling for Sprites
Former-commit-id: 5c5bf7da97f10b43c204bb336c2e979899f506d0
2013-08-21 21:17:39 +02:00
Lynix 6556acfa32 Merge branch 'Graphics-Update'
Former-commit-id: 9855f235dd21d47d1cd9da8c3c0b4ede41e74472
2013-08-21 20:05:50 +02:00
Lynix c8414a39d8 Big Graphics update
Separated LightManager
Added Sprite class
Added View class
Camera is no longer a SceneNode
Fixed Material not invalidating programs
Renamed CameraPosition uniform to EyePosition
Renamed VisibilityTest to FrustumCull


Former-commit-id: ff7fbe4d9b31a3c269baab0b48c6faa347a12161
2013-08-21 20:05:33 +02:00
Lynix 26f120cc66 Fixed Matrix4::[Make]Ortho parameters name
Former-commit-id: ad6a90025e6502ceff9add2c5ecd6c7b83483f38
2013-08-21 19:39:04 +02:00
Lynix a6f26ff336 Added Window::OnWindowResized event
Former-commit-id: 61262182892d2dae3defb239e751cd4b996a5ad6
2013-08-21 18:48:15 +02:00
Lynix b9b572c60c Fixed warning
Former-commit-id: d6ac174b7ad2a365158ccda0300e62aed5bd8a7b
2013-08-19 23:37:23 +02:00
Lynix f73c99d502 Renderer::Clear now takes UInt32 instead of unsigned long
Former-commit-id: ea276bb13e4d5334422eb685ec1a9d908d6f9895
2013-08-18 21:00:04 +02:00
Lynix e31a670041 Minor changes
Former-commit-id: 5954ff863d8f51d7ed47a1b84ae9ff0a5348ecce
2013-08-16 00:27:42 +02:00
Lynix 42a1b9cbe6 It is now possible to initialize VertexBuffer without VertexDeclaration
Former-commit-id: 3f8e82925dea8644384b4ceb962a06101bccc1a3
2013-08-16 00:26:35 +02:00
Lynix 3ff401e413 Removed useless forward-declaration
Former-commit-id: 5c9196995f51d3f3ad2a94f12411ce36d362c4df
2013-08-16 00:23:20 +02:00
Lynix 35bd693216 Fixed Matrix4::(Make)Ortho
Former-commit-id: fb65916496b8c28c21dcaf6c623ab1427a6e7767
2013-08-16 00:23:03 +02:00
Lynix 241e8fe9d9 Optimized ForwardRenderTechnique
Former-commit-id: a4e035c860ed2fcaeedadd5a41fb9f6251649000
2013-08-10 22:59:02 +02:00
Lynix 970cf1afc8 Fixed parameter name
Former-commit-id: 9197c406c3b1be915707a66eae04f5445453f8f5
2013-08-10 14:55:49 +02:00
Lynix 64ceeea544 Fixed linker error
Former-commit-id: 48d6cea8887c476916efbc44490857c566527ae5
2013-08-10 13:55:44 +02:00
Lynix 13b505f91f SceneNode::VisiblityTest now use Camera instead of Frustum
Former-commit-id: 71199e3e80c5fbd6116d5fedb13276480f4e4731
2013-08-09 19:04:29 +02:00
Lynix d509fddc82 Added RenderTarget listeners
Moved Camera matrices assignation to RenderTechnique


Former-commit-id: c8a4ff4b35d40702f047fdfd3fdbc4e4fbbbb1a9
2013-08-09 18:25:30 +02:00
Lynix bee3652604 Added TODO
Former-commit-id: 7ddbe20041836fcb4a7b2b82d57a191298b0e95e
2013-08-09 16:33:24 +02:00
Lynix d4cff9946e Improved ResourceListeners
Former-commit-id: 8016c23cb75aab94762a1e2838dbbcac2093119b
2013-08-09 16:28:07 +02:00
Lynix 28eff9af30 Instancing will no longer be used under X instances
*Experimental* optimization


Former-commit-id: 4dee4905d59739b3ec062ef283d4b7561160e21d
2013-08-09 00:33:18 +02:00
Lynix 69d150272f Remade instancing
Former-commit-id: b297ed84e86a714c58d42219cc1dd8337e3a732c
2013-08-07 01:17:20 +02:00
Lynix c6f89757b6 Fixed missing noexcept
Former-commit-id: 58276c2ba77d0242fade3b29034f28871b48a987
2013-08-07 01:10:52 +02:00
Lynix 6507e1ed2d Updated buffers interface
Former-commit-id: 8c8d60b6b22cc844740dbc3320af65575cec4feb
2013-08-07 01:10:26 +02:00
Lynix 901b917d37 Fixed Color::operator+ and operator*
Thanks to Overdrivr


Former-commit-id: 696e2a35f4e0243577a56feeb16e2268f25290d3
2013-08-06 23:15:22 +02:00
Lynix 19e02a900b Added Directory::Exists
Former-commit-id: 51e6b909b323074401b0200747db35f2e4b1c42a
2013-08-03 20:20:30 +02:00
Lynix f47ecfe414 Added unsigned int constructor to ByteArray/String classes
Former-commit-id: 2b52c0dabcd6fbf4ad33b31ef3cb84e668edcd54
2013-08-03 20:18:12 +02:00
Lynix ce028e497a Made current file relative to engine directory
Former-commit-id: 7a664df265a1d1b7f9b3594e34418163cc023eda
2013-08-03 17:35:08 +02:00
Lynix a8ab9e2c74 Added Material::HasCustomShaderProgram
Former-commit-id: bdd119b41d5312a65aec2d781a78283343ef4b4c
2013-08-03 17:14:30 +02:00
Lynix 059ea21b41 Added ShaderProgram::LoadFromBinary
Former-commit-id: fdc6b06173954bb9c382ed73e7cd9bb0c5fd01a5
2013-08-03 17:14:10 +02:00
Lynix ae53b01ca1 Added File::Write(ByteArray)
Former-commit-id: 7f064cc17d940b5d2e3229264598cb0f1c778c80
2013-08-03 17:13:34 +02:00
Lynix ccb3adfc1c Cleaned ByteArray class
Former-commit-id: a155b789634cb1e7d875be2f4d1ba6cc896b4212
2013-08-03 17:13:16 +02:00
Lynix c358e5ab6d Added option to disable menu keys under Windows
Former-commit-id: a596eb7ab2a24a7246d0bf08eeb00a3d746639d8
2013-08-03 00:20:48 +02:00
Lynix 4b783f6f6f Renamed Shader to ShaderProgram
Former-commit-id: 492b12d8bb48cff46ea46c83141b6d5a1540ff8f
2013-08-02 18:39:20 +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 29ee943871 Made non-filling version of ByteArray::Resize
Former-commit-id: 0fec6b5749a786fc1999b9fc718a481d47c52895
2013-08-01 23:14:49 +02:00
Lynix efd6185f56 Added Box::GetSquaredBoundingSphere
Former-commit-id: 12ecb5d84f44e39ddacb96b83a897f618337c2e1
2013-07-31 14:18:47 +02:00
Lynix 84ebd6043c Sphere::Distance now returns distance between center and point
No more negative distances


Former-commit-id: 1688b82e88621e20312b6b28090ed63941b3e02a
2013-07-31 14:18:27 +02:00
Lynix 48e5af6373 Added NazaraDebug macro
Former-commit-id: 5a8cec09bd4a7283f86d030ac2d867cda23736cd
2013-07-30 21:31:28 +02:00
Lynix 4352083c4b Added ShaderManager (Experimental)
Former-commit-id: 327e373f2b932e31184e88c5f29bd5bd8fa3ba46
2013-07-15 00:23:04 +02:00
Lynix 68d5f9a8e6 Added default subdivision value for planes
Former-commit-id: 3884f79e74e52b4d78140f3cf96c02768d7ba440
2013-07-14 00:47:23 +02:00
Lynix 405e14d9ae Added OpenGL::GetGLSLVersion and ImageLoadStore shader extension
Former-commit-id: 97afadc93465132e6a698c5bf88e4ec070aff3db
2013-07-13 17:07:16 +02:00
Lynix afbd002234 Minor changes
Former-commit-id: c66ee9a05270965921c48ab7b9faf3033a59ce20
2013-07-10 21:10:53 +02:00
Lynix 380b65814a Fixed compilation errors and bugs
Former-commit-id: f09f4135cafa7601b217b11b0ebda74789629b6e
2013-07-09 23:54:30 +02:00
Lynix 18cc3b16df Fixed leaks
Former-commit-id: 61b219e69fb048eef08ce03dca3a9cb2741760b4
2013-07-09 01:13:14 +02:00
Lynix 5b730f1d4c ResourceListener no longer add a resource reference
Former-commit-id: b249d472b4140b85e4e286552323fde6b9b66bd7
2013-07-09 01:06:11 +02:00
Lynix b31771471a Added automatic uniforms: (Inv)TargetSize
Former-commit-id: 382351590abe98dc9ef8f6ab4ecb30c8b42806a4
2013-07-09 00:54:17 +02:00
Lynix b035852576 Optimisations
Former-commit-id: 81d277a49b57f061a6339678bd953054e434c613
2013-07-03 01:17:22 +02:00
Lynix 9197f05fdf Fixed typo
Former-commit-id: baf322c10dc625ca2f66e31525f1420a6a16fa7d
2013-07-01 16:31:00 +02:00
Lynix 4abefc3e93 Reworked IndexBuffer, Vertex[Buffer|Declaration|Structs]
Former-commit-id: e3f637f2680afda57a444f73b8f7ad681bb1b8a5
2013-07-01 16:14:29 +02:00
Lynix 35d9a2fef7 Fixed Vector2 division operators
Former-commit-id: cceddfe0bdb1ac94355ad3d04e4c9dab51d2edce
2013-07-01 16:04:50 +02:00
Lynix 7172ceaa6b Reworked (fixed and optimized) matrix handling
Former-commit-id: 6148748da07e228a746f51950231126b036b05eb
2013-06-27 19:04:22 +02:00
Lynix 30cb518c74 Added Alpha Test
Former-commit-id: 59dc6ef8f1dbff49bb13cf452bf75326ad7a6257
2013-06-27 19:02:31 +02:00
Lynix f4ef89bb32 Made Matrix4::ConcatenateAffine more robust
Former-commit-id: 7d6f74959b29a597fa9b08d8d3c58fbaf9e2555e
2013-06-27 18:56:05 +02:00
Lynix 984ade783a Added Renderer::DrawFullscreenQuad
Made [Color|Texture]Background use a new shader-based algorithm


Former-commit-id: cfd319b33712c270726eb697e258d61db2ca6835
2013-06-27 12:54:20 +02:00
Lynix 1a6e55881b Renamed Background to AbstractBackground
Former-commit-id: c99ed2e48c4d82fb1100f412a85468c698142815
2013-06-27 12:53:04 +02:00
Lynix abe56631dd Changed default material
Former-commit-id: 60fe21986d8cdd22e89ea4ccfbb9c5b33ba8eed6
2013-06-26 19:59:34 +02:00
Lynix 245d6e105e Experimental new algorithm to sort transparents objets
Former-commit-id: ad8704584598e1edcd3699d234abaa132d88e581
2013-06-26 15:20:07 +02:00
Lynix d7a66d08b6 OBJLoader now support transparency
Mesh::AddSubMesh no longer return bool

Former-commit-id: 71217618d179c5853683f4615901565cb7cd3ab8
2013-06-26 15:17:53 +02:00
Lynix b7c4d607ce Improved interface of Primitive
Former-commit-id: bcd4f2eb247c8f7fb59d864884e6ecda5f60afb1
2013-06-25 14:06:04 +02:00
Lynix 0bd70f8df1 Readded DebugDrawer::Draw[Binormals|Normals|Tangent]
Former-commit-id: 7e5f98670914da0618d40b2e5fcf49b66f0627a1
2013-06-25 00:31:31 +02:00
Lynix 0e3a4fa90b Updated physics module (Still experimental)
Former-commit-id: 4852b7cf6eca5ba3177397586877fe3d3c39dbd9
2013-06-24 13:33:54 +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 3609f31708 Added std::hash for String, made use of unordered_map
Former-commit-id: 20f3d12bc3222873706949f0a7d0a131e237a247
2013-06-23 16:53:37 +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 b0c46b2384 Revised String class
Renamed String::Substr to SubString


Former-commit-id: 6aa925799e71af6916f7808368a3faa26efbe1bc
2013-06-19 02:25:19 +02:00
Lynix c1e57c829c Added experimental implementation of ByteArrays
Former-commit-id: c95729bb45059c199344471a61042d98090034c8
2013-06-18 21:07:53 +02:00
Lynix ebf402f138 Added GetNearestPowerOfTwo
Former-commit-id: 609d470e8478c659b816ad7d34fb9d56ad551b07
2013-06-18 21:06:41 +02:00
Lynix 880c2aa32c Plane primitives no longer rely on normal vector
Former-commit-id: 66e1e2a83799055ad773f7b145e569469f68279a
2013-06-18 16:39:46 +02:00
Lynix 3e8ed9b1e4 Fixed conflict between VAO and OpenGL::BindBuffer
Former-commit-id: b1182e3b0327a73431a8e81106df9109e9a80cc2
2013-06-18 02:29:31 +02:00
Lynix 6c659410cd Made use of RenderState
Former-commit-id: 500aba0d0dd60e7371dea6c219d6a5ccfdcbadf8
2013-06-18 00:38:18 +02:00
Lynix 88d3ec1ad1 Refactored Material interface
Former-commit-id: 9a00be1b73b2c879fc77c9fdddc0192baa241fda
2013-06-18 00:37:40 +02:00
Lynix 7a45ff4884 Added RenderStates
Former-commit-id: c742cf2fc1cac807b9e2bcbd88c2b3d77327c106
2013-06-17 23:58:45 +02:00
Lynix 84cb7cb731 Cleaned LuaClass code
Former-commit-id: bba27b339435b22773255f9f69c55968505454ba
2013-06-17 23:58:17 +02:00
Lynix 54bc1d77fd Removed useless config defines
Former-commit-id: 37daf78c04fe1e810ab4e0ca6880c857797f7020
2013-06-15 16:11:19 +02:00
Lynix bb99d044bb Nazara now use meters as units
Added scale mesh parameter
Added smooth camera to FirstScene demo


Former-commit-id: b3985e10d84512e3b32f2569ac034ba63ace589a
2013-06-13 19:29:59 +02:00
Lynix 3294f18608 Added Node::Get*Direction*
Former-commit-id: e9c4f04da7b92965dc1236313ddebf66d0eaad8d
2013-06-13 17:05:21 +02:00
Lynix 28175f3170 Camera not longer use a LookAt view matrix
Former-commit-id: c07e1db9f939bcfe9ef09a1fdab88176f79b61e8
2013-06-10 16:42:17 +02:00
Lynix 7f9455b947 Added Matrix4::(Make)ViewMatrix
Former-commit-id: 4a21da456f90c5d0c53c291885b3a214be893b5e
2013-06-10 16:41:25 +02:00
Lynix f3d0618ae6 Added Mesh::Transform
Former-commit-id: c0680b23ff81a10a580934fc24d1ae4a13780595
2013-06-09 22:05:33 +02:00
Lynix 6b2af70f1d Cleaned interface
Former-commit-id: cdd284de8396d5988853c84d5db17bfa6fa0ba51
2013-06-09 22:05:05 +02:00
Lynix ca5fb44ecf Really fixed AABBs
Former-commit-id: 003979537f2ea5362849df8a65611739aea6d298
2013-06-09 22:03:42 +02:00
Lynix 40bf1723f5 Added Node::SetTransformMatrix
Former-commit-id: ca5c457f48b12b5603ee6a7629159a74388a9b42
2013-06-09 16:16:42 +02:00
Lynix e689f6f09f Added Mesh::Recenter()
Former-commit-id: 07ef8b3296b835e207bfa904af29546f724e6dc3
2013-06-09 16:15:13 +02:00
Lynix 542ce665c2 Added ComputeVerticesAABB algorithm
Made TransformVertices template
Removed TransformVertex


Former-commit-id: 68c7bdae2bd21adbed3fc7c54361c439ea0e5d37
2013-06-09 16:10:12 +02:00
Lynix a478926570 Fixed (I hope) Matrix4::GetRotation()
Former-commit-id: 9480437dde664034d7e44c81a3931922c215b646
2013-06-09 16:00:44 +02:00
Lynix 273391d8cb Added optionnal parameter to NumberEquals(a, b)
Former-commit-id: 30e69529d7e15857046327edd6cbe587a3951fa3
2013-06-09 15:53:49 +02:00
Lynix 7a7cfc3092 Added [Box|Rect]::Translate
Former-commit-id: 72b4cd351a7233df89709366fbe7ce59e4ba94e7
2013-06-09 15:50:56 +02:00
Lynix bb31a1666f Added [Box|Rect]::Get[Maximum|Minimum]()
Former-commit-id: 5226f2dfd2beaec2bc9075543f555cc48a457e3a
2013-06-09 15:41:57 +02:00
Lynix c940abdb75 Renamed [Box|Rect]::GetSize() to GetLengths()
Former-commit-id: 3c122057634a6472034b284bfe7091acbb41d004
2013-06-09 15:34:36 +02:00
Lynix c76c419867 Cleaned interface
And fixed some VS warnings


Former-commit-id: 8c89fa1d4dc92a362053e4cdeabe20537fcec2a6
2013-06-09 11:25:17 +02:00
Lynix 8460a96744 Regenerated global headers
Former-commit-id: 36bc6f9b3f71af890c98c2d9f2e716382bcfda7b
2013-06-09 11:24:13 +02:00
Lynix f74f9e964e Replaced Mesh::Build by BuildSubMesh(es)
Former-commit-id: c5b034aa764cdda0ea0c48182f2562968a10c226
2013-06-07 12:22:43 +02:00
Lynix f233db0b4e Changed default recursion level of icospheres
When used with PrimitiveList


Former-commit-id: b0010d2eb22535c7a2574f76546dc5d42ab4da5a
2013-06-05 19:49:56 +02:00
Lynix 928c0aaaf7 Added IndexBuffer optimization to Mesh parameters
Former-commit-id: 073b37fa9ede92f88861110fb4fb0b84d54e26ae
2013-06-05 19:40:54 +02:00
Lynix ccb6f5b729 Added indices optimisation algorithm
Former-commit-id: 89086e814ca11a048949fe0fc6e20648824bbb36
2013-06-05 19:39:48 +02:00
Lynix 910a79fc84 Cleaned interface
Former-commit-id: b5f1871c164dd72098e389b76edf0994fb1fb124
2013-06-05 15:56:51 +02:00
Lynix 146ca80a63 Added index iterators
Former-commit-id: de3ed77ba9e3c48aa68020e23ded679066b9878f
2013-06-05 15:33:43 +02:00
Lynix fbc0d7404e Improved code
Former-commit-id: 33082b8f9d55c7a3b9550c788eb27fc613c08032
2013-06-05 13:24:33 +02:00
Lynix 573b4ebf79 Fixed forgotten file in last commit
Former-commit-id: ac75cc7dacda565f0a12ac0afa58cf939b2b2e5d
2013-06-04 14:52:12 +02:00
Lynix 9239ff8881 Box primitives now uses vec3 lengths parameter
Instead of a Box parameter


Former-commit-id: 6c433e883252c6db8eba3b791d1e9364ce5d3b1e
2013-06-03 17:14:09 +02:00
Lynix fb839de33e Renamed (Oriented)Cube to (Oriented)Box
Also renamed BoundingBox to BoundingVolume


Former-commit-id: 795c70c265ba17f6b96fc30799e89f140c52852b
2013-06-03 14:18:31 +02:00
Lynix a3f1417abd Added Matrix4::Apply[Rotation|Translation]
Former-commit-id: 1c59aa48f057d4bdc4b4413e349d2b4290dec055
2013-06-03 12:57:20 +02:00
Lynix f712ed1c73 Merge remote-tracking branch 'origin/Physics-module'
Former-commit-id: d4e2c3b0633ac7916b646e6fe33c75ed94e68bf1
2013-06-01 12:06:09 +02:00
Lynix 714e3e01bc Added mesh generator functions
Added Mesh::Build


Former-commit-id: dcfc6587b67ab4ec350ab7ca04ae7f45475f6b1b
2013-05-30 13:25:45 +02:00
Lynix 65c08442ce Added Primitive(List)
Former-commit-id: 3080a1846616fb2dac25e6d341c8a9220f406de4
2013-05-30 13:22:10 +02:00
Lynix ac9e200e83 Merge remote-tracking branch 'origin/Graphics-update'
Former-commit-id: 6050b694c2c97ec65e7573d729985e5b7aacec84
2013-05-30 13:17:23 +02:00
Lynix c99ab36ebe Made Cube/Rect more user-friendly
Former-commit-id: 13ac0b9f6428059596c98f636caf61afd2a436b7
2013-05-30 03:02:43 +02:00
Lynix e0229ab390 Cleaned Thread class code
Former-commit-id: d8c918c7a3c50ed3ed2f225303540d3860863d4e
2013-05-30 02:59:08 +02:00
Lynix 465a7c246d Added Identity Matrix optimization
Former-commit-id: c426c3098659f9cf74fd7da33cadabe38a158358
2013-05-30 02:58:20 +02:00
Lynix b3f60e90fd Fixed Quaternion::(Make)RotationBetween
Could not handle parallel vectors


Former-commit-id: 3fed3a46d443b208dc95a5bcd29dd43fb7960114
2013-05-30 02:56:58 +02:00
Lynix 355d52324a Fixed licence text
Former-commit-id: c4f7c3c0fffc0449ebf0a405632877d902c3da62
2013-05-29 01:35:21 +02:00
Lynix 5f36817209 Rewritted rendersystem
Former-commit-id: 9cbc601413e057047b94b8b872ee2316a86638c4
2013-05-25 10:07:36 +02:00
Lynix cf6e2be0b0 Renamed PrimitiveType to PrimitiveMode
Also renamed RENDERER_INSTANCING_MAX to RENDERER_MAX_INSTANCES
Added RENDERER_SHADER_MAX_LIGHTCOUNT


Former-commit-id: bc26e087dd1b55c424836e6e2fa6e1dc0f17effa
2013-05-24 20:12:40 +02:00
Lynix 8014f67eb8 Added Physics module
Former-commit-id: acc3ffe119ebfae9c0199eb878a621325c28844a
2013-05-23 23:16:36 +02:00
Lynix c934d8ed6b Added NazaraStringify(Macro)
Former-commit-id: 1b4b3165153013e9d2ff5e78c54c4a214deb7ac4
2013-05-23 02:12:22 +02:00
Lynix 0717823b0e Renamed depth test to depth buffer
Because disabling depth test also disable depth write


Former-commit-id: 0e0b3353c309fb1d702d030accc4349f1f0c6d96
2013-05-21 16:16:36 +02:00
Lynix 3ff5761703 Fixed missing headers
Former-commit-id: 85c27f12d393c087a455433b2bf7298a25f13b44
2013-05-21 14:00:23 +02:00
Lynix 3b8072c921 Regenerated Core and Utility global header
Following d46df4f changes


Former-commit-id: e1475d9f72469e0c4a3541265f23d292f6947fc0
2013-05-21 13:59:51 +02:00
Lynix 864fcc639c Fixed missing include
Former-commit-id: fac04e2c5524993a0499cb65d44a79d926d22452
2013-05-21 13:54:29 +02:00
Lynix 8f09eea340 Renamed XImpl to AbstractX (More consistent)
Where * is Buffer, Hash and Shader


Former-commit-id: a99681ab1d515c9b39e6ba5f447c9000ef1092b8
2013-05-21 13:54:10 +02:00
Lynix 4b68ff0118 Added alpha-mapping support
Former-commit-id: ba4598e9e5efc47e04e72dc709d64d214d77e9a1
2013-05-16 22:48:16 +02:00
Lynix c05c22c97a Fixed Frustum::GetPlane not compiling in debug
Former-commit-id: efe801b21f50803368aea4c5442a43c1621545f6
2013-05-16 22:21:33 +02:00
Lynix 6d2a1118bc Implemented Matrix4::GetRotation
Former-commit-id: 90e0b6942497c1337ac3873d3990515284df4aa6
2013-05-16 22:21:16 +02:00
Lynix 2b00ee9c04 Cleaned SubMesh code
Former-commit-id: 26be5a2fd205428f10316f899ee36b8fc3c3d46e
2013-05-13 12:52:56 +02:00
Lynix 6c743a89b9 Added Quaternion::(Make)RotationBetween
Former-commit-id: e28517580bd17970e77a38f54e7c114cdaf402d5
2013-05-13 12:52:39 +02:00
Lynix 16004fd41c Added IntegralPow function
Former-commit-id: c04d3bf6365f3ced475405a85285b3956a066c47
2013-05-13 12:52:12 +02:00
Lynix c484bd38c9 Added OpenGL::BindTexture(unit, type, id)
+ Fixed OpenGL::DeleteTexture


Former-commit-id: 124ac3316f604e436378aed8d663f0d2b5889cd3
2013-05-11 14:04:41 +02:00
Lynix 28f46a5c90 Added ShaderUniform (Faster GetUniformLocation)
Former-commit-id: c8a01eccde07fc3b2aac46c5b974f8406ad949f0
2013-05-11 14:03:22 +02:00
Lynix 991d841d57 Made String(char) explicit
Former-commit-id: 02f5ead8fe60b825464f956d9fc6ea4689bda44b
2013-05-11 13:51:56 +02:00
Lynix 459c7a4d07 Made use of atomic variables
In order to replace mutex-protected integer values (Performance
improvement)


Former-commit-id: d40ed2444111f00dab372f2371fe91cfd9cd2472
2013-05-03 23:12:58 +02:00
Lynix 4f3060a40d Greatly improved Renderer
Separated Viewport from Scissor rect
Improved performances
Removed Lock/Unlock system from Shader/Texture class


Former-commit-id: f54bca6de58fe9d495d9192dc0d761f92594ee86
2013-05-03 02:58:35 +02:00
Lynix 780bcf122c Nazara now use thread_local (GCC 4.8 is required)
Former-commit-id: 09c0c24ede4a6860acfc71b9532f286bd1381dda
2013-05-03 02:55:26 +02:00
Lynix a8066a58af Added Matrix4::(Make)Transform(T, R)
Former-commit-id: 556554c8cc589dfe64b3a8be903f62af894011c4
2013-05-03 02:50:38 +02:00
Lynix 90603e1f42 Improved LuaClass
Still no inherance though


Former-commit-id: 14c48e5238cc666f4054a0a484d7ac1ec8b7f22b
2013-05-01 02:01:09 +02:00
Lynix 2097d3476d Minor changes
Former-commit-id: 03920c74e2dc63a700d8167318d1bb14b4b68c8d
2013-05-01 01:37:18 +02:00
Lynix ce358b119f Removed useless platform detection macro
Former-commit-id: 2d8dc32c34da903a6ab236d3427be68ec06732a5
2013-05-01 01:36:39 +02:00
Lynix 7908839785 Added Window::GetStyle()
Useful with external windows


Former-commit-id: 62974c8cdfb6919bc1e85507cc8adc8101daba1a
2013-05-01 01:36:13 +02:00
Lynix 961c658ae1 Changed Matrix4::(Make)Transform argument pos
To reflect "TRS" transformation
Also removed an useless line


Former-commit-id: b60a70d04797f40f3490b26706740b375fe38421
2013-05-01 01:35:17 +02:00
Lynix 6699ce328f ResourceLoader SteamChecker now return a ternary
Former-commit-id: 2ee274ebb2b61f39e93f6ff2306b5a326b158594
2013-04-27 11:51:42 +02:00
Lynix 1e256bdf35 Added Lua module
Former-commit-id: 3f96b9aef8afffb5e8daf460480df2f3b8c37da7
2013-04-24 11:51:06 +02:00
Lynix fdf0c8a71f Added Node::To[Global|Local]*
Fixed Node::Interpolate when used in global coord sys


Former-commit-id: 1963a6c6d3df8b2bc8a3f7a2a7a7102611ca6493
2013-04-19 13:59:57 +02:00
Lynix 86cd0ddbe1 Initializer now uninitialize in the inverse order
Former-commit-id: f6edf57dbad8e131bec0b1ed02e96d41aa40c3aa
2013-04-16 11:58:51 +02:00
Lynix 9870a2249b Added Lua extern library
Former-commit-id: 597a37211727803de7c8816a23154d71b8446cea
2013-04-12 16:51:04 +02:00
Lynix b7468d3b8f Nazara now prevent building with a C compiler
Former-commit-id: 04c247acbe590d1c3a615875759833a9fbf550bf
2013-04-12 12:45:05 +02:00
Lynix 36f8631028 Added user-friendly method for accessing materials
Former-commit-id: 6f254ea6e324b3467a811ba5282f67b6ea078d51
2013-04-09 14:26:14 +02:00
Lynix f8e942af65 Improved error message
Former-commit-id: e7193cb36ffba475c6b1c37822676da31042bf15
2013-04-09 11:33:18 +02:00
Lynix 38a28c26d2 Added user-friendly method for loading maps
Former-commit-id: 4990988256a37c55c6d07b273fd48430221235ae
2013-04-09 11:33:03 +02:00
Lynix b871688c87 Updated global headers
Former-commit-id: 81a83ba49a3fe2cd6b121b82879b58fd59ed2114
2013-04-07 02:10:24 +02:00
Lynix 4afe078e9d Added cubemap helpers for Image/Texture
Former-commit-id: 3c0dfb9e9b78369b8a552a55f2c70b978e626ce9
2013-04-07 02:08:08 +02:00
Lynix 8d8a47da4c Infallible Image methods no longer return a bool
Former-commit-id: 10af51caf639d010b36829bdb82afbcfc908582c
2013-04-06 17:32:55 +02:00
Lynix c3c3d07be0 Added Skyboxes
Former-commit-id: f4153c047d658afb3e42302a34b0263fbac78d88
2013-04-06 17:04:56 +02:00
Lynix 578523b4bf Added emissive mapping support
Former-commit-id: f469b1bcada16f0f2350cc10e9dc25fcf3c24abe
2013-04-06 15:07:29 +02:00
Lynix aa6d4c5b52 Reworked Image/Texture
Improved performances
Fixed some bugs
It is now possible to use non-contiguous buffer


Former-commit-id: 0fa7d13a740f62dae511a1549b267e2f2011d5a6
2013-04-06 13:53:45 +02:00
Lynix 67e409ff53 Fixed Background not having virtual destructor
Former-commit-id: 3d08b8f44cd661bea7f0e36dda74e7bad90f1f2a
2013-04-06 00:14:25 +02:00
Lynix 8c77d6e990 Fixed leaks
Former-commit-id: 2f0a73b3bb5df04c13200d71dc198e2fe9ec30e1
2013-04-06 00:13:56 +02:00
Lynix 91a272482e Initializer will initialize several class at once
Former-commit-id: b64c87006e5fd237399b623fca32ec03d0d3d50c
2013-04-03 16:42:54 +02:00
Lynix 8694f71c2a X::Initialize no longer takes arguments
Former-commit-id: a8233235e89112630f2d31c637723443bd0829a4
2013-04-03 16:41:57 +02:00
Lynix d8c5f4a0fd Renamed TupleUnpack to ImplTuplUnpack
Former-commit-id: 34c987536e7835e411f51a5a87eb2cb1eaf29ea2
2013-04-03 14:55:32 +02:00
Lynix 98e70f21a1 Made Background::Draw receive const scene pointer
Former-commit-id: 2b84f8ea924714d81046f3dd29990939586e7622
2013-04-03 01:47:43 +02:00
Lynix 2c7744af41 Fixed last commit
Yep, forgot to test it :D

It should be okay now


Former-commit-id: 3392523240affb4151f5121decb0e458500878a3
2013-04-03 01:25:57 +02:00
Lynix 34dbd19385 Merged 2D and 3D modules into Graphics module
Former-commit-id: 33bf0fbe727e50e864bc52680c95a106ada508e9
2013-04-03 01:14:55 +02:00
Lynix d989069336 Fixed music looping
Former-commit-id: 2484c81da5e2f0c0ef72cfbad26e53df129662e7
2013-04-02 01:40:19 +02:00
Lynix b4c7818200 CherryPicked commit "Reworked ResourceLoader"
Conflicts:
	src/Nazara/Utility/Loaders/MD2/Loader.cpp

Former-commit-id: 708c34c80f78cca224012149cf1d8faf37922463
2013-04-01 23:18:28 +02:00
Lynix 2f72939ad0 Added [Sub]Mesh::GetTriangleCount()
Former-commit-id: e365bd3aa57d487186a0be5cde1d5b0ba78d740c
2013-04-01 14:33:10 +02:00
Lynix e111e6b907 Fixed incorrect comment
Former-commit-id: d3abeb65dd314f563d6cacaf45f09e06626c72f8
2013-04-01 02:52:03 +02:00
Lynix ad978dc85a Moved normal/tangents generation to submeshes
Former-commit-id: d043284a1a5810b429cc76d8bc071010985a523b
2013-03-29 14:48:23 +01:00
Lynix b86332a51b Refactored TriangleIterator/VertexMapper
Former-commit-id: b8d4fc79142b36519ebe1879276415fe30970d3e
2013-03-29 14:42:55 +01:00
Lynix 5048705702 Added deferred mapping to BufferMapper
Former-commit-id: f02e5c999560fbd00894fcda9c6a6f80a6fc9e13
2013-03-29 14:41:27 +01:00
Lynix e617783999 Improved resource loader error message
Former-commit-id: 3a8c565551b38a2ec3311db3d134e641d46527f8
2013-03-26 01:01:59 +01:00
Lynix ddc900185d Added String::Append(str, length);
Former-commit-id: a1c16d5966221cffe1f28b20f099922078360818
2013-03-26 01:00:29 +01:00
Lynix 56feddb100 Added Scene::GetActiveCamera()
Also fixed a warning when instancing is used without lighting


Former-commit-id: 5326e95f99a58ffcc91d7942ec2991482d7e58bd
2013-03-25 13:27:18 +01:00
Lynix 5dd2d0d6a7 Changed Resource::SetPersistent default argument
Former-commit-id: 803534a0216d85f96e6f6f7810e5e76ebcc8bb44
2013-03-24 01:07:01 +01:00
Lynix b5d73ce389 Added ModelLoader
Changed Model::SetMesh behavior


Former-commit-id: b1c937b22bcebeef8b8fc42ff061dbf8ece8d2f1
2013-03-24 01:03:21 +01:00
Lynix 9c88cbfa84 Fixed ResourceRef not removing references
Former-commit-id: 4f3578aeb60ea6cba6f18ba7d5f0f0e9a06a05c9
2013-03-24 00:59:16 +01:00
Lynix 7ddff94a30 Added (move) assignement operator to Model
Former-commit-id: eee1b92633656e47454218583f8e8bdabcddc157
2013-03-23 22:49:24 +01:00
Lynix 8f21a75c43 Reworked ResourceLoader
Former-commit-id: 9809e7fcd3657dfe90a0795986d0918f4ae1823c
2013-03-23 22:49:06 +01:00
Lynix ea2cc97169 Added Texture backgrounds
Former-commit-id: 8aa98a9b8bee5fbf1b5eefa958a7b9095b784cf5
2013-03-22 11:15:17 +01:00
Lynix 5390bd49f0 Fixed pixel flipping (ex:horizontal was vertical)
Former-commit-id: 8fb8e6949ae1d2c3d53e42b979f1716e25d3bba9
2013-03-22 11:14:11 +01:00
Lynix ccea00b12e Added backgrounds
Former-commit-id: e3959b04a124978c473bd6330047b5fd6ac27b19
2013-03-21 23:02:11 +01:00
Lynix ea75b8ece5 Added some comments
Former-commit-id: 4710c355d4106191419441b4fb49370dc9f04ec2
2013-03-21 22:55:34 +01:00
Lynix ce63985b0e Fixed Drawable destructor
Former-commit-id: 01ff3c3c86dc0bd3f25b51384b0751d3767aa9ba
2013-03-21 22:55:16 +01:00
Lynix 23b760139e Completed Vector3 vectors
Former-commit-id: 73c16102c22fe1d01b9b9411aa3e1bf82949542c
2013-03-21 22:52:19 +01:00
Lynix c7fdf25432 Added Matrix4::GetDeterminantAffine
Former-commit-id: 404098cc552509039c38e7449b167dbab0385008
2013-03-21 18:29:50 +01:00
Lynix 5ac36d99ef Fixed scene visible updatables
Former-commit-id: 9633d7049bbe9d5f6b304ab8e9702fae93540018
2013-03-20 17:07:07 +01:00
Lynix 929c0db82d Added glDrawTexture (NVidia extension)
Former-commit-id: 51d43d7423adeef0f0f0c0de5c633ee3d3b6ce2a
2013-03-20 15:41:06 +01:00