Commit Graph

893 Commits

Author SHA1 Message Date
Lynix 622fce6f9c Regenerated global headers (and updated copyright year, again)
Former-commit-id: b5b24f4a3610e1dead2883afaded48bf3554669d
2015-01-30 22:33:41 +01:00
Lynix 993b2e4145 (ObjectRef) Removed useless assignation
Former-commit-id: 8e7b3c75ba9a50b99dfbb6656f2c8c97db4b27a7
2015-01-29 14:43:19 +01:00
Lynix 8eef78293d Improved ResourceManager code
Former-commit-id: e4e2b9aafdb569d2769a1501f88e307fcbe763a0
2015-01-29 11:46:29 +01:00
Lynix e82eccecfd (ObjectRef) Added static_assert (Improved error message)
Former-commit-id: 11217f66e37fd6552d811298f7dacce940f894a3
2015-01-29 11:46:11 +01:00
Lynix 7a73314ef5 Added resource managers
Former-commit-id: 9c071230c1e325ec672c9dfe30ee7e498baa1d08
2015-01-28 20:53:40 +01:00
Lynix 6324d21c67 Made ResourceLoader types private
Former-commit-id: 018c224274088c6471d4fdc6d9393782e2352810
2015-01-28 20:39:19 +01:00
Lynix 22e5230c32 (ObjectLibrary) Added Query static method
Former-commit-id: 802dcc589dd2c552a332490153b6761341c0a698
2015-01-28 20:38:54 +01:00
Lynix 53162c1722 Added a Library to most reference-counted classes
Former-commit-id: 3ed409a71dcd5ce4eec7672ac26f8fff00e3b136
2015-01-28 18:06:05 +01:00
Lynix e18e490c59 Replaced (Uber)ShaderLibrary by template class ObjectLibrary
Former-commit-id: d488cfd4e5e3ff31112fffebce2b7cdb86cc2e55
2015-01-28 15:49:04 +01:00
Lynix c2d1773b41 (ObjectRef) Added implicit conversion constructor/operator
Former-commit-id: c633956130731e84c6d15d09961cd80c8d24877a
2015-01-28 15:46:14 +01:00
Lynix 9195e162a8 (Material) Removed outdated Move declaration
Former-commit-id: 7bfacdc630203af6b231184dbde4af31bd46fab5
2015-01-28 13:53:39 +01:00
Lynix b088736e08 Removed ResourceLoader constructor/destructor
Former-commit-id: 31180fbeb4ce6be2e2811b91e7ae6814af0beccf
2015-01-28 11:37:34 +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 ab538e0e2d Fixed comment
Former-commit-id: e15fa14a9f6c14d0660a5ec702ca6b8a2288dc83
2015-01-26 16:14:03 +01:00
Lynix 8fad28bccd Fixed SparsePtr::operator->
Former-commit-id: 29be487addb68b8621d5205c779d4a47aceeb27b
2015-01-26 16:13:44 +01:00
Lynix eed90cb683 (SceneNode) Added Remove() method
Former-commit-id: 191834826b1c6651dab62c77aabb072ba59a301b
2015-01-25 23:53: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 4a2f386c80 (Drawable) Made destructor virtual
Former-commit-id: ab35592cf015a3056de5d533b29d3c469cb29d29
2015-01-25 16:34:34 +01:00
Lynix bc6dd44009 Made SceneNode name change reflect on the Scene
Former-commit-id: b924b0b9d103e4fce6ab2faf952b9153d49cce06
2015-01-25 16:34:19 +01:00
Lynix 6d8b266b4c (Scene) Added FindNode(As) and RemoveNode methods
Former-commit-id: 35b0d6a61e99383fffa8048b3c0f6a48b8f0f66c
2015-01-24 22:00:55 +01:00
Lynix 9ebd023848 (SkeletalModel) Added virtual constructor implementation
Former-commit-id: 4a7f356e14f629a728a77f94db7e26c6c4af3b72
2015-01-24 16:42:49 +01:00
Lynix cdff689403 (Ray) Fixed Intersect(Plane, T) method
Former-commit-id: 5acfae80d778087a2e2b423d34da8a218a802cd4
2015-01-24 16:18:06 +01:00
Lynix 0e48f052e5 Fixed GetNearestPowerOfTwo function
Returning the next POT even if the number was a POT itself


