Commit Graph

1310 Commits

Author SHA1 Message Date
Lynix cd48d70844 Made Context/RenderTarget usage constant
Former-commit-id: 07a2655ea642664bc49ca335cf5147ebf9fb9f26
2013-03-02 19:09:13 +01:00
Lynix 636b9d3f50 (Node) Added name getter/setter
Former-commit-id: 56ec0721abfba836a12c8a2de7f7c909f58a6c37
2013-03-02 01:33:58 +01:00
Lynix 2686fe86a0 Regenerated global headers
Former-commit-id: cc09fa7dea265d096fa280a54b4c1f10fc4c37d9
2013-03-02 01:33:24 +01:00
Lynix ab1fc99fcd Big 3D update (WIP)
Former-commit-id: 9f55dae0521bded91640a7ea2d223a49a378c97c
2013-03-02 01:29:44 +01:00
Lynix a20818d66b Added interfaces
Former-commit-id: dfe596f28917dd5358e0bb87269fcfd4efa74f1c
2013-03-02 01:03:20 +01:00
Lynix eda1f5ebab Added 2D module
Former-commit-id: 4e1ad41928e04e9de4b4288b973f37b6eb0755db
2013-03-02 00:28:22 +01:00
Lynix eca2ec3115 Stabilized TaskScheduler (Still buggy)
Former-commit-id: a604c6616065342b21d2c11c27974ec11935a852
2013-03-02 00:26:48 +01:00
Lynix b1da998d24 Updated Utility
Former-commit-id: 6da80ae53e6965e1fb8a74e656434f514aac8c62
2013-03-02 00:24:34 +01:00
Lynix 7540fbf09c Improved Node interface
Former-commit-id: fdeb313d5e59e5b2f92f347370ee6b08572069b9
2013-03-02 00:23:49 +01:00
Lynix b4d7e16749 Updated Renderer
Former-commit-id: 74ad349814a5624cdf1c61bfb9e0123b82be06f2
2013-03-02 00:22:49 +01:00
Lynix 0df64e03ae New mesh policy
Former-commit-id: cc5854d55e1e4bb83e5e081434b87ec22fcb8bff
2013-03-02 00:17:40 +01:00
Lynix 347b267d43 Added shader flags
Renamed ShaderBuilder enum to ShaderFlags


Former-commit-id: b3440bac5491f0a0a90cbd7f9ed8e396c16c0864
2013-03-01 21:54:41 +01:00
Lynix b75c04b16a Fixed Matrix4::MakeOrtho
Former-commit-id: 04b75d7c82e34cce4e27b761861747a6375241b3
2013-03-01 18:37:29 +01:00
Lynix bb4c747e0b Buffer::CopyContent takes now an const buffer
Former-commit-id: c7a44c3198a24a60a26ab3cc04f75f4cea159979
2013-03-01 16:11:39 +01:00
Lynix 3b0751fb88 Added support for Instancing
Former-commit-id: 62f5f3186423b01f7a0ac2762969dca12bea1327
2013-02-26 01:40:57 +01:00
Lynix 9b2eb8ce3f Optimized frustum tests against BoundingBox
Former-commit-id: d923e5fa8c9b29dcaca1e0bffc28015ee96c4f30
2013-02-26 00:02:43 +01:00
Lynix 1b5215d4c2 Removed AxisAlignedBox (Replaced by BoundingBox)
Former-commit-id: 931dd6710caf49aeaede51efe209d714f080c44b
2013-02-21 18:28:32 +01:00
Lynix 2e6b864cad Added OrientedCube class
Former-commit-id: ca42e08a8bf73b5801bea1536bd8a8af5e386574
2013-02-21 18:27:08 +01:00
Lynix 283b551d56 Adding some methods to Cube class
Former-commit-id: b8a72658aa97841156910e8ec1120d109069fce1
2013-02-21 18:26:41 +01:00
Lynix a9b538de20 Renamed Vector[i]::[Squared]Length[f] to Get[*]
Also added length pointer parameter to Vector[i]::GetNormal


Former-commit-id: 345ebd14bda9f5e0a3843e7603eb7a1a39667db1
2013-02-21 11:29:35 +01:00
Lynix 31be0bdef9 Fixed infinite aabbs
Former-commit-id: 3040da77b407ec62c01b32f05b11adad35702e6d
2013-02-21 00:52:45 +01:00
Lynix 8b49a6426f Fixed [Frustum|Plane]::ToString()
Former-commit-id: b09821e54d3335a0d3c3cc30ec3050d26a30046a
2013-02-20 16:51:09 +01:00
Lynix 28ea9fc9a0 Added Frustum::Contains(AxisAlignedBox)
Fixed Frustum::Contains, Intersect and Plane::Distance not being const


Former-commit-id: e219a10fac78f50743f19ebe523345bcac0b0fb7
2013-02-20 16:41:29 +01:00
Lynix 6bfe9c8890 Fixed AxisAlignedBox::Transform missing return
Former-commit-id: 13888840999937528a7f4b7c23869eee929853a3
2013-02-20 16:37:22 +01:00
Lynix add363a290 Moved AxisAlignedBox to mathematic module
Former-commit-id: 2cb5b151941a431b5c12457f0decf7b39195052d
2013-02-19 12:32:11 +01:00
Lynix d56900fe01 Added DebugDrawer::Draw(Frustum)
Former-commit-id: 595204759c54ccc1e7cec38fe3e26b6b3400e723
2013-02-19 01:24:46 +01:00
Lynix f894502e98 Added TODO
Former-commit-id: 5196273b2ab5a94d276183e6545cdb472507c502
2013-02-19 01:24:13 +01:00
Lynix 933a0c7f38 Added Frustum class
Former-commit-id: 90b380e8f8ff21333d081aed0fd65de0393a0242
2013-02-19 01:23:51 +01:00
Lynix 760470e3f0 Added Sphere class
Former-commit-id: b674083e88f3ab6df2313d460eebc3e0e56a80f3
2013-02-19 01:23:37 +01:00
Lynix 28fcb06025 Added Plane class
Former-commit-id: fbbb1f230b4a9f85de0b56b4924ab65f74b4b654
2013-02-19 01:20:15 +01:00
Lynix 0051b76b9b Improved Vector4::Normalize
Fixed length output


Former-commit-id: 2ff9aeca4e125965251187a1b7e2a4c6e0c08e5a
2013-02-19 01:19:31 +01:00
Lynix b6940e9d8b Fixed Corner_Max
Former-commit-id: bc9e18cb6227335d0ce79c3b2cb35705fd76709a
2013-02-19 01:18:47 +01:00
Lynix 49cdbc3c47 Added [Cube|Rect]::ExtendTo(X, Y[, Z]);
Former-commit-id: 6f3a92644acd818f94088347cc6f1be939adb7f9
2013-02-19 01:10:47 +01:00
Lynix ee7a9c572b Added [Cube/Rect]::Get[Negative/Positive]Vertex
Former-commit-id: 66e4851be7751402077ea67df0554a51f3d28df2
2013-02-17 23:41:43 +01:00
Lynix 4a11ff269f Replaced division by multiplication
Former-commit-id: 76c47816b99ed104fc5fd1fe155156f64a053fa1
2013-02-17 23:41:03 +01:00
Lynix 2e4c27188f Fixed math not including some headers
Former-commit-id: a0da804f710d2decf84cd2429d1fedc0df5e49f7
2013-02-17 02:09:10 +01:00
Lynix 60d41f3c4b Moved AxisAlignedBox::GetCorner to Cube
Former-commit-id: 59509594e6cda19089b93efd8dc77ab7bd20250c
2013-02-17 00:51:16 +01:00
Lynix cdf632ac96 Minor changes to math module
-Fixed missing Set method: "X::Set(const X&)"
-Removed operator String


