Commit Graph

337 Commits

Author SHA1 Message Date
Lynix e18e490c59 Replaced (Uber)ShaderLibrary by template class ObjectLibrary
Former-commit-id: d488cfd4e5e3ff31112fffebce2b7cdb86cc2e55
2015-01-28 15:49:04 +01:00
Lynix cabc4e40bc Fixed mesh centering in a better way
Former-commit-id: 859dfdad322da045fecf32ea7c551f7fb436f135
2015-01-25 23:57:28 +01:00
Lynix 1219a8053c Revert "Fixed mesh centering"
This reverts commit 504042119962c2ab55fe8ef9bb16bcc878fa1b38 [formerly fae2cf41a63c7ce599c227344478567b1f12f130].

Conflicts:
	src/Nazara/Utility/Loaders/MD5Mesh/Loader.cpp

Former-commit-id: 6bd25fd7216121cce6879d74c6c98fbba545f2cf
2015-01-25 23:55:36 +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 9e96a2061f Fixed compile errors introducted in 228ecfe7e5f59d8c4091c3ebfee8190f66cf62ed [formerly 837c414856dbb7b5be20fd745359b3f1e7791c20]
Former-commit-id: efe88a0a209916b0aeea2813ec074182ab3a7adf
2015-01-25 17:19:35 +01:00
Lynix a185f03abc Merge remote-tracking branch 'origin/Scene-Update'
Former-commit-id: 4185e7a826476d3d5b4275b3900fe695bd791f3a
2015-01-25 16:35:18 +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 722622ded1 Fixed SkeletalModel registering itself for update multiple times
Former-commit-id: 9c7ff03a70b65c2ace3b7929b78f486621797dd4
2015-01-24 17:50:48 +01:00
Lynix 9ebd023848 (SkeletalModel) Added virtual constructor implementation
Former-commit-id: 4a7f356e14f629a728a77f94db7e26c6c4af3b72
2015-01-24 16:42:49 +01:00
Lynix 090263d847 Moved name attribute from Node to SceneNode
Former-commit-id: 6f920af67cd6c339d132a67b364742fdf172d5e9
2015-01-24 14:13:11 +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 01a1badac7 Removed useless std::function from rendering code
Former-commit-id: eaba729d5047d326fb2e746cec0621bfcf2eb1c5
2015-01-23 20:21:00 +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 ea8d683624 Updated copyright year
(532 files, wow)