Former-commit-id: 812f35d13a99985ca5c12517cd84de22292e52c7
2015-01-24 14:34:36 +01:00
Lynix 090263d847 Moved name attribute from Node to SceneNode
Former-commit-id: 6f920af67cd6c339d132a67b364742fdf172d5e9
2015-01-24 14:13:11 +01:00
Lynix e46cb43ef5 Removed useless code
Former-commit-id: 8e65848eed8c3ceb829a7c556f4686676ea946f4
2015-01-24 12:03:24 +01:00
Lynix 0a7711d85b (Scene) Added CreateNode and Clear methods
Former-commit-id: de92f4a4be45e5cbd1d2d83191300e0b46764f0e
2015-01-23 22:35:41 +01:00
Lynix cf12552358 (SceneNode) Added virtual constructor idiom
(Light) Added default constructor


Former-commit-id: 591e6a8435d2cea6238e70c0058d381b8d547f3e
2015-01-23 21:04:29 +01:00
Lynix d1f1906f37 Fixed comment
Former-commit-id: a587575ad7e7c651eaf9c5cb9483a002615e4d4a
2015-01-23 20:21:19 +01:00
Lynix 01a1badac7 Removed useless std::function from rendering code
Former-commit-id: eaba729d5047d326fb2e746cec0621bfcf2eb1c5
2015-01-23 20:21:00 +01:00
Lynix f6df10dacf Removed unused file
Former-commit-id: 374fc27dca13c38dfa94928841cefb031e7b32ed
2015-01-23 20:07:24 +01:00
Lynix 1f043b61df (Scene) Removed useless Pimpl idiom
Former-commit-id: ffbca2a6b6e16792f58e77195a08911368f64f57
2015-01-23 14:35:26 +01:00
Lynix c5ec2af361 (Scene) Added RenderFrame method
Former-commit-id: ba02b2f0d65858fdabdedf5f0a9f7f9b1baa7268
2015-01-23 00:02:33 +01:00
Lynix a39988ac46 Removed unused file
Former-commit-id: 42b523c8da74800166935602755e554f26d7fa40
2015-01-22 23:46:55 +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 8a3c410d60 Made bounding volume handing part of SceneNodes
Former-commit-id: d09d06ac4515ce09aa16fd92dd045c2a06730a99
2015-01-20 20:35:16 +01:00
Lynix bce3cadfd5 (ParticleEmitter) Added lag compensation
Former-commit-id: 914a976ba52b2629190ded068cc23e1cf7dee4d4
2015-01-20 17:48:11 +01:00
Lynix bbfbec1aa3 (ParticleSystem) Moved controllers update to a function
Former-commit-id: 47586e675c202d871e3ea3561dc19781bdb264f3
2015-01-20 16:59:50 +01:00
Lynix ac25c4a041 (TextSprite) Renamed SetText method to Update
Former-commit-id: 798baecaaf919c20d43f036f361d10d459270d0b
2015-01-20 15:12:41 +01:00
Lynix 7e9c5e9a06 Improved NomalizeAngle function
Former-commit-id: 79793b0c57a333e6d2d4a41a14f2b7fdc1d1f093
2015-01-20 15:05:37 +01:00
Lynix e2d4ba030c Alphabetical commit
Former-commit-id: bacf8ab447d3022b48aac5f5ca2d337bc1283f8c
2015-01-19 11:57:19 +01:00
Lynix 304b46b17d Merge remote-tracking branch 'origin/Particle-Update'
Former-commit-id: 272203af1d740dc32e9714e00e4f889db6b13350
2015-01-19 02:23:07 +01:00
Lynix ead44173ba Merge remote-tracking branch 'origin/Particle-Update'
Conflicts:
	include/Nazara/Graphics/Enums.hpp
	include/Nazara/Graphics/ForwardRenderQueue.hpp
	include/Nazara/Graphics/ForwardRenderTechnique.hpp
	include/Nazara/Graphics/Sprite.hpp
	src/Nazara/Graphics/DeferredRenderQueue.cpp
	src/Nazara/Graphics/ForwardRenderQueue.cpp
	src/Nazara/Graphics/ForwardRenderTechnique.cpp
	src/Nazara/Graphics/Material.cpp
	src/Nazara/Graphics/Resources/Shaders/Basic/core.frag.h
	src/Nazara/Graphics/Resources/Shaders/Basic/core.vert
	src/Nazara/Graphics/Resources/Shaders/Basic/core.vert.h
	src/Nazara/Graphics/Resources/Shaders/PhongLighting/core.frag
	src/Nazara/Graphics/Resources/Shaders/PhongLighting/core.frag.h
	src/Nazara/Graphics/Resources/Shaders/PhongLighting/core.vert
	src/Nazara/Graphics/Resources/Shaders/PhongLighting/core.vert.h
	src/Nazara/Graphics/Sprite.cpp