Former-commit-id: 690f161704ed85fc57a62b812af7933e390572b5
2013-02-16 19:21:14 +01:00
Lynix 43b5e493f6 Added face culling boolean to materials
Former-commit-id: ed651beb3545b85d5496bb5739c4caa9c81df8a3
2013-02-13 01:35:01 +01:00
Lynix 3409461c39 SkeletalMesh::Skin now use threads
Former-commit-id: 4b26b3e1950548887f0a7d246864a968688ca0b4
2013-01-29 02:01:28 +01:00
Lynix 00d636fb1c Changed module initialisation behavior
Former-commit-id: f3901c7785ab89b113afd961d7a51b609db2e314
2013-01-29 01:57:51 +01:00
Lynix 861c1b6a38 Added Light::GetLightType
Former-commit-id: 22739eaaed4daf0651860c34af30bbfad87f538f
2013-01-27 18:41:20 +01:00
Lynix 85c3224752 Added mesh generation of normals and tangents
Former-commit-id: 42b29acf5701b19156d6966b402baf11c87f3476
2013-01-27 18:39:32 +01:00
Lynix 2cb1f121a5 Improved readability
Former-commit-id: 8cb71d9f3ba34be26a1133e2f4b118c86a8cc0ed
2013-01-24 00:13:24 +01:00
Lynix 07f8f5d029 Added experimental PluginManager
Former-commit-id: 717e0a6b8a729a4c7c3bf0f377a93028543a1e2d
2013-01-15 16:54:41 +01:00
Lynix 01d82c7a11 Fixed typo in macro PLATFORM_MACOS (Added X)
Former-commit-id: f60f6019768ee6f69a1be157a5c88096f5ee421d
2013-01-15 16:54:23 +01:00
Lynix 09e0ab898d Relaxed constant access
Former-commit-id: 885a7f065ccf9ff1fdbef23c88b852bb2e48fac7
2013-01-15 16:53:59 +01:00
Lynix 3080ed8a43 Deleted TaskScheduler constructor/destructor
Made no sense


Former-commit-id: 9ce8eb9a565db98d8124a2ca941897365ba45885
2013-01-15 16:33:46 +01:00
Lynix a186a66b1f Added NAZARA_DYNLIB_EXTENSION macro
Former-commit-id: bdf82a80846fd599328d2f9ff4454d9050eda091
2013-01-15 15:43:46 +01:00
Lynix f338cc3609 Added Resource::GetResourceReferenceCount()
Former-commit-id: 1e07449a9a28887f2fd6fbc211590b360ec16dc1
2013-01-12 18:53:44 +01:00
Lynix 4a28e42d4d Improved Node interface
Former-commit-id: cbc204748d8cf30771743f26270324dee6ada242
2013-01-12 01:38:58 +01:00
Lynix 507022db7c Added light class
Former-commit-id: e2969fe35720e1ea2f982a86197237a50bef1389
2013-01-11 14:40:02 +01:00
Lynix 842890e12e Added optional argument to Node::SetParent
Also fixed Set[Rotation|Scale|Translation] within global coordinate
system


Former-commit-id: 7808de7c3044f7b9261b22b7db521aad00d63c9b
2013-01-11 14:28:00 +01:00
Lynix e5731bee91 Added shader support to materials
Also fixed a lot of bugs related to materials


Former-commit-id: 54086eb3aa36c1a7b31b55056967275e6c24a4c6
2013-01-09 20:15:42 +01:00
Lynix e3293c6fe1 Added normal mapping
Former-commit-id: 7e54b1f01de7d5cf99c42d08d13ba606f73c453d
2013-01-09 01:36:18 +01:00
Lynix 946754d7be Added specular mapping
Former-commit-id: 329bcfc6b3d92809538c9416578329f11c6ef56f
2013-01-09 00:34:39 +01:00
Lynix e6cef2ddbf Added move constructor/operator to Shader
Former-commit-id: b947e0ac0dcddcfe64c83b63cf89df0e0850cbd2
2013-01-08 17:31:42 +01:00
Lynix 80d4159faa Added DebugDrawer::DrawTangents
Former-commit-id: 9116b5a878752ff193073ac6c156ddca54f8c501
2013-01-04 22:02:47 +01:00
Lynix 45bf5f1f43 Renamed VertexMapper::GetTotalVertexCount
To GetVertexCount