Former-commit-id: cbb31f1124a86720bd3a54fe589a0f849a87b434
2015-01-21 20:53:01 +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 b7307c462a Removed old unused code
Former-commit-id: 40985382a9f79620c4459f6997f1ce12b000a74f
2015-01-20 01:20:48 +01:00
Lynix f714a58993 Added TODO
Former-commit-id: 7695c390112ebaa2340779e32f417ae302905b09
2015-01-20 01:20:33 +01:00
Lynix c9d636c929 Fixed particle generation terrible performances
Former-commit-id: 484ab2a95a2848aecef0089dea458791c2b86735
2015-01-20 00:12:50 +01:00
Lynix 47fa5dc731 Moved resources includes to the top of the implementations
Former-commit-id: 788a62f66aa47fe76e32ef0b76e9e962b1c5f2e6
2015-01-19 20:34:09 +01:00
Lynix e2d4ba030c Alphabetical commit
Former-commit-id: bacf8ab447d3022b48aac5f5ca2d337bc1283f8c
2015-01-19 11:57:19 +01:00
Lynix 5d16d7ab7e (Material) Fixed depth sorting not being copied
Former-commit-id: ecd4e3c8e44c6027c0e662f7d9d235a69ca9dc3d
2015-01-19 11:56:27 +01:00
Lynix 75ffa09792 Fixed errors from last merge
Former-commit-id: 850eadf5e233d0d6efad039b6bd943f05384df7d
2015-01-19 02:32:48 +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 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 c2ac3281bf Fixed text bounds
Former-commit-id: 9339ed907125ecf5186a86e8c943bf3197e11571
2015-01-18 12:12:32 +01:00
Lynix e30c447bd5 Added default font
Former-commit-id: 84fc15f2c6d46bcfb55236863611f2fb96961a6d
2015-01-18 10:38:50 +01:00
Lynix f9345dc5fe (TextSprite) Added atlas storage check
Former-commit-id: f9d222e196a0ef1aebcfd2baf8b425f55f852a9a
2015-01-17 23:00:56 +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 722fba5d0c Fixed compilation error
Former-commit-id: a88d418a78a1fed1606064898f4f191a3ac9ca53
2015-01-17 22:47:03 +01:00
Lynix c688b3f363 Fixed missing include
Former-commit-id: 9bc1621e951ff5d9cb4bd15bffff3fd477104fd4
2015-01-17 22:45:36 +01:00
Lynix 7fee649b49 (Font) Added default atlas
Former-commit-id: 876f42110d4053b09abf86c6158b3ba79fdea201
2015-01-17 22:42:33 +01:00
Lynix 829e82fdd9 Removed outdated comment
Former-commit-id: b2667fe3877022b61b5fbd6ae1ececc403fe5c1f
2015-01-17 21:42:35 +01:00
Lynix 2fed71cc3a Fixed mesh centering
Former-commit-id: d27dc7f0734d6a5bf0ecd6d36ede2f11cbff7c9c
2015-01-17 00:37:47 +01:00
Lynix 22791ecaf4 Fixed some comments
Former-commit-id: cbf931edb8cd9d8ba41b4d1f082d0bff7a3b02ba
2015-01-17 00:37:05 +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 71c1d5f527 Fixed reordered warning
Former-commit-id: e825c3f282e1b1c3f65d32be8512210c92a3a1d9
2015-01-17 00:29:26 +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 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 3139e80902 Fixed do-while
Former-commit-id: 08f2520ddee6e6f006f04d60df4a3da52b2ec356
2015-01-16 12:46:42 +01:00
Lynix fbcdd6bb2b Fixed potential crash
Former-commit-id: df8cde180c157f08031cd04d37bb735aa266ee53
2015-01-16 12:46:27 +01:00
Lynix 703ea6e9c8 Removed useless call
Former-commit-id: 1c3d84596b5c6b61c6bb64e9067653b8d2279955
2015-01-08 14:20:00 +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 9293022e71 Added sprite overlay rendering
Former-commit-id: 1e25a7d85f06f4a4bc3ed0ead76df01db440671d
2015-01-07 19:27:15 +01:00
Lynix fc1e75d379 Fixed compilation error (from 683866baee26a12cf63b20914fff338cc872a4c8 [formerly a885b69881c30dcad29f87c3ffee41808761b6c9])
Former-commit-id: 8d96d5dee5666bbce41f406bcbabe269e101fafb
2015-01-05 15:12:59 +01:00
Lynix b3d72ec094 Renamed BufferStorage enum to DataStorage
Former-commit-id: 97eede03eb6bb85e506c640d40c9d6e7acb2e099
2015-01-04 18:16:31 +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 e55c521e96 Added support for skeletal models (WIP)
Former-commit-id: 6a6c2d9f2c68267df79dc48fa56450d2a563e323
2014-12-17 13:56:33 +01:00
Lynix a51cbc1e49 Added Sprite::SetSize(float, float) overload
Former-commit-id: 672a2e4f5c2a2d40b4af42c7ee4b7b37d3774117
2014-12-07 03:05:27 +01:00
Lynix aa37c632cb Fixed possible warning
Former-commit-id: 4d14bf2cee4756db0720fda0d904d5bc7b2bafd9
2014-12-07 03:00:35 +01:00
Lynix 605bcc7038 Fixed possible warning
Former-commit-id: fac12a042d206976109ffde42865c561b021ed93
2014-12-07 03:00:19 +01:00
Lynix 27e9996e7b Improved error message
Former-commit-id: 0315fe27119a0da88334ee67575e144c488d655c
2014-12-07 03:00:10 +01:00
Lynix bb95e6862a Fixed sprites being rendered upside-down in 2D
This is still waiting for a fix because it will be upside-down in 3D


Former-commit-id: ca4bef616f3496db22349eb907ec32a0b6c3deb8
2014-12-07 02:59:56 +01:00
Lynix df6fdf6784 Added a Size parameter to View class
Allowing independent from rendertarget size


Former-commit-id: c131b6dd95692c72a969bf0cc6edd997911bbe58
2014-12-07 02:57:30 +01:00
Lynix b79a4c503c Fixed VBO being freed after OpenGL exit
Former-commit-id: ddd5fb16baa4371ceb917415bc138590cdc16e26
2014-09-14 19:35:12 +02:00
Lynix a008439cde Added depth sorting attribute to Material class
Only works for billboards for now


