Lynix
53162c1722
Added a Library to most reference-counted classes
...
Former-commit-id: 3ed409a71dcd5ce4eec7672ac26f8fff00e3b136
2015-01-28 18:06:05 +01:00
Lynix
35a37f8507
Updated ComputeAAB and TransformVertices functions
...
They now take sparse pointers instead of template type
Former-commit-id: 92a3de59b6a321136b8bad324048239f83381534
2015-01-26 17:44:32 +01:00
Lynix
025fdf6846
Renamed ComputeVerticesAABB function to ComputeAABB
...
Former-commit-id: 5e8381f8d09f583f6ef9b2919b082f3418644bce
2015-01-26 17:20:27 +01:00
Lynix
8f101812c3
Updated Generate* functions
...
They take now multiples SparsePtr (as VertexPointers struct) instead of
a MeshVertex pointer
Former-commit-id: c9393015dfd426ee4a28d71bfdd9851c92d072b7
2015-01-26 17:17:16 +01:00
Lynix
5e3fdbca89
(VertexMapper) Updated interface
...
Added access parameter
Removed useless GetVertexCount method
Former-commit-id: 670d16ed9668eb5df476a592929ed9c364b1f11a
2015-01-26 17:11:00 +01:00
Lynix
0db92e671d
Added a static New method to RefCounted-derived classes
...
Former-commit-id: efd9e68e050fb6cc7e0df7a7c222ca759c502dc5
2015-01-25 23:41:09 +01:00
Lynix
5f5be93992
Merge remote-tracking branch 'origin/master' into Resource-Update
...
Conflicts:
include/Nazara/Audio/Music.hpp
include/Nazara/Audio/SoundBuffer.hpp
include/Nazara/Core/Resource.hpp
include/Nazara/Core/ResourceListener.hpp
include/Nazara/Graphics/Material.hpp
include/Nazara/Renderer/Context.hpp
include/Nazara/Renderer/RenderBuffer.hpp
include/Nazara/Renderer/Shader.hpp
include/Nazara/Renderer/Texture.hpp
include/Nazara/Renderer/UberShader.hpp
include/Nazara/Utility/Animation.hpp
include/Nazara/Utility/Buffer.hpp
include/Nazara/Utility/Image.hpp
include/Nazara/Utility/IndexBuffer.hpp
include/Nazara/Utility/Mesh.hpp
include/Nazara/Utility/SkeletalMesh.hpp
include/Nazara/Utility/Skeleton.hpp
include/Nazara/Utility/StaticMesh.hpp
include/Nazara/Utility/SubMesh.hpp
include/Nazara/Utility/VertexBuffer.hpp
include/Nazara/Utility/VertexDeclaration.hpp
src/Nazara/Core/Resource.cpp
src/Nazara/Core/ResourceListener.cpp
src/Nazara/Graphics/DeferredRenderQueue.cpp
src/Nazara/Graphics/ForwardRenderQueue.cpp
src/Nazara/Graphics/SkinningManager.cpp
src/Nazara/Renderer/RenderTexture.cpp
src/Nazara/Renderer/Renderer.cpp
src/Nazara/Utility/Mesh.cpp
Former-commit-id: 99b5ad26a19fe9c9f8118da7b5920bffe89f60f8
2015-01-25 19:29:55 +01:00
Lynix
a185f03abc
Merge remote-tracking branch 'origin/Scene-Update'
...
Former-commit-id: 4185e7a826476d3d5b4275b3900fe695bd791f3a
2015-01-25 16:35:18 +01:00
Lynix
090263d847
Moved name attribute from Node to SceneNode
...
Former-commit-id: 6f920af67cd6c339d132a67b364742fdf172d5e9
2015-01-24 14:13:11 +01:00
Lynix
d1f1906f37
Fixed comment
...
Former-commit-id: a587575ad7e7c651eaf9c5cb9483a002615e4d4a
2015-01-23 20:21:19 +01:00
Lynix
ea8d683624
Updated copyright year
...
(532 files, wow)
Former-commit-id: cbb31f1124a86720bd3a54fe589a0f849a87b434
2015-01-21 20:53:01 +01:00
Gawaboumga
3933b07094
Suppression of warnings
...
OffsetOf: use of static_cast
Updatable: API and virtual destructor
Drawable: virtual destructor
Vector: std::abs should be "the" abs.
AbstractClass: API
+Updatable: Like for others abstracts
Buffer: nullptr for pointer to function.
Image: wasn't returning a vector.
Former-commit-id: 57e0009286a02b9e3b0b81945e500d7d9e466ae2
2015-01-21 13:51:49 +01:00
Lynix
8f9ea9db17
Added ResourceListenerWrapper
...
This class wraps the call to
Resource::AddResourceListener/RemoveResourceListener using RAII and help
a lot with some of the dependencies.
Thanks to this, the render queues now handle their resources listening
properly.
Former-commit-id: 7f215ffa4ccadcc4f44f777656970e92ce01087a
2015-01-18 23:59:01 +01:00
Lynix
a6183fae69
Added missing SkeletonRef typedef
...
Former-commit-id: 7c6671664dcc28e2fc8f2a0beeacb76b80828f4f
2015-01-18 14:30:30 +01:00
Lynix
e30c447bd5
Added default font
...
Former-commit-id: 84fc15f2c6d46bcfb55236863611f2fb96961a6d
2015-01-18 10:38:50 +01:00
Lynix
9f40fe12b1
(SimpleTextDrawer) swapped str and characterCount arguments
...
Former-commit-id: f009a36533158c37bcf4c996f62967df068a18af
2015-01-17 23:07:21 +01:00
Lynix
9662f4167d
Fixed crash on Utility uninitialisation
...
Former-commit-id: ef9f53674fe21c4d7780e68c62f7981554663a85
2015-01-17 22:55:50 +01:00
Lynix
cfe1bcf107
Fixed Font::[Get|Set]Atlas interface
...
Former-commit-id: 7670317dc2684fc0f9240a1f188e4ba92592a263
2015-01-17 22:48:27 +01:00
Lynix
b699d06805
Fixed typo
...
Former-commit-id: 1482a9580b19f657cccaadbbf4eacc9724d0a1e3
2015-01-17 22:45:25 +01:00
Lynix
7fee649b49
(Font) Added default atlas
...
Former-commit-id: 876f42110d4053b09abf86c6158b3ba79fdea201
2015-01-17 22:42:33 +01:00
Lynix
77db6f5dd3
Added Font initializer
...
Former-commit-id: 9d64e5f28508ebfafe7504a9ba47f57a970e77ce
2015-01-17 22:11:29 +01:00
Lynix
f1694fd6e9
(Font) Added mutable default values for glyph border and minimum step size
...
Former-commit-id: 9b69b591afb95fdea9d686ef9b775f965de40d9f
2015-01-17 22:03:04 +01:00
Lynix
b787ce94cf
(Font) Removed default move-constructor
...
Former-commit-id: 15ccd22b9333327e761500f7b07f0ef7db8ad857
2015-01-17 21:53:47 +01:00
Lynix
6d3228477f
Added TextDrawer classes
...
Former-commit-id: 4c5ace385f1a9b9ceebb774022bbc001b69a3bb4
2015-01-16 23:36:20 +01:00
Lynix
48ecb058f0
(Font) Added notification on atlas layer change
...
Fixed irrelevant error message when a font destroy an atlas
Former-commit-id: ddbd04e9172f2d35a8e0cf8a37fe48724aeb5c64
2015-01-16 23:34:56 +01:00
Lynix
77347c8582
(Font) Added notification on atlas change
...
Will only clear glyphes when setting differents parameters
Former-commit-id: b16a289742c0f23fa5066d3c52ce35b4abc626c6
2015-01-16 18:57:09 +01:00
Lynix
cd5399459d
Made Resource copying/moving impossible
...
It is still possible to copy some Resource-based classes though
Former-commit-id: bbb6066f736c210015ff9fdfded7d95eb9695359
2015-01-16 16:28:38 +01:00
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
40db7a7292
Fixed AbstractImage destructor not being virtual
...
Former-commit-id: fd93b711d9b4ffbd370a61d1a7515da71e3d6001
2015-01-16 12:53:23 +01:00
Lynix
b5dbe6f03f
Added XY_Color VertexLayout
...
Former-commit-id: 0f53126584b61738b25b1d86cec819d6166ad678
2015-01-16 12:52:10 +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
a9ef2f7e36
Added support for faux-bold and faux-italic
...
Former-commit-id: 259429e8d38b0299e30d539253b50e3aab12c76b
2015-01-08 14:19:53 +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
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
e3f7644831
Added class AbstractImage, inherited by Image and Texture
...
Former-commit-id: 16e5db4937a145ac244d6c70e4c74662622f86d9
2015-01-05 15:08:29 +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
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
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
ed1cc7a092
Added viewer-relative directions
...
Former-commit-id: 9d80744bd227689426b76df7e3c273de13424041
2015-01-03 22:39:51 +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
96798da027
Added TODO
...
Former-commit-id: 11658e200641ba0846bc8b89376e034cd0b6c9a4
2014-12-10 14:41:56 +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
b56e40f35a
Added comment
...
Former-commit-id: 045a48cb1b0e798de31cd2aff0708324648da409
2014-12-07 03:03:45 +01:00
Lynix
3db73921c2
Made 2D nodes easier to use
...
Former-commit-id: 80c0340b93c203bd874568c9d4fb5e2fc88a5860
2014-12-07 03:03:35 +01: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
fd293f8564
Fixed missing include
...
Thanks to lepiaff
Former-commit-id: 458060b52bbc74f632bfa8bef643d22e780a4a8f
2014-08-23 22:04:48 +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
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
df44d799c8
Added [Index|Vertex]Buffer easy constructor
...
Former-commit-id: 4536af8c833c15b49876c773defd3475a561df4b
2014-08-18 15:39:44 +02:00
Lynix
ce01892482
Fixed missing include
...
Former-commit-id: 2adfb798af325a6c56244a3218072be74be237fb
2014-08-05 09:41:22 +02:00
Lynix
7a2a10b390
Added VertexMapper constructor
...
Removed useless headers
Former-commit-id: e8925f48eec9c52dc4f2ad7bf6a61deb755bc0ee
2014-08-03 20:58:09 +02:00
Lynix
0415f32b86
Added some comments
...
Former-commit-id: 42fb1dd19abec2befd7cb065f794e4b765d1411e
2014-08-03 20:57:24 +02:00
Lynix
9e04e8a0e4
Separated reference counting from Resources
...
Former-commit-id: 7380818cfee9e249c11fd15da9ff7883a6e76565
2014-07-15 00:59:02 +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
7d5876d505
Updated VertexStruct
...
Former-commit-id: 988df22928da5cce6ab5c62f3e3f4d75a8cee57b
2014-07-13 09:28:15 +02:00
Lynix
27aea8ae2a
Fixed VertexDeclaration copy constructor
...
Former-commit-id: 54bd378364c987c975ca2e83187b3559f4b9d92c
2014-07-11 10:23:55 +02:00
Lynix
b54be6e25f
Renamed AttributeUsage and AttributeType
...
... to VertexComponent and ComponentType.
-Renderer:
Renamed IsVertexAttributeSupported static method to
IsComponentTypeSupported
-VertexDeclaration:
Added IsTypeSupported static method
Renamed [Disable|Enable|Get]Attribute to [Disable|Enable|Get]Component
Removed GetAttributeSize static method
-VertexMapper:
Renamed GetAttributePtr method to GetComponentPtr
Former-commit-id: 7115856e1d389610c35b26f63af5d93a5ad5c690
2014-07-10 18:31:56 +02:00
Lynix
d84c2e040c
Removed Identity test in TransformVertices
...
Former-commit-id: a9b3fc4ddd7af762e063f0faae3b0245e24f4e18
2014-07-08 11:56:47 +02:00
Lynix
f19b89f947
Updated Skinning code
...
Former-commit-id: ae608042061847b2f710abce8101eb008ef2a661
2014-07-08 11:31:14 +02:00
Lynix
d3c3ad5bb8
Improved code
...
Former-commit-id: 31d737ae9d45a14a59b85118b9797565610866ff
2014-07-08 11:29:30 +02:00
Lynix
5c2ae93d0b
Reworked TriangleIterator
...
Will now output vertex indices instead of vertex data (making it way
more useful)
Former-commit-id: c82d61ca0ac3f2908d57e167dade74af42282b06
2014-07-08 11:22:32 +02:00
Lynix
70e1327071
Reworked VertexMapper to make it way more generic
...
Will work with any attribute and vertex declaration
Former-commit-id: ca99734bd8a9c3e57c99b1cc338f03e79dda55f6
2014-07-08 11:21:41 +02:00
Lynix
af1d2d9146
Reworked SkeletalMesh class
...
It now uses a VertexBuffer
Former-commit-id: 81d5db90d9eb8a097342a1ae613468edcae730a6
2014-07-08 11:18:09 +02:00
Lynix
d636174c04
Added SkeletalMeshVertex struct
...
Alias of VertexStruct_XYZ_Normal_UV_Tangent_Skinning
Former-commit-id: 1bec60d399dd3293aebb7a7b84370ff33e8b85dd
2014-07-08 11:13:07 +02:00
Lynix
8ab69fa3ab
Improved VertexDeclaration class
...
Added AttributeUsage_Unused
Improved code and error handling
Former-commit-id: bd0f3755867d38e0f03b282970031fbadc10213e
2014-07-08 11:11:11 +02:00
Lynix
0ebf993ed8
Added UTILITY_SKINNING_MAX_WEIGHTS
...
Hopefully fixing compilation errors
Former-commit-id: 503c5c53a6fff9eb62e0037253fe4b54a90b806a
2014-07-08 10:59:42 +02:00
Lynix
9969d5f5f3
Removed UTILITY_MULTITHREADED_SKINNING config
...
Useless since SkinningManager is now handling this at runtime
Former-commit-id: 4a8b2d08de2f5c367821786d2cdff5dd45daadef
2014-07-08 10:58:58 +02:00
Lynix
c4b10dddda
Big config/debug update
...
Added config checkers
Macro no longer use suffixes
Moved MemoryManager to upper directory
Renamed *_MEMORYMANAGER to *_MANAGE_MEMORY
Renamed AUDIO_STREAMEDBUFFERCOUNT to AUDIO_STREAMED_BUFFER_COUNT
Renamed CORE_REAL_PRECISION to CORE_DECIMAL_DIGITS
Renamed DEBUG_MEMORYMANAGER_DISABLE_REDEFINITION to
DEBUG_NEWREDEFINITION_DISABLE_REDEFINITION
Renamed GRAPHICS_MAX_LIGHTPERPASS to GRAPHICS_MAX_LIGHT_PER_PASS
Renamed UTILITY_FORCE_DECLARATION_STRIDE_MULTIPLE_OF_32 to
UTILITY_VERTEX_DECLARATION_FORCE_STRIDE_MULTIPLE_OF_32
Former-commit-id: 81ef836ac9f092ac471f60e544bb7c7c6370593c
2014-07-08 10:56:37 +02:00
Lynix
c882de1a6f
Made IndexIterator::operator[+|-] const
...
Former-commit-id: 5008803eaad4bb514ad85d1ae92ac2c624fa84a3
2014-07-07 12:08:45 +02:00
Lynix
b70f693b8c
Merge remote-tracking branch 'origin/RenderTechnique-Update'
...
Former-commit-id: 85e5af81ed3381af19e87c6ca0ee14e79955e563
2014-06-24 12:56:10 +02:00
Lynix
774df28d87
Cached skinning matrix
...
Former-commit-id: c5aeb09778f5696906eb764f600c4a152ab7ba48
2014-06-21 16:22:34 +02:00
Lynix
5310c8b0d6
Moved skinning to algorithms
...
Former-commit-id: ab31467438f55e8381daa8f238c201c46ba96f52
2014-06-21 16:21:33 +02:00
Lynix
bc9c8c6bdb
Merge remote-tracking branch 'origin/RenderTechnique-Update'
...
Former-commit-id: db5a6503e43615a47e3be4aaaa033899639392b7
2014-05-29 19:59:09 +02:00
Lynix
e0b8cf68aa
Commited forgotten file (from commit 11ebdd50c3df1e96d7d8cc5b885360675ca5c302 [formerly 39e74cabd80f85aadb4db40f558ffc699a580423])
...
Former-commit-id: c6d4f4aa4f43a602a47f7996721b695e6bd95566
2014-05-28 10:10:51 +02:00
Lynix
42f5b501f5
Alphabetical commit
...
Former-commit-id: 4ee6e29bfc574b670ed583a95990aaa8954fc8cb
2014-05-28 01:12:14 +02:00
Lynix
d09f6def2b
Added MeshData struct
...
Former-commit-id: 98c7124043a57f9e0172c2db5e363cba598b7daa
2014-05-28 00:54:30 +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
c606599e19
Updated MemoryManager
...
Renamed MemoryLeakTracker[.hpp|.cpp] to MemoryManager[.hpp|.cpp]
Added MemoryManager::GetAllocatedBlockCount()
Added MemoryManager::GetAllocatedSize()
Optimized MemoryManager (no longer allocates a time buffer)
Former-commit-id: 0e9c720cbb48fbed7006db3bd1000ebbc22c9583
2014-04-21 22:13:31 +02:00
Lynix
c45e22ff7d
Updated comments
...
Former-commit-id: 66e035deb3f7f549257f5b04c327396b88c94363
2014-04-20 22:30:55 +02:00
Lynix
ff2bf98623
Made use of std::function
...
Former-commit-id: 17e7ebe528071c6399383089ac1c0d089faccc34
2014-04-20 14:06:29 +02:00
Lynix
80c4ef6b5a
Removed constructor and destructor from static classes Keyboard and Mouse
...
Former-commit-id: 9c9054723b33535ec444bda4621dd678284d6983
2014-03-04 19:11:03 +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
4df6c30a26
Fixed ParameterList placement new conflicting with MLT
...
Former-commit-id: 97ca15d16e20e42427fceeea4f96a2e6b857dc83
2014-02-18 00:52:23 +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
69479de643
Added center mesh parameter
...
Former-commit-id: e010a81e3f00ca6091e438d405e3e6ca14938b8f
2013-12-20 20:03:18 +01:00
Lynix
3c96d8a1a1
Added Keyboard::Decimal key (Numpad .)
...
Former-commit-id: ae01476de199e22d080508e88f2625c2f0332002
2013-12-13 22:07:03 +01:00
Lynix
a9af5523ee
Added cone primitive generation
...
Lacks normal/tangents/uv
Former-commit-id: 682bb7ea926361bfb10807f6addf98f8fd4e7d75
2013-12-09 14:15:34 +01:00
Lynix
23da4ce420
Disabled multithreaded skinning (one more time)
...
Looks like there's a bug when accessing multiples joints matrices
Former-commit-id: 04a52d4d0c8dda6bb98228fa4aa43b5858d08f91
2013-12-09 14:12:45 +01:00
Lynix
55aed0ec68
Rewrote Task Scheduler
...
Better and faster implementation
Former-commit-id: d765415ca0576cd843480292e30c2d7bafa7f66a
2013-11-30 13:48:01 +01:00
Lynix
2fd86dc406
Added texture rect parameter to primitive generator
...
Former-commit-id: 5efc0fd1bcc2aad9cd4b75ff9fb8b29d84bfd363
2013-09-21 09:05:37 +02:00
Lynix
0fd535a9e8
Added a lot more texture formats
...
Former-commit-id: b3a553ea39a174d84c5cd6fcca853ee83c1e6670
2013-09-06 12:07:38 +02:00
Lynix
bed20692a6
Fixed OnResourceDestroy callback not called by the destructor
...
Former-commit-id: 8b961101f88343ddd3bb382d2c333052efb03164
2013-09-03 13:57:32 +02:00
Lynix
df8449c13e
Added HDR texture formats
...
Former-commit-id: affa3c0842d3918977c48483bf485ac17e218448
2013-08-28 03:05:46 +02:00
Lynix
a6f26ff336
Added Window::OnWindowResized event
...
Former-commit-id: 61262182892d2dae3defb239e751cd4b996a5ad6
2013-08-21 18:48:15 +02:00
Lynix
6507e1ed2d
Updated buffers interface
...
Former-commit-id: 8c8d60b6b22cc844740dbc3320af65575cec4feb
2013-08-07 01:10:26 +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
4352083c4b
Added ShaderManager (Experimental)
...
Former-commit-id: 327e373f2b932e31184e88c5f29bd5bd8fa3ba46
2013-07-15 00:23:04 +02:00
Lynix
afbd002234
Minor changes
...
Former-commit-id: c66ee9a05270965921c48ab7b9faf3033a59ce20
2013-07-10 21:10:53 +02:00
Lynix
5b730f1d4c
ResourceListener no longer add a resource reference
...
Former-commit-id: b249d472b4140b85e4e286552323fde6b9b66bd7
2013-07-09 01:06:11 +02:00
Lynix
4abefc3e93
Reworked IndexBuffer, Vertex[Buffer|Declaration|Structs]
...
Former-commit-id: e3f637f2680afda57a444f73b8f7ad681bb1b8a5
2013-07-01 16:14:29 +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
880c2aa32c
Plane primitives no longer rely on normal vector
...
Former-commit-id: 66e1e2a83799055ad773f7b145e569469f68279a
2013-06-18 16:39:46 +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
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
f74f9e964e
Replaced Mesh::Build by BuildSubMesh(es)
...
Former-commit-id: c5b034aa764cdda0ea0c48182f2562968a10c226
2013-06-07 12:22:43 +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
146ca80a63
Added index iterators
...
Former-commit-id: de3ed77ba9e3c48aa68020e23ded679066b9878f
2013-06-05 15:33:43 +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
714e3e01bc
Added mesh generator functions
...
Added Mesh::Build
Former-commit-id: dcfc6587b67ab4ec350ab7ca04ae7f45475f6b1b
2013-05-30 13:25:45 +02:00
Lynix
ac9e200e83
Merge remote-tracking branch 'origin/Graphics-update'
...
Former-commit-id: 6050b694c2c97ec65e7573d729985e5b7aacec84
2013-05-30 13:17:23 +02:00
Lynix
355d52324a
Fixed licence text
...
Former-commit-id: c4f7c3c0fffc0449ebf0a405632877d902c3da62
2013-05-29 01:35:21 +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
3ff5761703
Fixed missing headers
...
Former-commit-id: 85c27f12d393c087a455433b2bf7298a25f13b44
2013-05-21 14:00:23 +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
2b00ee9c04
Cleaned SubMesh code
...
Former-commit-id: 26be5a2fd205428f10316f899ee36b8fc3c3d46e
2013-05-13 12:52: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
7908839785
Added Window::GetStyle()
...
Useful with external windows
Former-commit-id: 62974c8cdfb6919bc1e85507cc8adc8101daba1a
2013-05-01 01:36:13 +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
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
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
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
2f72939ad0
Added [Sub]Mesh::GetTriangleCount()
...
Former-commit-id: e365bd3aa57d487186a0be5cde1d5b0ba78d740c
2013-04-01 14:33:10 +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
5390bd49f0
Fixed pixel flipping (ex:horizontal was vertical)
...
Former-commit-id: 8fb8e6949ae1d2c3d53e42b979f1716e25d3bba9
2013-03-22 11:14:11 +01:00
Lynix
ea75b8ece5
Added some comments
...
Former-commit-id: 4710c355d4106191419441b4fb49370dc9f04ec2
2013-03-21 22:55:34 +01:00
Lynix
6a7eb137d7
[Index|Vertex]Buffer::Fill now takes discard arg
...
Former-commit-id: 384ffdb12d82c1e960249abcaf407ccbfe0939cf
2013-03-20 15:40:37 +01:00
Lynix
63fae2f9ca
Removed useless comments
...
Former-commit-id: a80cc9caf7a113fd37e322c0f7fbf26fb2747cba
2013-03-15 03:14:27 +01:00
Lynix
6c2fb1eb89
Added ResourceRef (Automatic resource reference)
...
Former-commit-id: 97a0b2732f4dc443b8e1676e68b33b1b53ddf4fb
2013-03-15 03:09:58 +01:00
Lynix
32b1d02cec
Updated copyright texts
...
Former-commit-id: 81483f7a94935c925e53b7f450e42635b1357833
2013-03-13 23:23:41 +01:00
Lynix
9ee273f550
Added ignoreEvent boolean to Mouse::SetPosition
...
Former-commit-id: 6dcb701a51c7bc58b105dd42f7ad44371fd0c92b
2013-03-13 22:41:47 +01:00
Lynix
39e54474dd
Added Window::Close (soft way to close window)
...
Former-commit-id: 9d47ed3ed38d62928f3cb6356fed07501b5e92d5
2013-03-08 01:20:26 +01:00
Lynix
9f780ef2bd
Optimized Buffer locking/filling
...
Former-commit-id: 41cb66257f3eeef375086bf51f26230a06ca9eb8
2013-03-06 22:40:15 +01:00
Lynix
e26728c424
Removed Keyframe animation type
...
Former-commit-id: 807c81e9b738dbb443c3101026f7b5bdff32a931
2013-03-05 10:54:58 +01:00
Lynix
636b9d3f50
(Node) Added name getter/setter
...
Former-commit-id: 56ec0721abfba836a12c8a2de7f7c909f58a6c37
2013-03-02 01:33:58 +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
0df64e03ae
New mesh policy
...
Former-commit-id: cc5854d55e1e4bb83e5e081434b87ec22fcb8bff
2013-03-02 00:17:40 +01:00
Lynix
bb4c747e0b
Buffer::CopyContent takes now an const buffer
...
Former-commit-id: c7a44c3198a24a60a26ab3cc04f75f4cea159979
2013-03-01 16:11:39 +01:00
Lynix
1b5215d4c2
Removed AxisAlignedBox (Replaced by BoundingBox)
...
Former-commit-id: 931dd6710caf49aeaede51efe209d714f080c44b
2013-02-21 18:28:32 +01:00
Lynix
add363a290
Moved AxisAlignedBox to mathematic module
...
Former-commit-id: 2cb5b151941a431b5c12457f0decf7b39195052d
2013-02-19 12:32:11 +01:00
Lynix
60d41f3c4b
Moved AxisAlignedBox::GetCorner to Cube
...
Former-commit-id: 59509594e6cda19089b93efd8dc77ab7bd20250c
2013-02-17 00:51:16 +01:00
Lynix
3409461c39
SkeletalMesh::Skin now use threads
...
Former-commit-id: 4b26b3e1950548887f0a7d246864a968688ca0b4
2013-01-29 02:01:28 +01:00
Lynix
85c3224752
Added mesh generation of normals and tangents
...
Former-commit-id: 42b29acf5701b19156d6966b402baf11c87f3476
2013-01-27 18:39:32 +01:00
Lynix
4a28e42d4d
Improved Node interface
...
Former-commit-id: cbc204748d8cf30771743f26270324dee6ada242
2013-01-12 01:38:58 +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
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
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
438d509130
Added VertexMapper
...
Former-commit-id: 26765f92782b61443544744ac145ccd02a8ed2b0
2013-01-03 19:39:52 +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
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
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
24720d7df1
Moved static function prototype
...
Former-commit-id: f5be3289558e3285f14216428221df0fed2e4d5a
2012-12-19 15:02:22 +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
9e24a6b7b2
Added warning to an unusable option
...
Former-commit-id: a4d45b29970085996f417313d4c7df84f0ca100b
2012-12-03 23:39:49 +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
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
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
18baa6b8c1
Fixed typo
...
Former-commit-id: 4254892b447457b57cf9657f87ecf32a1ec899fe
2012-11-25 16:12:57 +01:00
Lynix
da2963e1c1
Removed unused forward declaration
...
Former-commit-id: e32abcef8cf0314a4c020a1b3e6c2f36c6ce9e30
2012-11-24 17:40:28 +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
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
Lynix
9199e60436
Added implicit conversion from AABB to String
...
Former-commit-id: c41510f4e0527a174d4acb5f8f26f60f4984ce15
2012-11-02 21:50:33 +01:00
Lynix
3a9e8850c0
Added Keyboard::GetKeyName (experimental)
...
Former-commit-id: a937b98ceeed3cb7c64bf6c1f544bb7021ad01bd
2012-10-26 14:09:09 +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
10fc386865
Added VertexDeclaration::HasElement
...
Former-commit-id: 30dccfba56bba0e56c08da79c3fde3bdf94119cb
2012-10-04 09:33:54 +02:00
Lynix
8d057fb3b1
Renamed GetBPP to GetBytesPerPixel
...
Also added GetBitsPerPixel
Former-commit-id: 9cc1df58133c538b1dc74215a9022d13dfd9d7f6
2012-09-30 23:11:00 +02:00
Lynix
a73cd1374a
Normalized line ending
...
Former-commit-id: bd061c48bdc8f0d26159dac3b41017defef5ae1e
2012-09-21 14:24:48 +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
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
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
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
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
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
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
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
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
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
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
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
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
71b4262c51
First commit
2012-05-01 16:43:48 +02:00