Former-commit-id: 73139ce47d7721635d87c74b2ca1183c2f67c090
2015-01-19 02:20:28 +01:00
Lynix c18fc4cb14 Removed ShaderUniform_[EyePosition|SceneAmbient]
Former-commit-id: 89dedaf78d86def598531f472a1a6ecd56fe8371
2015-01-19 00:15:01 +01:00
Lynix 911babc283 Changed meaning of return value from resource events
Returning false from a resource event will remove the listener from the
resource, instead of decrementing it's counter


Former-commit-id: ba47da0e8de5c0adb3d31f29af0ef7835beefd5a
2015-01-19 00:00:54 +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 0b1f10bf72 Alphabetical commit
Former-commit-id: a62b1812e59371e4ca7f1d77bf438859514e0ac7
2015-01-18 12:20:32 +01:00
Lynix 81e38d1431 Fixed comment
Former-commit-id: 02e09bb9eac10da9693c07db00c837784a6edf4e
2015-01-18 12:19:05 +01:00
Lynix e30c447bd5 Added default font
Former-commit-id: 84fc15f2c6d46bcfb55236863611f2fb96961a6d
2015-01-18 10:38:50 +01:00
Lynix c02fe6c8ff Fixed streaming loaders when used with memory streams
Former-commit-id: ce39ee03f40682c00c78b08ac285b9ea36240fa5
2015-01-17 23:42:49 +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 4a4b4e0fda Regenerated global headers
Former-commit-id: 01c6359d8fae9309dfd1003c3c786de57a93692c
2015-01-17 00:39:40 +01:00
Lynix 86502df849 Merge branch 'Font-Update'
Former-commit-id: d293f78c891a74554c6b990afafdc1eb1cc0a584
2015-01-17 00:36:28 +01:00
Lynix a244029e11 Fixed RenderTarget destructor not being virtual
Even though it's pretty useless


Former-commit-id: 9140fc3bc8aeabf041c5cf90ea3efcabc4ed4940
2015-01-17 00:35:20 +01:00
Lynix 18367d26da Added View::SetSize(width, height)
Former-commit-id: 9afd04b62e99702720cb10feae2462eaad33a90b
2015-01-17 00:34:59 +01:00
Lynix 3ed18e70da Added default material to sprites
Former-commit-id: 8a68d3d9b251ff93a793d4e001aed721558a8eef
2015-01-17 00:34:09 +01:00
Lynix a0054def7b Added TextSprites
Former-commit-id: 85bef5ec14336710b2fdc782d3d0d77787ab65dd
2015-01-17 00:16:52 +01:00
Lynix fdb722ef14 Made SceneNodes non-movable
Fixed SceneNodes copy constructor not parenting the right object