Former-commit-id: 50a46d3266a2e7fc6d75629103ad8b7193b13bf3
2014-09-11 00:10:24 +02:00
Lynix 04be41082c Added A LOT of oveloads to AbstractRenderQueue::AddBillboards
Former-commit-id: 51b73a110e61cee7ad8fca42b10afd59363de809
2014-09-06 11:59:57 +02:00
Lynix c86de3ed7e Merge pull request #31 from Gawaboumga/master
Some changes

Former-commit-id: f4ef15537da8edef3881def68dce39f6455f9b94
2014-09-03 13:47:39 +02:00
Lynix 023e41512f Merge remote-tracking branch 'origin/master' into Particle-Update
Former-commit-id: 8b2a22ff4546805cdbae394df3cdcdf4228198e5
2014-09-03 13:37:39 +02:00
Lynix bf2d39541c Fixed cubemaps rendering (Skyboxes)
Former-commit-id: a8d065cbdf8bdbde55547739e53b4daa6ce2969d
2014-09-03 13:29:40 +02:00
Lynix 659eb31757 Added support for billboads
Improved ForwardRenderTechnique code


Former-commit-id: 2386de85c26839565f087885ffcb098ef263bdfa
2014-09-03 13:16:56 +02:00
Lynix aeec8ee0f4 Enabled new shader flags
Former-commit-id: df06f4faf4c7275c702338eee1ed14a2445662a1
2014-09-01 16:00:54 +02:00
Lynix 67ecefd380 Added sprite color attribute
Former-commit-id: 1db061b862315495cb40ff308348a0ac8d41e304
2014-09-01 15:42:51 +02:00
Lynix 2753e3c4f1 Updated shaders
Added support for billboards (rendertechniques support is coming) -
Doesn't support lighting well for now
Added support for vertex coloring
Added AUTO_TEXCOORDS parameter support to PhongLighting UberShader
Removed unused flag FLAG_FLIP_UVS

More to come ...


Former-commit-id: b408c80e8805a8bfebe9fcdf3a3f954116fbfe96
2014-09-01 14:10:48 +02:00
Lynix ea43edbaf3 Separated ParticleEmitter
Renamed ParticleEmitter to ParticleSystem
Added class ParticleEmitter

(First implementation, this will probably change)


Former-commit-id: a1f80db340983da5e85cedc974dd6b24a98e25b0
2014-08-31 14:09:43 +02:00
Gawaboumga fc4d84f206 Littles fixes
-Light Manager: I prefer iterators
-OpenGL: The UV problem is solved, but you forget to change the cubemaps
-Texture: GetSize() could return a int instead a NzVector2ui
-Algorithm: Simplification
-Utility: Couldn't compile

Former-commit-id: db890711b451d03427871fb997549a1b13c7d80a
2014-08-27 14:34:35 +02:00
Lynix 54382afc37 Merge remote-tracking branch 'origin/master' into Particle-Update
Former-commit-id: 7ec9fba80c2b47a1fb811c7912df67262986c9f0
2014-08-25 23:09:36 +02: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 f3baf9f9df Merge branch 'master' into Particle-Update
Former-commit-id: a015cefb77bfb41617e94368ac58f5cfe12266fe
2014-08-18 19:11:43 +02:00
Lynix b3351037c7 Changed some error messages
Former-commit-id: e578d813dd7a8691506af080b79bc1ec99b65e3c
2014-08-18 18:15:19 +02:00
Lynix f395cb7579 Added ParticleEmitter::GetFixedStepSize()
Fixed missing implementation of ParticleEmitter::SetFixedStepSize


Former-commit-id: 255fcca4afe40cccf38a561f09f29a0a4ceccd71
2014-08-09 00:30:24 +02:00
Lynix 0976607eb9 Added fixed step update
Switched back to defaulted operator=(ParticleEmitter&&) since it can't
throw exception anyway