Former-commit-id: fa876c5499664bce31d438ef596373d908c6977c
2013-01-04 16:33:26 +01:00
Lynix 5eac4de406 Added TriangleIterator::Unmap()
Former-commit-id: 8ef858c5374c6701c087d0f4b1644bb6704e1131
2013-01-04 16:32:14 +01:00
Lynix be7afed144 Fixed BufferMapper::Unmap crash when called twice
Former-commit-id: aaf7ead6e93c74c79d6d3e6c3cb743030634eacd
2013-01-04 16:29:53 +01:00
Lynix d4030f666b Added TriangleIterator (experimental)
Former-commit-id: b94f4d4a26a92f4acecf4c53291db80756feb289
2013-01-04 16:27:22 +01:00
Lynix 1f6cac042b Updated global headers
Former-commit-id: 6d87916542e3ae90e49b326c81a1efdc99eea3fd
2013-01-04 11:50:38 +01:00
Lynix ef5f4617c8 Added IndexMapper::GetBuffer()
Former-commit-id: 5b203ea56f2201f5ff3c6bbdbc7a6573ed59f136
2013-01-03 23:28:41 +01:00
Lynix 23edd637dd Fixed IndexMapper const constructor
Former-commit-id: c8f46bc8b29ff6bcfdbc7fa9b0a01eef68d07a7e
2013-01-03 22:21:15 +01:00
Lynix ef0dd580f5 Fixed (Index|Vertex)Mapper header guards
Former-commit-id: e304886a8b439007ded9dc5af2542910f742ec39
2013-01-03 22:04:06 +01:00
Lynix 837f0b52a3 Fixed BufferMapper crash when buffer is nullptr
Former-commit-id: 4f77a158cf93a4d7acbce50ac0454c38ea6cf412
2013-01-03 22:03:46 +01:00
Lynix 9c76c78c0c Added IndexMapper
Former-commit-id: 994b30f41161855827d920b6c128a5bbd480929b
2013-01-03 21:26:51 +01:00
Lynix 6fb221b479 Added VertexMapper::Unmap
Former-commit-id: b4210cfd864a527fb63ac0b1976acf2c3c198274
2013-01-03 21:25:29 +01:00
Lynix 182c667603 Added DebugDrawer::DrawNormals(submesh)
Former-commit-id: 9a2100f8df288b63d3b64c05871ae42c1fad97f6
2013-01-03 19:41:23 +01:00
Lynix 438d509130 Added VertexMapper
Former-commit-id: 26765f92782b61443544744ac145ccd02a8ed2b0
2013-01-03 19:39:52 +01:00
Lynix 962c330390 (Rect|Cube) Fixed ExtendTo method (Close #6)
Former-commit-id: 066d87f52361d1c30ec6521b637308ee4541bba1
2013-01-03 19:17:04 +01:00
Lynix db86cc4dc3 Added BufferMapper class
Used to map/unmap a buffer automatically and provide a RAII
exception-safe class


Former-commit-id: 2a4fd2e19ce3531639a86520876a3615846b27f4
2013-01-03 16:24:59 +01:00
Lynix 81e95ecddf Improved KeyframeMesh AABB support
When you use KeyframeMesh::SetPosition(frame, vertex, pos), it will now
invalidate the frame AABB.
Finish() method will now generate automatically invalid AABBs before
interpolating


Former-commit-id: aa4695cee635da73e4a3b70ce22e83b1c3f443f9
2013-01-03 15:10:06 +01:00
Lynix 41fb7f7ae5 Removed todo comment
Former-commit-id: da05f6ee8aeb04e3b88c225b9cfded0cb2e70aa1
2013-01-03 12:31:27 +01:00
Lynix 1e5c34d53a Constant buffer mapping returns non-const pointer
Former-commit-id: 37438d554d8733350fcecbbfc4ba0dad46256f73
2013-01-03 03:50:18 +01:00
Lynix c998a5c457 Added KeyframeMesh::Get/Set vertex components
Former-commit-id: ff51b02dfd5f0675c33c01f39418312834c5d8a9
2013-01-02 21:51:03 +01:00
Lynix 520643140c Fixed last commit
Former-commit-id: 5034392dbdab232be71f8537638ed75c1c81eab8
2013-01-02 13:41:26 +01:00
Lynix 02f5385eaf Buffer::Unmap no longer return boolean
Made no sense: What do you want to do when your buffer doesn't unmap ?
Tt now throw a warning by itself in case of failure


Former-commit-id: f776af16787316bbe1d55686a1db2c2e0f79d210
2012-12-31 11:30:19 +01:00
Lynix c65f0e9f7e Removed Keyframe mesh lock system (useless)
Former-commit-id: b7e661274510836cb46eb98b6b9e7135d21a4820
2012-12-31 11:20:14 +01:00
Lynix c73d10ab29 Added non-constant access to vertex buffer
Former-commit-id: c0fea611caf6fb48bd0b2ed56897c173f7acad41
2012-12-31 11:14:40 +01:00
Lynix 6fefa3fdd2 Added read-only const access to buffers
Former-commit-id: 555f079e277869bc8f32732f24dfee704e17f324
2012-12-31 11:12:45 +01:00
Lynix 89c44330b3 Context not longer require NAZARA_RENDERER_OPENGL
Former-commit-id: c0455ca6b74ac29b1b2a25eceaa0b12bc9681b1e
2012-12-29 15:01:34 +01:00
Lynix 11fccc4c4b Fixed MD2 animation
Former-commit-id: 3ba7d63f9518c64677e575e13d8a42b459c5151f
2012-12-29 01:37:44 +01:00
Lynix 49f37e17ae AxisAlignedBox::Transform now apply translation
Added an optionnal argument to prevent translation from being applied
Updated demo


Former-commit-id: c56cb04733379eb6dda98b150931fb0e496ef889
2012-12-28 22:57:40 +01:00
Lynix e5650698d2 Added copy/move constructor/operator to Material
Former-commit-id: a96676391754ee027bdd6c7b04118db3ea044eb3
2012-12-27 22:22:11 +01:00
Lynix 21b60809ad Updated global headers
Former-commit-id: 024667d27905a561eebd9e38e8b141bcb0323339
2012-12-27 02:36:26 +01:00
Lynix a366d4966b Added missing enum
Former-commit-id: af0f63ab90a02ba7963c79f846154117b9dd2ab5
2012-12-25 12:29:50 +01:00
Lynix c65e3d5def It is now possible to use const shaders
A non-constant shader is no longer required to bind or to send uniform


Former-commit-id: 8fd7c03b65a2d9fcea69516c023fee034299148c
2012-12-25 12:26:40 +01:00
Lynix d63c12bbd5 Removed deprecated sampler method from Texture
Former-commit-id: f7da96f781f8a876cbb78c1048822571c02fde23
2012-12-25 12:21:18 +01:00
Lynix df7b11d1d2 Added ShaderBuilder
Former-commit-id: 0eee75821b7bb4b2b69a020c8e79f3cbe18b522f
2012-12-25 12:14:57 +01:00
Lynix 33a929c198 Fixd Abstract*DNoise destructor not being virtual
Former-commit-id: 38af503709e79e0f13a63bd5da30072f11f1fa34
2012-12-25 02:01:41 +01:00
Lynix dc3cfa40ec Made Texture constructor consistent
Former-commit-id: 92be798524a48cb979c09fa04558602bf3717391
2012-12-24 20:38:20 +01:00
Lynix f2271a6f87 Deleted NzOpenGL constructor/destructor
Former-commit-id: 699f03b7da155dd741a3bbb1f9f3603adfe38293
2012-12-24 18:30:27 +01:00
Lynix 24720d7df1 Moved static function prototype
Former-commit-id: f5be3289558e3285f14216428221df0fed2e4d5a
2012-12-19 15:02:22 +01:00
Lynix 0e6215a47e (Material) Added non-constant sampler access
Former-commit-id: d2799fc353628afda09fdc45b04134aa541ee480
2012-12-19 00:38:06 +01:00
Lynix 10730de74e Refactored materials
(Renderer) Removed Apply function
(Renderer) Renamed SetTextureSampling to SetTextureSampler
Updated demo


Former-commit-id: d40a9ce05df35b078e645927451093da44eec314
2012-12-18 16:17:31 +01:00
Lynix 8b67d17e38 Added texture samplers
I hate Git branchs


Former-commit-id: 6978f1489cdc841d36fbcd6f1a8e01a4adbfcb8a
2012-12-17 14:56:29 +01:00
Lynix 72d8fa64b3 Fixed redefinition error if user define x64
Former-commit-id: 51e0c888132a8651a07d22b86ecc95cc487537d3
2012-12-14 23:24:55 +01:00
Lynix 229f634e01 Rename NAZARA_PLATFORM_X64 to NAZARA_PLATFORM_x64
Former-commit-id: aa4e5c93b5a94175cb487c0d82662c0d918ccb89
2012-12-14 23:19:35 +01:00
Lynix 8785c969e5 Added 64bits-detection macro
Former-commit-id: 98f3edda39679ee0e13671e76dbe96157b3dd7ae
2012-12-14 22:18:27 +01:00
Lynix 025ed1cfd0 Renderer update
-Added Renderer::GetRendererName()
-Added Renderer::GetVendorName()
-Renamed VertexArrayObject to VertexArrayObjects


Former-commit-id: 93489d5f93f8258dec0c4d8bcf72185abd7f75a8
2012-12-13 20:16:09 +01:00
Lynix 73cb237925 Added HardwareInfo::IsInitialized()
Former-commit-id: ef668ac6d2e92a05730b56c892a693a21c7d651e
2012-12-13 19:57:05 +01:00
Lynix 7820a3096b Refactored HardwareInfo
-Can now return processor brand string
-Can now return processor vendor name
-64 bits is now a processor capability


Former-commit-id: 02d0ded16911a88643f4c6799b234a7b18eebefc
2012-12-13 17:32:04 +01:00
Lynix 68c6aa664a Replaced OpenGL namespace with static class
Fixed OpenGL functions not being exported
It is also more consistent


Former-commit-id: 3eddcb6f72412443eb56580180d0b9544ae4a9df
2012-12-13 15:47:29 +01:00
Lynix 73fdb9baaf Added TextureWrap enum<->OpenGL association
Also made array syntax consistent


Former-commit-id: 65794e3eec2ea326da0ee71bcd7b8c31632ab71c
2012-12-13 11:39:15 +01:00
Lynix 8ba40360e3 Fixed 3D module not being exported
Former-commit-id: 32ab8810b4079d042338272a3931af6c09eafd0b
2012-12-10 02:30:41 +01:00
Lynix 37d6b71036 Fixed mesh animating modifying template skeleton
Former-commit-id: d70bd2ed7c8a38f879641a4b22be4876f6825edb
2012-12-09 01:45:34 +01:00
Lynix 7e533209dc Added initial states to node
Former-commit-id: 2127584e3432c16841817632522ea3bb82c7a786
2012-12-08 22:56:22 +01:00
Lynix 8376fb38cf Module can now initialize optionnal classes
Former-commit-id: 899007b7879451d15d0808a03b8dfea0cd3413a4
2012-12-08 22:21:20 +01:00
Lynix e8842f1ba8 Revert "Optimized NzNormalizeAngle"
This reverts commit 1ed4af0b903b3fae59c633567b49ebda61797cc2 [formerly 683c7e913ee2f293d299c1d0a4abaf6c65116598].


Former-commit-id: 1c687a7d018e277408b0e390d37bec13c454d4a1
2012-12-08 22:20:16 +01:00
Lynix eb585116b1 Shader::SendTexture can now return texture unit
Former-commit-id: 38d5e5dedf94113933bb2090040feec602a4716c
2012-12-08 11:49:07 +01:00
Lynix 783c1d5584 Optimized NzNormalizeAngle
Former-commit-id: cbdc09b7dc89c03c178a7b0a22571e810598c6fb
2012-12-06 01:05:40 +01:00
Lynix 6f495c654a Added TaskScheduler::GetWorkerCount()
Former-commit-id: db4bf747441a13f2d824410aa5be264b300e95d4
2012-12-06 01:01:26 +01:00
Lynix e699969b64 Added OpenGL support for sampler objects
Also prevented an exception launch by the SeparateShaderObjects code to
escape.


Former-commit-id: ae594e16a85c02f0c649ef573189b4b722f713c3
2012-12-04 13:50:08 +01:00
Lynix 9e24a6b7b2 Added warning to an unusable option
Former-commit-id: a4d45b29970085996f417313d4c7df84f0ca100b
2012-12-03 23:39:49 +01:00
Lynix 551ca4fc92 Updated global includes
Former-commit-id: 0407aab09007e10ec394bf9b15ec0f21421305ad
2012-12-03 16:25:02 +01:00
Lynix 2e40ad832e SubMeshs are now valid even when not animated
Former-commit-id: 5bd6289d30f4f6ffa1fcaf8d946aa9aba9cf7131
2012-12-03 16:24:47 +01:00
Lynix cc45746799 Improved keyframe mesh interface
Also improved animation performance by using a discard-and-write lock
when interpoling.


Former-commit-id: 277b5ad8f148ab73b99edf83cf8c6e5d0e6dfc82
2012-12-03 14:49:56 +01:00
Lynix 82d6438ec3 Removed unused file
Former-commit-id: c52361f0ae454048e62507996beff70cf857210e
2012-12-03 01:34:16 +01:00
Lynix ef567bd223 Added Task Scheduler
Former-commit-id: ac37f749ae78f364db3d3edfabc8221802579989
2012-12-03 01:30:04 +01:00
Lynix 023e497777 Revert "Simplified Thread interface"
This reverts commit 49927a03e4a9bfd4681691bb859b08374cd309c6 [formerly f3cfc12d8c18eef8a8aa21c164ad994fff4a33b7].


Former-commit-id: 8315c5f18d29aff59749c2efe98208ee3f5e1a42
2012-12-03 00:25:39 +01:00
Lynix b4282e6a6e Fixed Vector4 >(=) comparison
Former-commit-id: d3c5d233bb565dbfa0535487fe21bd00ad0281b4
2012-12-02 23:50:32 +01:00
Lynix b775542e4d Simplified Thread interface
Former-commit-id: 5cc7c51be1bf8fe8f13e3b4d25b051ff024f4ebf
2012-12-02 23:43:08 +01:00
Lynix 3d8549740e Moved constructor prototype
Former-commit-id: a399ce2633c20bf41c7ba56cb346ced607043fc1
2012-12-02 23:05:28 +01:00
Lynix 780da2cfa5 Resolved conflicts
Former-commit-id: 4bd4e4f8435d701d16d3864dd030a6c1cff48c47
2012-12-02 21:49:14 +01:00
Lynix 6a3087cc26 Optimized Vector <= comparison
Former-commit-id: 8668b8ff78387262f0e21f038b6ca0240c513476
2012-12-02 20:39:49 +01:00
Lynix 325ac4e642 Added SceneNode::GetAABB()
Former-commit-id: 3ed0a0140e6afabeb915e763e6ead33c7f12fba5
2012-12-02 17:01:39 +01:00
Lynix b06acfcffd Index buffer no longer permit 8 bits index size
Modern graphics cards don't like 8 bits index size, so I introduced
"Large indices" option, it means 32 bits indices when used otherwise the
index size is 16 bits


Former-commit-id: 213902de6704ceef16c6ea311ba0c6c5d2f6e665
2012-12-02 17:01:02 +01:00
Lynix 437c7047c9 Reintroduce Vector comparison operator
Since it can be used for integer vector, also fixed comparison
technique.


Former-commit-id: 3a193ed21beb4d9b7d311eb29bc2852b0776a41c
2012-12-02 16:48:56 +01:00
Lynix 5c7a9e1011 Removed Quaternion/Vector comparison operator
Made no sense


Former-commit-id: 3c2a822cd3142e2bc931021ef8874602630be8cf
2012-12-02 00:37:21 +01:00
Remi Beges d0545eb760 Minor fixes
*Seed is uint instead of int
*Permutation table is uint instead of int, could lead before to program
crash with negative seeds


Former-commit-id: 49ad04987a09a5f5b4bcab6ee3916db9818172b6
2012-12-01 10:07:41 +01:00
Lynix 3f0bb8a8bb Added music class
Former-commit-id: 5288191ecea17cb81e30a175869a2b4ea29dbc2f
2012-11-29 17:33:58 +01:00
Lynix cbc98ce3f0 Made NzThread interface mimic std::thread one
Hopefully fixed the threaded window bug


Former-commit-id: 6dc3ca2a8bee1da591a9b97d202d4b73b10be8eb
2012-11-29 16:51:01 +01:00
Lynix a2eb55e74a Fixed repo
Former-commit-id: 5992da5ec759f05dabf82009e660ec58eed96365
2012-11-29 10:15:10 +01:00
Lynix 0a2e19fa22 Merge remote-tracking branch 'origin/3D-Engine'
Former-commit-id: 1781615fc780accbe6c11d55fd896038d97ffec9
2012-11-29 10:11:30 +01:00
Lynix 2e26d52248 Meshes no longer retains an animation pointer
Former-commit-id: da4d93b815c46284a8977d7fb142201dc23fff61
2012-11-27 23:33:11 +01:00
Lynix 7ad24eff08 Mesh no longer contains the animation
Former-commit-id: 5dfcfe50f9c82310303120031a0def594fafd4f7
2012-11-27 22:02:45 +01:00
Lynix 53730b532d Optimized Node::GetTransformMatrix
Former-commit-id: b7eadb5a47ec6c2a9d24b19f45058e1ce5d0be49
2012-11-27 21:45:21 +01:00
Lynix a1a1a3da0c Replaced mesh material system
Former-commit-id: 1a3f2e0a80211a17838f29e5c0b0fc9def89d30a
2012-11-27 21:45:00 +01:00
Lynix 5d9bf5ed7b (SubMesh) Renamed GetSkinIndex to GetMaterialIndex
Former-commit-id: 7d28e3baa39342234495c9637e7e4886ffdc4b5a
2012-11-27 21:44:32 +01:00
Lynix f48b9ba370 (Material) Added methods to loads and get default
Former-commit-id: 9169e84208b0cddbe698daa9286c8b7eb6a8244c
2012-11-27 21:37:14 +01:00
Lynix 64601a72e7 Fixed ResourceLoader bad stream pos after recover
Former-commit-id: d7c7bb33e055ca44ca5690294b504d6ccb644dde
2012-11-27 21:36:04 +01:00
Lynix 4fbe508960 Removed debug error when copying a matrix
Former-commit-id: 60c57643b5a520abe96fdca83f2d0c28f3bc1f11
2012-11-27 20:25:14 +01:00
Lynix 18baa6b8c1 Fixed typo
Former-commit-id: 4254892b447457b57cf9657f87ecf32a1ec899fe
2012-11-25 16:12:57 +01:00
Lynix 7f6003085f Fixed 3D module
Former-commit-id: 91b5980f101ab55ce9313e80cbf3ece8c0da9b0f
2012-11-25 16:12:30 +01:00
Lynix b662bca33d Added Material class
Former-commit-id: db16249b1ecbfdc59ecdca709cb75f4bf1b6d10b
2012-11-25 14:32:19 +01:00
Lynix d3c027e29c Added 3D engine
Former-commit-id: 2e1ea34ac98e25cb27fed050b46b68de4d2d8131
2012-11-24 18:34:49 +01:00
Lynix da2963e1c1 Removed unused forward declaration
Former-commit-id: e32abcef8cf0314a4c020a1b3e6c2f36c6ce9e30
2012-11-24 17:40:28 +01:00
Lynix f1d87484a6 Fixed spaces
Former-commit-id: dde1253c93db44ba0d418c290e1e1f963b97eb0a
2012-11-24 10:15:39 +01:00
Lynix 20be46e866 Made mesh animating/skinning constant
Since it doesn't change any of the mesh proprieties


Former-commit-id: 47eb21f234570d6ffe3af542029f2086744944b0
2012-11-23 21:16:14 +01:00
Lynix 9cec8c3a4b Fixed typo
Former-commit-id: 3de64e02311033aa54524e33d7d136c9c405d3f7
2012-11-23 17:58:22 +01:00
Lynix c1879d6bf9 Fixed Vector3::Make[Forward|Left] not returning
Former-commit-id: be947d6b5c7c1a353fd035f3a5c1c495066ff7ac
2012-11-22 11:44:32 +01:00
Lynix faee0b93b5 Added HardwareInfo class
Former-commit-id: 3db2f8f11d58b4b71b85f749ce2a12dcfff986bc
2012-11-22 11:07:02 +01:00
Lynix 7a6a63a4b8 Added macros for Intel C++ compiler/x64 platform
Former-commit-id: d2592da3abe140deefae76039992f70c7605f89d
2012-11-21 23:51:41 +01:00
Lynix 70ef422950 Big skeletal animation update
Added MeshInfos demo
Added MD5Mesh/MD5Anim loader support
Added Node class
Fixed ResourceParams not being exported
Added support for skeletal animation
(Animation/Mesh/Joint/SkeletalMesh/Skeleton)
Meshes are now only stored with VertexStruct_XYZ_Normal_UV_Tangent type
Moved Sequence declaration to Sequence.hpp

-Animation:
Renamed Create to Create[Keyframe|Skeletal]

-AxisAlignedBox:
Added Contains method
Added GetCorner method
Added GetCube method
Added Transform method

-Cube/Rect:
Added GetPosition method
Added GetSize method
(Almost) Fixed ExtendTo method
Fixed GetCenter method

-File:
Added GetDirectory static function
Added GetPath method
Renamed GetDirectoryPath method to GetDirectory

-Math module:
Fixed constructor/methods taking a non-const array
GetNormal/Normalize methods now takes an optionnal integer pointer
(returning length)
Made all classes default constructor trivial
Inverse, MakeIdentity, MakeZero, Normalize, Set methods now returns
reference to object

-Matrix4:
Modified methods to avoid copies
Removed COW (Too much overhead)
Removed Concatenate[Affine] static function

-Mesh:
Renamed Create to Create[Keyframe|Skeletal|Static]
Renamed Skin to Material

-MeshParams:
No longer takes declaration argument
Renamed loadAnimations to animated
Storage default to BufferStorage_Hardware if supported and
BufferStorage_Software otherwise

-OpenGL:
Added glGetBooleanv function
Added glIsEnabled function

-Quaternion:
Added ComputeW method
Added Conjugate method

-Renderer:
Added IsEnabled static function
Fixed GetLineWidth function not being static
Removed SetVertexDeclaration

-RenderWindow:
Made CopyTo[Image|Texture] method constant

-Resource
Fixed RemoveResourceListener crash

-ResourceLoader:
Loaders are now used in a LIFO context

-Stream:
Renamed GetLine method to ReadLine

-String:
Fixed Simplified

-Utility module
Added configuration define for strict resource parsing

-VertexBuffer
Now takes a VertexDeclaration pointer

-VertexDeclaration
No longer throw an error when getting a non-existing element


Former-commit-id: f7358c1231d6af48b799d2f24f077a001e16785b
2012-11-21 19:20:32 +01:00
Remi Beges a0b7364eed Added HybridMultiF 3D & 4D
*new constructors for simple noises
*minor bufixes


Former-commit-id: 2f1e9b6b54087e79b3ac52fefc9bbd67fd45c0eb
2012-11-13 19:27:48 +01:00
Remi Beges 8f04f3e6a0 Added FBM 3D & 4D and HybridMultiFractal 2D + cleaned code
this commit will change the scale of values produced by fbm2d. This will
probably not happen again. As a consequence, fbm values will always be
constrained between -1 and 1, but do not perfectly stick to that scale.
There is no easy solution, if the user wants the best dynamic between -1
and 1, he should adjust manually the value by multiplying by a gain slightly superior to 1.


Former-commit-id: ebdba9e9f4bbb972abe355c07ec9f8bce42329b9
2012-11-09 18:38:50 +01:00
Jérôme Leclercq 0ffdad48a8 Added Stream include to Core global include
Former-commit-id: 2901eeac313cde208f82e6995711ce7044a8910b
2012-11-08 14:27:19 +01:00
Jérôme Leclercq 94bb765a77 Added Shader::SendColor(Color)
Former-commit-id: e3af0e2cb75a437304ee274a6123114b41dd7d94
2012-11-08 14:25:48 +01:00
Remi Beges 7bd6202389 Merge remote-tracking branch 'upstream/master'
Former-commit-id: 8fe411f0146d6cc64cf8d32cc4896f7f417f62a5
2012-11-04 18:51:23 +01:00
Lynix 6b9c88221a Added Shader::IsValid()
Former-commit-id: 829320e4fd92dafb829019d875135ca9b75a3db2
2012-11-02 23:47:09 +01:00
Lynix 9199e60436 Added implicit conversion from AABB to String
Former-commit-id: c41510f4e0527a174d4acb5f8f26f60f4984ce15
2012-11-02 21:50:33 +01:00
Lynix 1b3129868f Added NzRenderer::[Get/Set]LineWidth
Former-commit-id: 827f762294bb67debb2a7faed07b595df2b9d20d
2012-11-01 18:28:49 +01:00
Lynix 5c2f94f953 You can now change the point size
Former-commit-id: b0018b14973d36f822524e8e5b94ba940a63897f
2012-11-01 18:20:15 +01:00
Lynix 1d217837cf Added compiler tests and fixed MinGW warnings
Former-commit-id: 550d467e0997065943dc0b18a36d1be0edbb8114
2012-10-30 18:52:38 +01:00
Lynix 2831f596d2 Added missing include
Former-commit-id: c8cdcb907f85b064e5cf3a7faa23740131af9283
2012-10-29 09:56:21 +01:00
Remi Beges 9fef43951b Replaced templates by float
*Since only valid template parameters were float and double, the whole
template aspect has been removed.
Double precision would only be used in extremely rare occasions
(applications needing high precision and slow performances), it is not
relevant to template the whole module for it.


Former-commit-id: fc6dd028189c608a6a7b4c312b3e5e3f53a01fd7
2012-10-27 18:59:39 +02:00
Lynix 3a9e8850c0 Added Keyboard::GetKeyName (experimental)
Former-commit-id: a937b98ceeed3cb7c64bf6c1f544bb7021ad01bd
2012-10-26 14:09:09 +02:00
Lynix 4c23ccf1c6 (Matrix4) Renamed Destroy to Undefine, fixed bug
Fixed Transpose() not checking COW ownership


Former-commit-id: de2c64b9aef5abf2f73ce6cff2fe8442c1c382c5
2012-10-26 14:08:30 +02:00
Lynix 61c081ace3 Fixed and improved Matrix class (See description)
-Added ApplyScale
-Added Destroy()
-Added GetInverseAffine
-Added Inverse(Affine)
-Added (Make)Transform method, generating a TRS transform matrix
-Fixed COW
-Inverse methods now takes an optionnal boolean pointer


Former-commit-id: 84e7c679c242876f9b0888875b37afa12eed311a
2012-10-24 22:32:46 +02:00
Lynix 8712de3118 Cleaned NzNormalizeAngle code
Former-commit-id: 3d984db7632e0c9cba032d22b1470828326c0ad9
2012-10-24 18:22:07 +02:00
Lynix 855b3676e8 Fixed quaternion interpolation
Former-commit-id: b43671708fb9e64517a67ba070167587688457fb
2012-10-24 18:21:33 +02:00
Remi Beges 745b9dbbd1 Removed 'virtual' in front of templated function
Former-commit-id: 7afa1cdd4ff3db4b73dcb79bcfda6739859c3215
2012-10-09 22:15:29 +02:00
Lynix 5bbc8d0fa4 Fixed debug-mode compilation
-Also added multiplication operator and equality comparison to Cube and
Rect


Former-commit-id: b4194a50fbe3025d3be1fc25d48a85d5a05fc5ac
2012-10-08 23:08:46 +02:00
Lynix 94268ae6b2 Fixed typo
Former-commit-id: 3a47a8981692b57ccad50e1044c1139c34bf9c75
2012-10-08 15:35:02 +02:00
Lynix cfd54b859d Added linear interpolation (Lerp) to math module
Former-commit-id: 5920e21f25d42701a1895734eca492fdf5351669
2012-10-08 14:45:29 +02:00
Lynix 737f2a70bd Fixed compilation error
Former-commit-id: f6be1fa1b43082fa295c7dd95337475365f0c453
2012-10-05 20:14:01 +02:00
Remi Beges a72d388c05 Merge remote-tracking branch 'upstream/master'
Conflicts:
	include/Nazara/Noise/NoiseMachine.hpp
	src/Nazara/Noise/ComplexNoiseBase.cpp
	src/Nazara/Noise/NoiseMachine.cpp

Former-commit-id: 54af2e19e336cfacee63cabe785d7b05fa392b53
2012-10-05 17:53:41 +02:00
Lynix 10fc386865 Added VertexDeclaration::HasElement
Former-commit-id: 30dccfba56bba0e56c08da79c3fde3bdf94119cb
2012-10-04 09:33:54 +02:00
Lynix 7bab3d9443 Cleaned code
Former-commit-id: 65b235b0c8326e060ec7032bb2a153e22518a25a
2012-10-04 09:32:55 +02:00
Lynix b219b19710 Fixed Tuple.inl including Utility debug headers
Former-commit-id: 259b43f54669c6b58e04ee16719df73b441b72dd
2012-10-04 09:23:39 +02:00
Lynix 516bf7b3b9 Fixed NzStream options
Former-commit-id: 1479dd2bbed9587af7b9b7c165192709478f30e1
2012-10-04 09:22:59 +02:00
Remi Beges 3f8e3cfb60 Modifications for the new architecture
to fullfill mixer implementation requirements
*Added FBM2D, first complex noise class of the new architecture
*Removed NoiseMachine, because was redundant and not fitting with the new
architecture
*Minor changes to almost every other noise class (mostly adding 'this->')
everywhere an inherited member from template base class was called from
the inherited class
2012-10-02 19:55:35 +02:00
Lynix 07e949404c Added NzStream and stream options
Former-commit-id: d2c69b12f34fffff4d412111e7af7cc4dbb638a8
2012-10-01 00:57:32 +02:00
Lynix aaca9349fd Fixed Matrix4 equality comparison
Former-commit-id: cb1e21196c2053138a8d70bc09d39ecbf7b83ba8
2012-09-30 23:11:43 +02:00
Lynix 8d057fb3b1 Renamed GetBPP to GetBytesPerPixel
Also added GetBitsPerPixel


Former-commit-id: 9cc1df58133c538b1dc74215a9022d13dfd9d7f6
2012-09-30 23:11:00 +02:00
Remi Beges a41a2ddcb3 Added ability to give offset and gain to every noise (mappedNoise) +
bugfixes
2012-09-30 19:13:25 +02:00
Lynix bdb7703ab2 Improved OS detection macros
Former-commit-id: 6f89791cfde43a813dc1250bd82ba9f54afb7786
2012-09-21 19:10:35 +02:00
Lynix a73cd1374a Normalized line ending
Former-commit-id: bd061c48bdc8f0d26159dac3b41017defef5ae1e
2012-09-21 14:24:48 +02:00
Jérôme Leclercq cc6f2a6fc9 Added InputStream::GetLine(size);
Former-commit-id: 4c5afc038877bfa9865285d044663df3f7932d58
2012-09-21 12:39:40 +02:00
Jérôme Leclercq 2ea37a1877 Added InputStream::EndOfStream()
Former-commit-id: d8618fbb677a73cb6890d913af66adb22e6c2a39
2012-09-21 12:07:13 +02:00
Jérôme Leclercq 4cfbd68796 Fixed WindowStyle_Titlebar enum
Former-commit-id: 6c239b54ce2f734e0221cf87bd059ee1c73b5fe2
2012-09-20 22:32:53 +02:00
Jérôme Leclercq cd5a1b7a5e Added RenderTextures (And many others things)
-Added Forward, left and up vector (Vector3)
-Added Matrix4::ConcatenateAffine shortcut
-Added Quaternion::GetInverse() and Quaternion::Inverse()
-Added Resource listeners
-Added Depth and stencil pixel formats
-All enums now have an ending "max" entry
-Animation/Mesh::Add[Sequence/Skin/SubMesh] now returns a boolean
-Contexts are now resources
-Enhanced AnimatedMesh demo
-Fixed MD2 facing
-Fixed Vector3::CrossProduct
-Made Resource thread-safe
-Made OpenGL translation table global
-Many bugfixes
-MLT will now write malloc failure to the log
-Most of the strcpy were replaced with faster memcpy
-Occlusion queries availability is now always tested
-OpenGL-related includes now requires NAZARA_RENDERER_OPENGL to be
defined to have any effect
-Pixel formats now have a type
-Renamed RenderTarget::IsValid to IsRenderable
-Renamed Quaternion::GetNormalized() to GetNormal()
-Renamed Texture::Bind() to Prepare()
-Renamed VectorX::Make[Ceil|Floor] to Maximize/Minimize
-Removed MATH_MATRIX_COLUMN_MAJOR option (all matrices are column-major)
-Removed RENDERER_ACTIVATE_RENDERWINDOW_ON_CREATION option (Render
windows are active upon their creation)


Former-commit-id: 0d1da1e32c156a958221edf04a5315c75b354450
2012-09-20 22:07:30 +02:00
Lynix a6ed70123b Added missing external libraries binaries
Former-commit-id: 8c1faed067e523a94b81cbf3658df6a6096898c0
2012-08-21 15:18:21 +02:00
Lynix 40ec2003b4 Added Audio module
Fixed examples resources not being commited
Temporary removed static build configurations
2012-08-21 15:04:00 +02:00
Lynix d3951ddef6 Regenerated (And fixed) global headers 2012-08-18 01:50:48 +02:00
Lynix 15afde86c8 Rewritted ResourceLoader and moved it to core
Added creation constructor to NzImage
Added member function functor
Added option to build Nazara as one library (instead of many)
Fixed some 2011 copyrights
Made use of "using def = T" C++11 feature instead of some illigible
typedefs
Removed unused premake file
2012-08-18 01:46:01 +02:00
Lynix 5619ddb0b1 Changed all the files encoding to UTF-8
Named modules in licence informations
2012-08-10 03:21:37 +02:00
Lynix f8a0cdad39 Added Windows shortcut to generate CodeLite project
Changed two submesh's error message
Fixed OpenGL.hpp/.cpp spaces for some displayers
OpenGL loads GL_kdr_debug if possible instead of GL_ARB_debug_output
Refactored external includes
2012-08-10 02:03:25 +02:00
Lynix b442ab0bd2 Refactored mathematics module
Added AABBs
Added code examples
Added experimental support for texture arrays (1D/2D)
Added initialisers (new way of initialising modules)
Added global headers (Plus a global header generator script)
Added pattern support for directory
Added support for spinlocks critical section on Windows
Added NzRenderWindow::SetFramerateLimit
Core project now includes Mathematics files
Fixed color implementation using double
Fixed declaration needing renderer include
Fixed MLT not clearing nextFree(File/Line) after Free
Fixed move operators not being noexcept
Fixed thread-safety (Now working correctly - If I'm lucky)
Moved Resource to core
New interface for modules
New interface for the renderer
Put some global functions to anonymous namespace
Removed empty modules
Renamed ThreadCondition to ConditionVariable
Replaced redirect to cerr log option by duplicate to cout
Setting mouse position relative to a window will make this window ignore
the event
Shaders sending methods no longer takes the uniform variable name (it's
using ID instead)
Using new OpenGL 4.3 header
2012-08-08 04:44:17 +02:00
Remi Beges ed200354cb Merge remote-tracking branch 'upstream/master' 2012-07-24 14:35:05 +02:00
Remi Beges 354d7ed002 Improved interface
*MappedNoiseBase provides a gain and offset control on the noise value
*AbstractXDNoise provides a way to contain different noises in a std
container and access the main "GetValue" member function
*Applied minor optimisation to Perlin4D (previously forgotten)
2012-07-24 14:21:56 +02:00
Lynix 06eda4eba9 Added Meshes and Animations (And many more)
Added NzTexture::IsMipmappingSupported
Color::(FromTo)HSV now takes hue and saturation in degrees
Fixed Context::EnsureContext
Fixed COW thread-safety (String, Image, Matrix4)
Fixed Quatenion<T>::operator*(const Vector3<T>&)
Fixed ResourceLoader
Fixed String::Resize with a size of 0
Fixed Texture mipmapping crash
Fixed per-class thread-safety
IndexBuffer and VertexBuffer are now resources
It is now possible to use more than 8 texcoords per shader
Moved all enumerations into separate files (Core/Enums.hpp,
Utility/Enums.hpp, ..)
Removed NzContextParameters::defaultWindow
VertexDeclaration has been rewritten (New interface/COW)
2012-07-13 15:22:14 +02:00
Lynix 5f95f0b677 Updated OpenGL headers 2012-07-01 23:09:25 +02:00
Lynix 7ed9e16664 NzString::Clear now takes an optional argument
Fixed NzString::ToDouble rejecting legal strings
NzString::Clear can now keep the internal buffer to improve performances
NzStringToNumber now takes an optional argument to check if the
conversion went well
Optimized NzString::ToInteger
2012-07-01 00:44:53 +02:00
Lynix bcf36e7a14 Added support for custom cursor/icon 2012-06-24 13:28:24 +02:00
Lynix d851e35a56 Added NzWindow::SetCursor
Moved window flags to global scope (nzWindowStyle)
Removed NzWindow::ShowMouseCursor (superseded by SetCursor)
2012-06-23 15:02:17 +02:00
Lynix 71cf7876c5 Optimized image flipping
Added new extensible flipping system
Optimized NzTexture::Update(Face)
2012-06-22 23:18:37 +02:00
Lynix 445d6d236d Added NzBuffer::SetStorage
Fixed (Index/Vertex)Buffer::(Fill/Map) not filling/mapping the entire
buffer when the third argument was zero
Fixed Renderer not accepting sequential index buffer
2012-06-21 16:37:28 +02:00
Lynix ec9470ceb6 Moved buffers to Utility
Fixed NzVector4::operator/
Replaced enumName_Count by enumName_Max
Renamed (Index/Vertex)Buffer::GetBufferPtr by GetPointer
2012-06-21 09:49:47 +02:00
Remi Beges 10a436b481 Made operator< of strict order 2012-06-20 20:36:14 +02:00
Remi Beges 9996a7169a Removed Physics module 2012-06-19 18:31:42 +02:00
Remi Beges f1865e5030 Sligthly changed interface & added functionnalities
NzPhysicsWorld has now a public pointer to NewtonWorld
NzCollisionShape added, can be constructed from a NzCube for now
NzPhysicsEntity added
Minor fix + typo
2012-06-18 10:24:06 +02:00
Remi Beges 092ccd0302 Forgot to commit src files and Newton headers in previous commit 2012-06-16 13:33:31 +02:00
Remi Beges c55d9b5456 Laid Physics module basis
Added NzPhysicsWorld
Added NzPhysicsSolver
2012-06-16 13:28:47 +02:00
Remi Beges 8c9e5ddc8f Merge remote-tracking branch 'upstream/master' 2012-06-16 12:45:59 +02:00
Lynix be0a5d2819 Fixed many bugs
Added NzOpenGL::GetEntry
Activated preprocessor error if not compiling with a C++11 compliant
compiler
Cube can now be constructed with a Rect
Desactived utility option "threaded window" (bugged)
Epured Image interface (No more UpdateFace, use Update with z = the face
you are targetting)
Fixed compilation errors (Thanks to RafBill)
Fixed predefined colors not exported
Fixed uplading pixels not aligned by 4 bytes
Fixed Thumbs.db files not ignored by git
NzImage now supports Filling and Flipping (Horizontally and vertically)
NzImage::Get(Const)Pixels now support pixel location
NzVector(2/3) can now return floatting distance/length with all types
NzVector(2/3/4) can now be constructed by a vector of smaller dimension
Premake now set "-std=c++11" build option for GCC
Renamed NzImage::(Get/Set)Pixel to (Get/Set)PixelColor
Updated new([])/delete([]) in the leaks tracker to the new C++11
signatures
2012-06-15 11:03:43 +02:00
Remi Beges 5fde943d9e Fixed minor bug in NoiseBase & Vector4 (typo) 2012-06-14 09:19:45 +02:00
Lynix 0f84f8eda8 Added Quaternion spheric interpolation
Fixed NzVector(2/3)::Length() and NzQuaternion::Magnitude() returning
double instead of template type
Added quaternion dot product
Added gitignore
2012-06-13 17:54:07 +02:00
Lynix e2a38b3790 First part of render texture commit
Added NzContext::EnsureContext and NzContext::GetThreadContext
Added NzCube
Added NzRect::GetCenter
Added methods to send vectors to shaders
Added NzRenderer::SetViewport
Fixed NzRect::ExtendTo calculations
Fixed NzImage::Update checks with level > 0
No longer use glTexStorage when creating a texture to prevent a bug
NzBuffer's Lock and Unlock operations renamed to Map and Unmap
NzVector2/3/4 can now cast implicitly to a pointer
Optimized compilation time of String.hpp
Optimized normalisaton of quaternions
Optimized passing uniforms to shaders
Quaternion now automaticaly Normalize h
Removed macro definition of NAZARA_RENDERER_OPENGL from Renderer
Removed implicit cast from NzVector2/3/4 to NzString
Renamed nzBufferLock to nzBufferAccess
Renamed NzRenderTarget::CanActivate to IsValid
2012-06-13 07:40:31 +02:00
Lynix b1632842ae Merge pull request #1 from Overdrivr/master
Merged Noise module
2012-06-12 01:35:08 -07:00
Remi Beges 90faf844ed Fixed contributor's name 2012-06-11 00:29:09 +02:00
Remi Beges 23bb9da0bd Fixed typo + minor errors 2012-06-10 10:27:51 +02:00
Remi Beges 879a33878e fixed typo 2012-06-09 17:07:01 +02:00
Remi Beges ebba6adae4 Simplex & Perlin fully work now (all dimensions) + dynaTerrain removed temp 2012-06-07 13:10:58 +02:00
Lynix ddd2a2f310 Added CopyTo(Image/Texture) to NzRenderWindow
Added several methods to NzRenderer
Optimized NzRenderer::GetMax*();
Nz(Render)Window::GetSize now returns an unsigned vector
Fixed textures being flipped
2012-06-05 23:06:47 +02:00
Remi Beges 5d7f8acbc8 Perlin 2,3,4 optimisations + Simplex imp fixed + improved architecture 2012-06-05 22:00:09 +02:00
Lynix a176648265 Added NzTexture
Added levelCount parameter to NzImageParams
Added NzPixelFormat::HasAlpha
Reformatted OpenGL debug messages
2012-06-05 10:54:06 +02:00
Lynix dd4cb97a37 Added support for OpenGL debug mode
When NzContextParameters.debugMode is true, Nazara will receive OpenGL's
debug message and send them to Nazara's log
NzString::Pointer now have the "0x" prefix
Added support for ARB_texture_storage extension
Nazara now try to load core texture 3D before trying to load
EXT_texture3D
Added NazaraNotice macro, writing raw text into Nazara's log
Added NzContext::Destroy (called in Create)
2012-05-31 23:33:47 +02:00
Lynix f4b194f6fe Fixed rendering with OpenGL core profile
Added (automatic) support of Vertex Arrays Objects (VAO) to fix
rendering with an OpenGL core profile (OpenGL 3.2 require the use of
VAOs)
Added level check to NzImage::GetDepth/Height/Size/Width
Fixed occlussion query support not correctly setted
2012-05-31 18:18:28 +02:00
Remi Beges 4d975fa67e Forgot to commit some stuff (noise+dynaterrain) from previous commit 2012-05-31 15:35:52 +02:00
Remi Beges 9008c36802 Added NzDynaTerrain (basis) + simplex3d 4d for nznoise 2012-05-31 15:32:22 +02:00
Remi Beges 784787cd79 Suppressed perlin1d, added perlin 2,3,4 and simplex 2 classes + minor
fixes/optimisations on noisemachine
2012-05-30 19:30:51 +02:00
Lynix 3720967802 Fixed compilation error from last commit
Fixed NzImage::GetWidth/Height/Depth returning 0 when level > image's
max level
2012-05-30 19:21:20 +02:00
Lynix b220e00c88 NzImage now handles mipmaps
Added NzRenderer::SetClearColor(const Color&)
Added describe comment for pixel formats
Fixed NzPixelFormat conversion for RGBA4 and RGB5A1 types
Fixed NzRenderer::Clear prototype
Renamed NzLock to NzLockGuard
ResourceLoader's loaders are now tested from newest to oldest
2012-05-30 18:10:17 +02:00
Remi Beges 57d9af6b56 NzNoise new architecture + Perlin 1D algorithm modified 2012-05-29 20:28:31 +02:00
Lynix f39e2f7d36 NzString::Trim(med) can now take a limit flag
Fixed NzString::Simplified removing non-separator character with
HandleUtf8 flag
2012-05-28 16:21:27 +02:00
Remi Beges 7578a1b957 Fixed implementation of NzNoise + typo + small optimisations 2012-05-27 21:18:52 +02:00
Remi Beges cd701a429b 'q' n'est pas reconnu en tant que commande interne
ou externe, un programme ex‚cutable ou un fichier de commandes.
2012-05-27 21:15:12 +02:00
Lynix 96ea5fdaa7 Added NzImage::Get/SetPixel(Face)
NzImage::Update(const nzUInt8* pixels, const NzRectui& rect) now takes a
third argument to specify the layer of the 3D image (if a 3D image),
default to 0
Optimized NzPixelFormat conversion from RGBA4
Added NzColor
2012-05-27 11:57:34 +02:00
Lynix 7659fdf460 Window's subsystem is now initialized by NzUtility
Optimized Image
2012-05-25 12:23:04 +02:00
Remi Beges 5f765a354b Changed contributor name 2012-05-24 20:54:01 +02:00
Overdrivr 341eda975c NzNoise added 2012-05-24 20:41:08 +02:00
Lynix b243d15c74 Added formats conversion
Functor, NonCopyable, Tuple are now parts of NazaraCore (NazaraCore no
longer needs NazaraUtility)
Added loadFormat image parameter (ask loader to load image in specific
format)
Fixed utility project building
It is now possible to convert, get validity or get name of pixel formats
Changed endianness macros' name
Removed useless NazaraEndianness macro
Removed unused files
2012-05-24 18:55:48 +02:00
Lynix 570e0a8070 Updated OpenGL header files
Moved OpenGL ext header files into GL3 directory
2012-05-22 12:10:04 +02:00
Lynix 9b3f4e794a Added Image
Added pixel format support
Added MemoryStream
Added Rect
Added ResourceLoader
Added generic loader (bmp, gif, hdr, jpg, jpeg, pic, png, psd, tga)
Added PCX loader
Added utility module initializer
Fixed Config.hpp include
Prerequesites.hpp now overwrites _WIN32_WINNT when defined
version is less than requiered version
Renderer's initialisation will implicitly initialize utility module
Removed RENDERER_SINGLETON option
Shaders are now resources
2012-05-21 21:54:13 +02:00
Lynix cef402c8a5 Added NzInputStream
Added NzFile::Read(buffer, size)
NzFile::Read(nullptr, size) now acts as a skip function (ex: SetCursorPos(GetCursorPos() + size)
2012-05-15 13:26:35 +02:00
Lynix 182bd4cffe Removed useless include 2012-05-10 01:16:12 +02:00
Lynix 68b238fc74 Added SHA-1, SHA-224, SHA-256, SHA-384 and SHA-512 support 2012-05-10 00:53:36 +02:00
Lynix d0bc1d908a Fixed typo 2012-05-09 19:36:39 +02:00
Lynix e91cde657b Fixed per-class thread safety 2012-05-08 08:20:57 +02:00
Lynix 45f3fc4e28 Implemented COW into NzMatrix4; Optimized NzString COW 2012-05-07 13:02:07 +02:00
Lynix 8c420b48c3 Fixed compilation in debug mode 2012-05-04 16:06:18 +02:00
Lynix a215920818 It is now possible to send uniforms to shader when they are not mounted; Added shader locking 2012-05-04 08:56:35 +02:00
Lynix a4cbe46e15 Restablished core context creation, removed debug messages 2012-05-04 07:34:43 +02:00
Lynix 63a220a349 Added occlusion queries 2012-05-03 00:07:58 +02:00
Lynix 7d117ce97c Laid the basis for rendering 2012-05-02 16:45:44 +02:00
Lynix e8ef4b59da Fixed collaborator's name 2012-05-01 17:44:14 +02:00
Lynix 71b4262c51 First commit 2012-05-01 16:43:48 +02:00