Former-commit-id: 21a08e3bb0931af426d97399dab86dda9acdf172
2015-01-17 00:15:01 +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 5eec0d2abe Improved (Fixed ?) Material Copy/Move
Former-commit-id: 8eb9b716e2b028c6d2e249f9706ad6f5567c95dc
2015-01-16 14:03:06 +01:00
Lynix c2f3ba00f2 Revert "Added ResourceConstListener"
This reverts commit 2492f87ba89bafa180308c60d2470b07e3aac27d [formerly 793b9a8884fb6153d5da152e2cf22659fc7e511b].


Former-commit-id: 05a9dff26921db1e7c1c5b90c0cd50073a839f3c
2015-01-16 13:02:53 +01:00
Lynix 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 88af94b987 Added ResourceConstListener
I don't know yet if it's a good idea but at least it's an idea


Former-commit-id: b034a787d8d8ccce0804f1276958b32c9e149147
2015-01-07 23:47:09 +01:00
Lynix b6c5668232 Separated atlases from Font class
First use of shared_ptr, yay!


Former-commit-id: 4c22341fba5674746d5299cf0e8dbf6dc31d5362
2015-01-07 23:46:26 +01:00
Lynix 904319ee90 Improved/Fixed Texture class
Allowed move constructor/operator
Fixed Texture::Download/Texture::Update
Made InvalidateMipmaps public


Former-commit-id: b8b6a54bc5d6250f640fed6582dc694df6405f73
2015-01-07 21:03:29 +01:00
Lynix 9293022e71 Added sprite overlay rendering
Former-commit-id: 1e25a7d85f06f4a4bc3ed0ead76df01db440671d
2015-01-07 19:27:15 +01:00
Lynix 6c4f8e7396 Added SparsePtr::operator[+|-](unsigned int) overload
Let's hope it will be enough to stop GCC from barking at me


Former-commit-id: 0bcdf37acdc2e49a4ddd310dcdeb5bd6c66225a1
2015-01-07 19:19:53 +01:00
Lynix 72a24c4d7c Aded Renderer::GetMaxTextureSize()
+ minor changes


Former-commit-id: 6b80280d018c323ceb393c58aab96d68a15f3ff2
2015-01-06 19:03:39 +01:00
Lynix 5cbdd8832c Turned DataStorage enum into flags
Allowing for example hybrid buffer implementation


Former-commit-id: 74af1ba5b11b945abdfa6b46d0c11d600eca6d7c
2015-01-06 13:36:58 +01:00
Lynix e3f7644831 Added class AbstractImage, inherited by Image and Texture
Former-commit-id: 16e5db4937a145ac244d6c70e4c74662622f86d9
2015-01-05 15:08:29 +01:00
Lynix 304b4d13cc Removed Texture::UpdateFace
Texture::Update is now able to update cubemaps faces (one at a time)

Former-commit-id: 7468761d1f08fc9477af8da5a38722508c044917
2015-01-05 14:32:34 +01:00
Lynix d13ab1a050 (Texture) Reflected Image interface (size getters)
Former-commit-id: 4d979671c7b49191fb44b5fae7e9bfb266cd1417
2015-01-05 13:51:46 +01:00
Lynix b2b18a9f51 Added Image::GetSize (returning the image's dimensions)
Renamed original Image::GetSize to GetMemoryImage


Former-commit-id: a2b54f171353b8197639b5f2b3911e4b3f2a8db2
2015-01-05 13:41:56 +01:00
Lynix 5daf09e41b Added OpenGL-like Vector constructors
Former-commit-id: 302389b6a915d66a0a0fb4cc9a748ed5266ae98c
2015-01-05 02:32:57 +01:00
Lynix 0f033eaed9 Added CallOnExit::CallAndReset()
Former-commit-id: 045ff61445203999757971deeeafee719fc5506a
2015-01-04 18:57:01 +01:00
Lynix 911e10fa84 Renamed Buffer::IsSupported to IsStorageSupported
Former-commit-id: 12309ca590820fd68ab2b15a4c41ffb554832603
2015-01-04 18:30:50 +01:00