Former-commit-id: 178b040a735ef01dcda21b45a317b6c534b5782e
2014-08-08 21:21:04 +02:00
Lynix 202f675301 Changed particle callbacks arguments (offset, count) => (startId, endId)
Former-commit-id: 24550dad44e55aa9dfabaf916cbfb8e25df0451a
2014-08-08 20:59:49 +02:00
Lynix e9267d7f43 Added particles first implementation
Former-commit-id: 2b98ce2f007927690bdecd4092e211013bf568cb
2014-08-08 17:17:58 +02:00
Lynix 4d06ca3906 Fixed OBJ Loader sometimes creating empty mesh
Former-commit-id: 6b5624db279f3818edb6b4544ad0114b7c5e1e27
2014-08-02 21:30:19 +02:00
Lynix 60d5c09c18 Renamed Basic.hpp to Algorithm.hpp
Former-commit-id: ba2858d26fb55069313fafc3e4464dc2e9224b7d
2014-07-28 15:18:39 +02:00
Lynix bd0f38092e Updated PhongLighting shader
I can't remember why I commented these lines.


Former-commit-id: 3da37915073f94c9c44adfd84c968cb2d70982cf
2014-07-24 09:45:42 +02:00
Lynix fba2e5ae01 Moved MD5[Anim|Mesh]Parser loading code to Loader
Similary to OBJParser


Former-commit-id: 243b05f2fbc3899089ef05a29672979d3bbca695
2014-07-17 20:15:29 +02:00
Lynix 9e04e8a0e4 Separated reference counting from Resources
Former-commit-id: 7380818cfee9e249c11fd15da9ff7883a6e76565
2014-07-15 00:59:02 +02:00
Lynix 8ecae371ee Improved error messages and moved safety check
Former-commit-id: 010051ae56a1d2c1ebfe8dca3ceae3488a4cef18
2014-07-13 17:08:13 +02:00
Lynix 73ba06ac1c Merge pull request #28 from Gawaboumga/master
Consistency update

Former-commit-id: 1c31be9c967cf2e7d9d5d89d46444bfaed11a142
2014-07-13 16:53:59 +02:00
Gawaboumga 4c63c53c44 Indentation
Former-commit-id: 17c357f50ffec9787e6c50dd638c85388fb344ca
2014-07-13 16:09:21 +02:00
Gawaboumga e9554ad498 Coherence update
Audio: GetListenerDirection was using ALfloat and GetListenerRotation
not.
ByteArray: Two return *this, hazh is perturbing, is it intended ?
String: Same ?
Camera: Adds of security (don't think it's usefull)
Parser: size() = 0 -> empty()
Utility: update 13 to 14 was forgotten
VertexDeclaration: same

Former-commit-id: f6db5cd15e5a4dc5ac2af12366b18d1f6922b0e0
2014-07-13 16:03:15 +02:00
Lynix 3714371403 Fixed error messages
Fixed Quaternion type not handled by VertexDeclaration::IsTypeSupported


Former-commit-id: 4668810c2acbee3127ba52aed9782255ef92013e
2014-07-13 09:42:21 +02:00
Lynix a0c2d81114 Replaced struct by lambda
Former-commit-id: 4bb344e15c5f83480c30cb89fc3c213b33c2bbd4
2014-07-08 11:55:40 +02:00
Lynix f19b89f947 Updated Skinning code
Former-commit-id: ae608042061847b2f710abce8101eb008ef2a661
2014-07-08 11:31:14 +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 b70f693b8c Merge remote-tracking branch 'origin/RenderTechnique-Update'
Former-commit-id: 85e5af81ed3381af19e87c6ca0ee14e79955e563
2014-06-24 12:56:10 +02:00
Lynix 6c1852299d Added SkinningManager
Former-commit-id: ca3648dc16f5b1654cb8e3f5480d04f7fd22a3bc
2014-06-21 16:23:38 +02:00
Lynix f5833aa2d4 Improved rendertechnique fallback (will no longer loop)
Former-commit-id: 1aeb737432de1d2a8f205e547404b3f140967a16
2014-06-21 15:38:24 +02:00
Lynix a31ced1d76 Modified SceneNode::FrustumCull
Now provides an implementation which will test the bounding volume
against the frustum (Basic frustum culling)
Is now const
Disabled face culling on sprites


Former-commit-id: 5cb7a94b38ef8b0ffa5a78f16f5ef65a59ab375d
2014-06-05 21:28:17 +02:00
Lynix bc9c8c6bdb Merge remote-tracking branch 'origin/RenderTechnique-Update'
Former-commit-id: db5a6503e43615a47e3be4aaaa033899639392b7
2014-05-29 19:59:09 +02:00
Lynix df803fd5f7 Fixed Graphics module build
Former-commit-id: 1dc70a30cd4ca68d2d7869d51eb01f81770b0e3b
2014-05-28 01:15:12 +02:00
Lynix c8ae34f20b Updated mesh loader
Former-commit-id: 04c174544912a8c3c48e3fde7934cdc4edc19e07
2014-05-28 01:08:08 +02:00
Lynix fa5b1ab000 Model can no longer be animated (SkeletalModel will)
Former-commit-id: e203a3dddf74bb171d8abe961e8a2f28df13bcad
2014-05-28 01:03:59 +02:00
Lynix c901b5808e Added new abstract renderqueue rendering
Former-commit-id: 35e66174ccc3de3b43571f12a149e6d3c59cc2c9
2014-05-28 01:00:18 +02:00
Lynix 012c120bf1 Added Scene::EnableBackground
Former-commit-id: 57a3c3e41799703bb72b4980433d7faadc3b1b86
2014-05-28 00:35:28 +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 7d99550925 Made Initialize/Uninitialize static methods from non-submodules private
Former-commit-id: 78dac32c8650dc9eb4fd2c7f0bece030012497cf
2014-04-21 00:08:34 +02:00
Lynix 9b74459ea8 Updated comments
Former-commit-id: 77b83bdf6f52325efdc3e3b9a1d2743124426531
2014-04-20 22:34:10 +02:00
Lynix c7156494f3 Improved DeferredRenderTechnique initialization error messages
Former-commit-id: 99b1174257ae4e99600ad763ba2444d553957d18
2014-04-12 14:28:02 +02:00
Lynix f88c6cf0d7 Fixed debug shader not compiling on some configurations
Former-commit-id: 7e31eec475dc5e40491f480e9f45476acab5fdb6
2014-04-04 14:56:45 +02:00
Lynix 044a00669d Improved Scene implementation
Will provide a default background/technique when necessary


Former-commit-id: 547cca512aed4f90c53fff33e8c69245913d3a09
2014-03-18 19:54:35 +01:00
Lynix 90ebf4940c Fixed potential overflow in OBJ Loader
Former-commit-id: 8356daec0fc094c8316d9f0cfabfb6f4ccb8a1e7
2014-03-18 19:53:24 +01:00
Lynix 37197a3840 Fixed sprite rendering in Deferred Shading
Temporary fix: In the future Deferred Shading shall work with some
sprites


Former-commit-id: 4c39ddf1b09511ee411713943d97cf807ee8f52d
2014-03-18 19:53:00 +01:00
Lynix 268d3ae86d RenderQueues now use std::map::insert only if necessary
It looks like my std::map::insert implementation allocates something,
even if the element is present (It's not a leak, just some useless
allocation)


Former-commit-id: 9490bfb7994c23f893a74d5710381ba5919bb38c
2014-03-14 23:55:14 +01:00
Lynix 0ca2c9ccb2 Removed [*]RenderQueue::AddModel
Former-commit-id: 74b3e2b59b7a2ced16edca8dd7027dd8ae1db861
2014-03-14 23:48:10 +01:00
Lynix 9a129ec733 Disabled face culling on default material
Former-commit-id: 112868ff6fe6b4fdd820bbe0839127c5c6b27824
2014-03-06 09:59:27 +01:00
Lynix cec6f29e1e Fixed UberShader leak
Former-commit-id: 2d84fadee8ed55f068d30a28510500fe64df6365
2014-03-06 09:58:26 +01:00
Lynix 24be314b86 Fixed spaces
Former-commit-id: 570c1fb8c0ffa6d140112a9cdaa14c05c752d916
2014-03-05 00:47:26 +01:00
Lynix 5e9201cb22 Optimized Scenes configuration
The scene class no longer create a default background/default
rendertechnique at construction, instead it waits for Scene::Cull method
and create them if they are invalid


Former-commit-id: b5d031abc5d7df4be5ad4edd6036ad7d60cacbb4
2014-03-04 20:21:33 +01:00
Lynix 2990843f31 Added warning
Former-commit-id: b6956df1ded62a23140f4c44f0fd8b677c63c981
2014-03-04 19:35:51 +01:00
Lynix 0f2cab56ff Forward RenderTechnique now handles non-lighting shaders
Former-commit-id: f243ba8aea76ada91510f6b36c292ae0e18e2add
2014-03-04 19:35:40 +01:00
Lynix 05e7e11356 Made default material wireframe
Former-commit-id: c65d5b74dd430ecd5dd71a1b3167dc4afdf6dbf9
2014-03-04 19:34:07 +01:00
Lynix edaac1ded4 Fixed last commit
Thanks to Raakz for his patience


Former-commit-id: 4b423f3d271fcbdc3e33937e8170843681a3b096
2014-03-01 12:55:43 +01:00
Lynix 4cd0ece11e ModelParameters no longer contains shaderName field
Instead it will now set the shaderName field of the material field to
PhongLighting


Former-commit-id: 55b7f5500c7dc2c147f32a7c214a8e75ea434ff1
2014-03-01 12:25:11 +01:00
Lynix 02275293ee Fixed Texture loader not setting shader
Former-commit-id: 9a2e54c28f42a9390ab51d0909c92b7454aba476
2014-03-01 12:20:52 +01:00
Lynix 0e4b1a8ffa Fixed unused variable warning
Former-commit-id: 7a3752dfc8b68620162ef13fe40ac60c97611af9
2014-02-28 13:40:41 +01:00
Lynix 4fb70f8b9f Removed useless include and added TODO comment
Former-commit-id: 99c33e1725fac1a5e08038b7bb013a7d72bc61c2
2014-02-21 19:45:21 +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 fd958fd9ac Updated the way module are initialized
It's safer and prevent a bug when initialisation fails


Former-commit-id: a04f18e18f2d9db11ec595a9b8096c2792b39641
2014-02-21 11:13:14 +01:00
Lynix 4df6c30a26 Fixed ParameterList placement new conflicting with MLT
Former-commit-id: 97ca15d16e20e42427fceeea4f96a2e6b857dc83
2014-02-18 00:52:23 +01:00
Lynix 9533f16e46 Fixed forward shading point lights for real
Thanks to Raakz


Former-commit-id: a6c2b282a18d2dfa94732afb401811c8dd5d4b93
2014-01-18 09:08:42 +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 b9dca8966d Improved Deferred Shading performances
Former-commit-id: 7251e9f552230c31409f7780929fcc30f2b85bed
2014-01-11 19:16:36 +01:00
Lynix cbce6e6e64 Reunited Deferred Point Shader and Spot Shader
Former-commit-id: 0a77f57d8af98387690748102f6cdcea5d5514ed
2014-01-11 10:21:33 +01:00
Lynix 16578e728f Renamed RenderClearFlags to RendererBufferFlags
Former-commit-id: 7821709bc7310820e877db9bb26d1fb50d7ba217
2014-01-11 10:12:06 +01:00
Lynix 351618f93b Fixed instancing not enabling in some conditions
Former-commit-id: a6a29acd1896f44a7f82dd64fd53740b9021b422
2014-01-08 11:27:29 +01:00
Lynix 3625713914 Fixed bloom pass
Former-commit-id: 114db3f6b8857f2ef95da88a118d90eb203806c3
2014-01-05 15:29:34 +01:00
Lynix a332579c80 Deferred Shading update
-Deferred Shading now use a dynamics pass system
-Forward Shading is now capable of rendering more than three lights
(Multipass)


Former-commit-id: 74ed0b998d72aa9eb3bd2aab938a75985ebb2bf6
2013-12-28 10:22:03 +01:00
Lynix efd3491b43 Fixed Bloom shader not compiling everywhere
Former-commit-id: ff47c90aefa7c54349dfe162c6d5b3e34957460a
2013-12-20 20:08:05 +01:00
Lynix ac7f5008ca Improved FXAA
Former-commit-id: aa3b64de5be93b05fab0ad45039e5aac74c4d197
2013-12-20 20:06:00 +01:00
Lynix f2bb457850 Updated Shaders for Deferred Shading
Former-commit-id: ab97c6e7b74bffad32d334a2d0e5bd4607047c03
2013-12-20 20:05:51 +01:00
Lynix 69479de643 Added center mesh parameter
Former-commit-id: e010a81e3f00ca6091e438d405e3e6ca14938b8f
2013-12-20 20:03:18 +01:00
Lynix d87dc7bf50 Added Model::InvalidateBoundingVolume
Former-commit-id: 8298726f5170f1d0318e86173e7feba6d4e60e6c
2013-12-20 19:41:13 +01:00